diff --git a/plinth/locale/ar/LC_MESSAGES/django.po b/plinth/locale/ar/LC_MESSAGES/django.po
index b3ced344a..eacc11875 100644
--- a/plinth/locale/ar/LC_MESSAGES/django.po
+++ b/plinth/locale/ar/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2022-03-31 09:12+0000\n"
"Last-Translator: abidin toumi \n"
"Language-Team: Arabic freedns.afraid.org."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr ""
@@ -1594,9 +1580,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1672,12 +1660,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr ""
@@ -1770,7 +1758,7 @@ msgstr ""
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1815,19 +1803,19 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr ""
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr ""
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr ""
@@ -1861,7 +1849,7 @@ msgstr ""
msgid "Aliases"
msgstr ""
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr ""
@@ -1942,7 +1930,7 @@ msgid ""
"configured reduces risk of security threat from the Internet."
msgstr ""
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr ""
@@ -2079,15 +2067,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2183,54 +2171,54 @@ msgstr ""
msgid "Delete this repository permanently?"
msgstr ""
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr ""
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr ""
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr ""
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr ""
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
@@ -2508,19 +2496,19 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr ""
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr ""
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr ""
@@ -2573,15 +2561,15 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr ""
@@ -2635,32 +2623,32 @@ msgid ""
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
@@ -2677,11 +2665,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr ""
@@ -2713,11 +2701,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -2737,11 +2725,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr ""
@@ -2763,15 +2751,15 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -2834,36 +2822,36 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, 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:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
@@ -2885,7 +2873,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr ""
@@ -2989,12 +2977,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3055,39 +3043,39 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
msgid "Site name updated"
msgstr ""
@@ -3100,11 +3088,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr ""
@@ -3149,7 +3137,7 @@ msgstr ""
msgid "Address"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3160,15 +3148,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3221,11 +3209,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr ""
@@ -3267,15 +3255,15 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr ""
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3288,7 +3276,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr ""
@@ -3308,27 +3296,22 @@ msgstr ""
msgid "Services"
msgstr ""
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr ""
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr ""
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
@@ -3805,7 +3788,7 @@ msgid "This connection is not active."
msgstr ""
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr ""
@@ -3848,7 +3831,7 @@ msgid "Create Connection"
msgstr ""
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr ""
@@ -3868,13 +3851,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr ""
@@ -3895,7 +3878,7 @@ msgid "Computer"
msgstr ""
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr ""
@@ -3905,13 +3888,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr ""
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
@@ -4094,245 +4077,245 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr ""
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr ""
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr ""
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr ""
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr ""
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr ""
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr ""
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr ""
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr ""
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr ""
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr ""
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr ""
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr ""
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr ""
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr ""
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr ""
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr ""
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr ""
@@ -4347,20 +4330,20 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4468,15 +4451,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr ""
@@ -4582,36 +4565,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -4628,7 +4611,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr ""
@@ -4636,7 +4619,7 @@ msgstr ""
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr ""
@@ -4707,15 +4690,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -4739,11 +4722,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr ""
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr ""
@@ -4768,12 +4751,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -4863,7 +4846,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr ""
@@ -4899,16 +4882,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -4943,15 +4926,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr ""
@@ -5071,15 +5054,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr ""
@@ -5160,7 +5143,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr ""
@@ -5225,12 +5208,12 @@ msgstr ""
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr ""
@@ -5244,11 +5227,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5278,11 +5261,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5311,14 +5294,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr ""
@@ -5366,28 +5349,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -5433,7 +5416,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr ""
@@ -5527,7 +5510,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr ""
@@ -5575,53 +5558,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr ""
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -5633,7 +5616,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -5674,7 +5657,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -5694,104 +5677,104 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -5925,16 +5908,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -5954,40 +5937,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6093,7 +6076,7 @@ msgstr ""
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr ""
@@ -6139,7 +6122,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr ""
@@ -6164,11 +6147,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6189,33 +6172,33 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6293,6 +6276,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6396,15 +6380,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -6969,12 +6953,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr ""
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr ""
@@ -7009,11 +6993,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7047,37 +7031,102 @@ msgstr ""
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, python-brace-format
+msgid "Error: {name}: {exception_message}"
+msgstr ""
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+msgid "Installing app"
+msgstr ""
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "حدث خطأ أثناء تثبيت التطبيق: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "حدث خطأ أثناء تثبيت التطبيق: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "خطأ أثناء تثبيت التطبيق: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "خطأ أثناء تثبيت التطبيق: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "ثُبت التطبيق."
+
+#: plinth/setup.py:91
+msgid "App updated"
+msgstr ""
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -7363,6 +7412,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr ""
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "ثُبت التطبيق."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr ""
@@ -7372,52 +7425,28 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr ""
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr ""
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr ""
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/ar_SA/LC_MESSAGES/django.po b/plinth/locale/ar_SA/LC_MESSAGES/django.po
index 9c114e8b0..2f391773f 100644
--- a/plinth/locale/ar_SA/LC_MESSAGES/django.po
+++ b/plinth/locale/ar_SA/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2020-06-10 15:41+0000\n"
"Last-Translator: aiman an \n"
"Language-Team: Arabic (Saudi Arabia) freedns.afraid.org."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr ""
@@ -1594,9 +1580,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1672,12 +1660,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr ""
@@ -1770,7 +1758,7 @@ msgstr ""
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1815,21 +1803,21 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
#, fuzzy
#| msgid "Web Server"
msgid "Email Server"
msgstr "خادم ويب"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr ""
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr ""
@@ -1863,7 +1851,7 @@ msgstr ""
msgid "Aliases"
msgstr ""
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr ""
@@ -1944,7 +1932,7 @@ msgid ""
"configured reduces risk of security threat from the Internet."
msgstr ""
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr ""
@@ -2081,15 +2069,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2185,54 +2173,54 @@ msgstr ""
msgid "Delete this repository permanently?"
msgstr ""
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr ""
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr ""
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr ""
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr ""
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
@@ -2510,19 +2498,19 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr ""
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr ""
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr ""
@@ -2575,15 +2563,15 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr ""
@@ -2637,32 +2625,32 @@ msgid ""
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
@@ -2679,11 +2667,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr ""
@@ -2715,11 +2703,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -2739,11 +2727,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr ""
@@ -2765,15 +2753,15 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -2836,36 +2824,36 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, 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:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
@@ -2887,7 +2875,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr ""
@@ -2991,12 +2979,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3059,39 +3047,39 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
msgid "Site name updated"
msgstr ""
@@ -3104,11 +3092,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr ""
@@ -3153,7 +3141,7 @@ msgstr ""
msgid "Address"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3164,15 +3152,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3225,11 +3213,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr ""
@@ -3271,15 +3259,15 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr ""
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3292,7 +3280,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr ""
@@ -3312,27 +3300,22 @@ msgstr ""
msgid "Services"
msgstr ""
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr ""
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr ""
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
@@ -3809,7 +3792,7 @@ msgid "This connection is not active."
msgstr ""
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr ""
@@ -3852,7 +3835,7 @@ msgid "Create Connection"
msgstr ""
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr ""
@@ -3872,13 +3855,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr ""
@@ -3899,7 +3882,7 @@ msgid "Computer"
msgstr ""
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr ""
@@ -3909,13 +3892,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr ""
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
@@ -4098,245 +4081,245 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr ""
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr ""
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr ""
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr ""
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr ""
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr ""
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr ""
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr ""
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr ""
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr ""
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr ""
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr ""
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr ""
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr ""
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr ""
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr ""
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr ""
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr ""
@@ -4351,20 +4334,20 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4472,15 +4455,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr ""
@@ -4586,36 +4569,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -4632,7 +4615,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr ""
@@ -4640,7 +4623,7 @@ msgstr ""
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr ""
@@ -4711,15 +4694,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -4743,11 +4726,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr ""
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr ""
@@ -4772,12 +4755,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -4867,7 +4850,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr ""
@@ -4903,16 +4886,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -4947,15 +4930,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr ""
@@ -5075,15 +5058,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr ""
@@ -5164,7 +5147,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr ""
@@ -5229,12 +5212,12 @@ msgstr ""
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr ""
@@ -5248,11 +5231,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5282,11 +5265,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5315,14 +5298,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr ""
@@ -5370,28 +5353,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -5437,7 +5420,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr ""
@@ -5531,7 +5514,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr ""
@@ -5579,53 +5562,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr ""
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -5637,7 +5620,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -5678,7 +5661,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -5698,104 +5681,104 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -5929,16 +5912,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -5958,40 +5941,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6097,7 +6080,7 @@ msgstr ""
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr ""
@@ -6143,7 +6126,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr ""
@@ -6168,11 +6151,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6193,33 +6176,33 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6297,6 +6280,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6400,15 +6384,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -6973,12 +6957,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr ""
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr ""
@@ -7013,11 +6997,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7051,37 +7035,102 @@ msgstr ""
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, python-brace-format
+msgid "Error: {name}: {exception_message}"
+msgstr ""
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+msgid "Installing app"
+msgstr ""
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "خطأ في تثبيت التطبيق :{string}{details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "خطأ في تثبيت التطبيق :{string}{details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "خطأ في تثبيت التطبيق:{error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "خطأ في تثبيت التطبيق:{error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "تم تثبيت التطبيق."
+
+#: plinth/setup.py:91
+msgid "App updated"
+msgstr ""
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -7367,6 +7416,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr ""
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "تم تثبيت التطبيق."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr ""
@@ -7376,52 +7429,28 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr ""
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr ""
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr ""
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/bg/LC_MESSAGES/django.po b/plinth/locale/bg/LC_MESSAGES/django.po
index d74d3e8c1..c8cf58c6a 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2022-08-03 22:17+0000\n"
"Last-Translator: 109247019824 \n"
"Language-Team: Bulgarian всеки потребител "
"на {box_name}, принадлежащ към групата admin."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr ""
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr ""
@@ -1160,18 +1146,18 @@ msgstr ""
"Тук можете да направите някои общи настройки, като име на хост, име на "
"домейн, начална страница на сървъра и др."
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "Общи настройки"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "Настройки"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1325,11 +1311,11 @@ msgid ""
"be configured with the details provided here."
msgstr ""
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr ""
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr "Помощник за VoIP"
@@ -1353,11 +1339,11 @@ msgstr ""
"Сървърът за време по мрежата е приложение, която поддържа системния часовник "
"синхронизиран със сървъри в интернет."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "Дата и час"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "Часовникът се сверява със сървър на NTP"
@@ -1396,17 +1382,17 @@ msgid ""
"immediately after enabling this service."
msgstr ""
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr ""
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr ""
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr ""
@@ -1426,50 +1412,50 @@ msgstr ""
"Диагностичната проверка на системата ще я подложи на редица изпитания, за да "
"потвърди, че приложенията и услугите работят според очакванията."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "Диагностика"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr "преминала"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr "неуспех"
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr "грешка"
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr "предупреждение"
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr "МБ"
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr "ГБ"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
"За да намалее използваната памет, трябва да изключите някои приложения."
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr "Не трябва да инсталирате нови приложения."
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
@@ -1478,7 +1464,7 @@ msgstr ""
"Системата разполага с малко памет: използвани {percent_used} %, "
"{memory_available} {memory_available_unit}. {advice_message}"
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr "Паметта е малко"
@@ -1559,11 +1545,11 @@ msgid ""
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr ""
@@ -1673,9 +1659,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1756,12 +1744,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "ejabberd"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr ""
@@ -1856,7 +1844,7 @@ msgstr "Dino"
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1901,19 +1889,19 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr "Postfix/Dovecot"
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr "Пощенски сървър"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr ""
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr ""
@@ -1947,7 +1935,7 @@ msgstr ""
msgid "Aliases"
msgstr ""
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr "Roundcube"
@@ -2033,7 +2021,7 @@ msgstr ""
"мрежов трафик в и от {box_name}. Поддържането на включена и правилно "
"настроена защитна стена намалява риска от заплахи за сигурността от интернет."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "Защитна стена"
@@ -2186,15 +2174,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr "Gitweb"
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr "Обикновен хостинг на Git"
@@ -2290,54 +2278,54 @@ msgstr ""
msgid "Delete this repository permanently?"
msgstr ""
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr "Хранилището е променено."
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr "Промяна на хранилище"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "Документация"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr "Ръководство"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr "Получаване на помощ"
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr "Обратна връзка"
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "Допринасяне"
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "За проекта"
@@ -2620,19 +2608,19 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr ""
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr ""
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr ""
@@ -2685,15 +2673,15 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr ""
@@ -2747,32 +2735,32 @@ msgid ""
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
@@ -2789,11 +2777,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr ""
@@ -2825,11 +2813,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -2849,11 +2837,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr ""
@@ -2875,15 +2863,15 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "Сертификати"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr "Не може да бъде извършена проба: Не са настроени домейни."
@@ -2946,36 +2934,36 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, 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:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
@@ -2997,7 +2985,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr ""
@@ -3101,12 +3089,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3172,39 +3160,39 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "Паролата е променена"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr "Паролата не е променена. Изберете по-сложна парола"
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr "Името на домейна е променено"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
msgid "Site name updated"
msgstr "Името на страницата е променено"
@@ -3217,11 +3205,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr ""
@@ -3266,7 +3254,7 @@ msgstr ""
msgid "Address"
msgstr "Адрес"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3277,15 +3265,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3338,11 +3326,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr ""
@@ -3384,15 +3372,15 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr "Паролата на суперпотребителя е променена."
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr "Паролата за присъединяване е променена"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3405,7 +3393,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr ""
@@ -3425,27 +3413,22 @@ msgstr ""
msgid "Services"
msgstr ""
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr ""
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr ""
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
@@ -3922,7 +3905,7 @@ msgid "This connection is not active."
msgstr ""
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "Сигурност"
@@ -3965,7 +3948,7 @@ msgid "Create Connection"
msgstr ""
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr ""
@@ -3985,13 +3968,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr ""
@@ -4012,7 +3995,7 @@ msgid "Computer"
msgstr ""
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "Редактиране на връзката"
@@ -4022,13 +4005,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr ""
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
@@ -4211,245 +4194,245 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr ""
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr ""
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr ""
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr ""
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr ""
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr ""
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr ""
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr ""
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr ""
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr ""
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr ""
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr ""
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr ""
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr ""
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr ""
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr ""
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr ""
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "Връзката не може да бъде променена: връзката не е намерена."
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr ""
@@ -4464,20 +4447,20 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4585,15 +4568,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr ""
@@ -4699,36 +4682,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -4745,7 +4728,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr "Наблюдение на системата"
@@ -4753,7 +4736,7 @@ msgstr "Наблюдение на системата"
msgid "Restart or shut down the system."
msgstr "Рестартирайте или изключете системата."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr ""
@@ -4830,15 +4813,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -4862,11 +4845,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr ""
@@ -4891,12 +4874,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr "Radicale"
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr "Календар и адресна книга"
@@ -4986,7 +4969,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr ""
@@ -5027,16 +5010,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5071,15 +5054,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr ""
@@ -5199,15 +5182,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr ""
@@ -5300,7 +5283,7 @@ msgstr ""
"сътрудници на Дебиан и общността на %(box_name)s."
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr "Доклад за сигурността"
@@ -5378,12 +5361,12 @@ msgstr "Не"
msgid "Not running"
msgstr "Изключено"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Грешка при настройка на ограничения достъп: {exception}"
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr "Настройките за сигурност са променени"
@@ -5397,11 +5380,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5431,11 +5414,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5464,14 +5447,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr ""
@@ -5519,28 +5502,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -5586,7 +5569,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr ""
@@ -5680,7 +5663,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr ""
@@ -5728,53 +5711,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr ""
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr "Настройките на моментните снимки на хранилището са променени"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -5786,7 +5769,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -5827,7 +5810,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -5847,104 +5830,104 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6078,16 +6061,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -6109,40 +6092,40 @@ msgstr ""
"На {box_name} е достъпен порт на Tor SOCKS за вътрешни мрежи на порт 9050 от "
"TCP."
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6256,7 +6239,7 @@ msgstr ""
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "Настройките не са променени"
@@ -6310,7 +6293,7 @@ msgstr ""
"След приключване на изтеглянето, имате достъп до файловете си и като "
"използвате приложението Споделяне."
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr ""
@@ -6337,11 +6320,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr "Tiny Tiny RSS"
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr "Четец на абонаменти за новини"
@@ -6364,33 +6347,33 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr "Обновяване на софтуера"
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr "FreedomBox е обновен"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr "Обновяването на дистрибуцията не може да бъде стартирано"
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6477,6 +6460,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6595,15 +6579,15 @@ msgstr ""
"администратори могат да променят приложенията и настройките на "
"системата."
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr "Потребители и групи"
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr "Достъп до всички услуги и системни настройки"
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Проверете записа на LDAP „{search_item}“"
@@ -7186,12 +7170,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr ""
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr ""
@@ -7226,11 +7210,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr "Zoph"
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7266,37 +7250,107 @@ msgstr "PPPoE"
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Грешка при задаване на името на хоста: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr "Пакетът „{expression}“ е недостъпен за инсталиране"
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "Инсталиране на приложения"
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Грешка при инсталиране на приложението: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Грешка при инсталиране на приложението: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Грешка при инсталиране на приложението: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Грешка при инсталиране на приложението: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Приложението е инсталирано."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "Последно обновяване"
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -7582,6 +7636,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr ""
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Приложението е инсталирано."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr ""
@@ -7591,52 +7649,28 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr "Повторна проверка"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr ""
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr ""
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr ""
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/bn/LC_MESSAGES/django.po b/plinth/locale/bn/LC_MESSAGES/django.po
index 54486ed42..cbe96db71 100644
--- a/plinth/locale/bn/LC_MESSAGES/django.po
+++ b/plinth/locale/bn/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2021-06-16 07:33+0000\n"
"Last-Translator: Oymate \n"
"Language-Team: Bengali freedns.afraid.org."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr ""
@@ -1594,9 +1580,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1672,12 +1660,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "ইজ্যাবার্ড"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr ""
@@ -1772,7 +1760,7 @@ msgstr ""
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1817,21 +1805,21 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr ""
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
#, fuzzy
#| msgid "Enabled"
msgid "My Email Aliases"
msgstr "সক্রিয়"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
#, fuzzy
#| msgid "Enabled"
msgid "Manage Aliases for Mailbox"
@@ -1871,7 +1859,7 @@ msgstr ""
msgid "Aliases"
msgstr "সক্রিয়"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr ""
@@ -1956,7 +1944,7 @@ msgid ""
"configured reduces risk of security threat from the Internet."
msgstr ""
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "ফায়ারওয়্যাল"
@@ -2093,15 +2081,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2197,54 +2185,54 @@ msgstr ""
msgid "Delete this repository permanently?"
msgstr ""
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr ""
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr ""
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "নির্দেশিকা"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr ""
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "সম্পর্কে"
@@ -2522,19 +2510,19 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr ""
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr ""
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr ""
@@ -2587,15 +2575,15 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr "ইকিউইকি"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr ""
@@ -2649,32 +2637,32 @@ msgid ""
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
@@ -2691,11 +2679,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr "ইফিনোটেড"
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr ""
@@ -2727,11 +2715,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -2751,11 +2739,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr ""
@@ -2777,15 +2765,15 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "অনুমতিপত্র"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -2848,36 +2836,36 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, 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:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
@@ -2899,7 +2887,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr ""
@@ -3003,12 +2991,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3071,39 +3059,39 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
msgid "Site name updated"
msgstr ""
@@ -3116,11 +3104,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr "মাইনটেস্ট"
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr ""
@@ -3165,7 +3153,7 @@ msgstr ""
msgid "Address"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3176,15 +3164,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3237,11 +3225,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr ""
@@ -3283,15 +3271,15 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr ""
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3304,7 +3292,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr ""
@@ -3324,27 +3312,22 @@ msgstr ""
msgid "Services"
msgstr ""
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr ""
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr ""
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
@@ -3821,7 +3804,7 @@ msgid "This connection is not active."
msgstr ""
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr ""
@@ -3864,7 +3847,7 @@ msgid "Create Connection"
msgstr ""
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr ""
@@ -3884,13 +3867,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr ""
@@ -3911,7 +3894,7 @@ msgid "Computer"
msgstr ""
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr ""
@@ -3921,13 +3904,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr ""
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
@@ -4110,245 +4093,245 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr ""
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr ""
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr ""
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr ""
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr ""
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr ""
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr ""
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr ""
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr ""
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr ""
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr ""
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr ""
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr ""
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr ""
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr ""
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr ""
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr ""
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr ""
@@ -4363,20 +4346,20 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4484,15 +4467,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr ""
@@ -4598,36 +4581,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -4644,7 +4627,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr ""
@@ -4652,7 +4635,7 @@ msgstr ""
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr ""
@@ -4723,15 +4706,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -4755,11 +4738,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr ""
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr ""
@@ -4784,12 +4767,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -4879,7 +4862,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr ""
@@ -4915,16 +4898,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -4959,15 +4942,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr ""
@@ -5089,15 +5072,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr ""
@@ -5178,7 +5161,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr ""
@@ -5243,12 +5226,12 @@ msgstr ""
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr ""
@@ -5262,11 +5245,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5296,11 +5279,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5329,14 +5312,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr ""
@@ -5384,28 +5367,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -5451,7 +5434,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr ""
@@ -5545,7 +5528,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr ""
@@ -5593,53 +5576,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr ""
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -5651,7 +5634,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -5692,7 +5675,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -5712,104 +5695,104 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -5943,16 +5926,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -5972,40 +5955,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6111,7 +6094,7 @@ msgstr ""
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr ""
@@ -6157,7 +6140,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr ""
@@ -6182,11 +6165,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6207,33 +6190,33 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6311,6 +6294,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6414,15 +6398,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -6987,12 +6971,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr ""
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr ""
@@ -7027,11 +7011,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7065,37 +7049,96 @@ msgstr ""
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, python-brace-format
+msgid "Error: {name}: {exception_message}"
+msgstr ""
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+msgid "Installing app"
+msgstr ""
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, python-brace-format
+msgid "Error installing app: {string} {details}"
+msgstr ""
+
+#: plinth/setup.py:76
+#, python-brace-format
+msgid "Error updating app: {string} {details}"
+msgstr ""
+
+#: plinth/setup.py:82
+#, python-brace-format
+msgid "Error installing app: {error}"
+msgstr ""
+
+#: plinth/setup.py:85
+#, python-brace-format
+msgid "Error updating app: {error}"
+msgstr ""
+
+#: plinth/setup.py:89
+msgid "App installed."
+msgstr ""
+
+#: plinth/setup.py:91
+msgid "App updated"
+msgstr ""
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -7383,6 +7426,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr ""
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr ""
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr ""
@@ -7392,52 +7439,28 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr ""
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr ""
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr ""
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/cs/LC_MESSAGES/django.po b/plinth/locale/cs/LC_MESSAGES/django.po
index 550744b21..4080a8b28 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2022-08-09 12:21+0000\n"
"Last-Translator: Jiří Podhorecký \n"
"Language-Team: Czech calibre"
"em>. Všichni uživatelé s přístupem mohou používat všechny knihovny."
-#: plinth/modules/calibre/__init__.py:57
+#: plinth/modules/calibre/__init__.py:55
msgid "Use calibre e-book libraries"
msgstr "Použití knihoven e-knih Calibre"
-#: plinth/modules/calibre/__init__.py:60 plinth/modules/calibre/manifest.py:6
+#: plinth/modules/calibre/__init__.py:58 plinth/modules/calibre/manifest.py:6
msgid "calibre"
msgstr "calibre"
-#: plinth/modules/calibre/__init__.py:61
+#: plinth/modules/calibre/__init__.py:59
msgid "E-book Library"
msgstr "Knihovna e-knih"
@@ -1122,20 +1108,20 @@ msgstr "Přejít do knihovny %(library)s"
msgid "Delete library %(library)s"
msgstr "Smazat knihovnu %(library)s"
-#: plinth/modules/calibre/views.py:39
+#: plinth/modules/calibre/views.py:41
msgid "Library created."
msgstr "Knihovna vytvořena."
-#: plinth/modules/calibre/views.py:50
+#: plinth/modules/calibre/views.py:52
msgid "An error occurred while creating the library."
msgstr "Při vytváření knihovny došlo k chybě."
-#: plinth/modules/calibre/views.py:64 plinth/modules/gitweb/views.py:138
+#: plinth/modules/calibre/views.py:66 plinth/modules/gitweb/views.py:141
#, python-brace-format
msgid "{name} deleted."
msgstr "{name} smazáno."
-#: plinth/modules/calibre/views.py:68 plinth/modules/gitweb/views.py:142
+#: plinth/modules/calibre/views.py:70 plinth/modules/gitweb/views.py:145
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr "{name} se nepodařilo smazat: {error}"
@@ -1174,12 +1160,12 @@ msgstr ""
"Přístup k němu má každý uživatel na {box_name} "
"patřící do skupiny admin."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Cockpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "Správa serveru"
@@ -1191,18 +1177,18 @@ msgstr ""
"Zde můžete nastavit některé obecné konfigurační možnosti, jako je název "
"hostitele, název domény, domovská stránka webového serveru atd."
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "Obecná nastavení"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "Nastavit"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1379,11 +1365,11 @@ msgstr ""
"\"{ms_url}\">Matrix Synapse nebo ejabberd je "
"třeba nakonfigurovat pomocí zde uvedených údajů."
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "Coturn"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr "Pomocník VoIP"
@@ -1407,11 +1393,11 @@ msgstr ""
"Server síťového času je program který udržuje systémový čas synchronní se "
"servery na Internetu."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "Datum a čas"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "Čas synchronizován s NTP serverem"
@@ -1453,17 +1439,17 @@ msgstr ""
"Výchozí heslo je \"deluge\", ale měli byste se přihlásit a změnit ho ihned "
"po povolení této služby."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "Stahovat soubory pomocí BitTorrent aplikací"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "Deluge"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "Webový klient sítě BitTorrent"
@@ -1483,49 +1469,49 @@ msgstr ""
"Diagnostický test systému spustí několik kontrol pro potvrzení, že aplikace "
"a služby fungují tak, jak mají."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "Diagnostika"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr "prošlo"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr "selhalo"
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr "chyba"
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr "varování"
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr "MiB"
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr "GiB"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr "Měli byste zakázat některé aplikace, abyste snížili využití paměti."
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr "Do tohoto systému byste neměli instalovat žádné nové aplikace."
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
@@ -1534,7 +1520,7 @@ msgstr ""
"Systém má málo paměti: {percent_used}% využité, {memory_available} "
"{memory_available_unit} volné. {advice_message}"
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr "Málo paměti"
@@ -1629,11 +1615,11 @@ msgstr ""
"aktualizaci URL na adrese freedns.afraid.org."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "Klient dynamické DNS"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr "Název dynamické domény"
@@ -1762,9 +1748,11 @@ msgid "This field is required."
msgstr "Toto pole je povinné."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1850,12 +1838,12 @@ msgstr ""
"aplikaci Coturn nebo nakonfigurujte externí "
"server."
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "ejabberd"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "Chat server"
@@ -1964,7 +1952,7 @@ msgstr "Dino"
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2030,19 +2018,19 @@ msgstr ""
"Během instalace budou odinstalovány všechny ostatní e-mailové servery v "
"systému."
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr "Postfix / Dovecot"
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr "E-mailový Server"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr "Moje e-mailové aliasy"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr "Správa aliasů pro poštovní schránku"
@@ -2078,7 +2066,7 @@ msgstr "Nemůže být číslo"
msgid "Aliases"
msgstr "Aliasy"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr "Roundcube"
@@ -2164,7 +2152,7 @@ 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/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "Brána firewall"
@@ -2325,15 +2313,15 @@ msgstr ""
"Více o Git se dozvíte navštívením výuky Gitu."
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr "Přístup do Git repozitářů pro čtení a zápis"
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr "Gitweb"
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr "Jednoduché hostování Git"
@@ -2429,54 +2417,54 @@ msgstr "Smazat Git repozitář %(name)s"
msgid "Delete this repository permanently?"
msgstr "Nevratně smazat tento repozitář?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr "Repozitář vytvořen."
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr "Při vytváření úložiště došlo k chybě."
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr "Repozitář upraven."
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr "Upravit repozitář"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "Dokumentace"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr "Příručka"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr "Získejte podporu"
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 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:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "Zapojit se"
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "O projektu"
@@ -2828,19 +2816,19 @@ msgid ""
msgstr ""
"První navštívení poskytovaného webového rozhraní spustí proces nastavení."
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr "Spravovat aplikaci I2P"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr "I2P"
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr "Anonymní síť"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr "I2P proxy"
@@ -2908,15 +2896,15 @@ 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:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr "ikiwiki"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr "wiki a blog"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr "Zobrazit a upravit wiki aplikace"
@@ -2972,32 +2960,32 @@ 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:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "Wiki {name} vytvořena."
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "Wiki se nepodařilo vytvořit: {error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "Blog {name} vytvořen."
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "Blog se nepodařilo vytvořit: {error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr "{title} dsmazáno."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr "{title} se nepodařilo smazat: {error}"
@@ -3018,11 +3006,11 @@ 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/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr "infinoted"
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr "Gobby server"
@@ -3057,11 +3045,11 @@ msgid "Coturn is required to use Janus."
msgstr ""
"Coturn je vyžadován pro použití systému Janus."
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr "Janus"
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr "Video Room"
@@ -3083,11 +3071,11 @@ msgstr ""
"JSXC je webový klient pro XMPP. Typicky je používaný s lokálně provozovaným "
"XMPP serverem."
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr "JSXC"
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr "Chatovací klient"
@@ -3118,15 +3106,15 @@ 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/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr "Let's Encrypt"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "Certifikáty"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr "Nelze testovat: Nejsou nakonfigurovány žádné domény."
@@ -3191,7 +3179,7 @@ msgstr ""
"Nejsou nastavené žádné domény. Nastavte je, "
"aby bylo možné pro ně získat certifikát."
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
@@ -3200,29 +3188,29 @@ 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:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, 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:94
+#: plinth/modules/letsencrypt/views.py:96
#, 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:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr "Nepodařilo se smazat certifikát pro doménu {domain}: {error}"
@@ -3254,7 +3242,7 @@ msgstr ""
"Nainstalujte aplikaci Coturn nebo "
"nakonfigurujte externí server."
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr "Matrix Synapse"
@@ -3396,12 +3384,12 @@ 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/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr "MediaWiki"
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr "Wiki"
@@ -3474,39 +3462,39 @@ msgstr ""
"Vyberte výchozí vzhled pro instalaci MediaWiki. Uživatelé mají možnost "
"vybrat si preferovaný vzhled."
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "Heslo aktualizováno"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr "Aktualizace hesla se nezdařila. Zvolte prosím silnější heslo"
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr "Registrace pro veřejnost otevřené"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr "Registrace pro veřejnost zavřené"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr "Soukromý režim zapnut"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr "Soukromý režim vypnut"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr "Změna výchozího vzhledu"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr "Nastavení doménového názvu aktualizováno"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
msgid "Site name updated"
msgstr "Název webu aktualizován"
@@ -3523,11 +3511,11 @@ msgstr ""
"serveru je třeba Minetest "
"klient."
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr "Minetest"
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr "Pískoviště s kostkami"
@@ -3576,7 +3564,7 @@ msgstr "Pokud je vypnuto, postavy hráčů nemohou zemřít nebo se zranit."
msgid "Address"
msgstr "Adresa"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3594,15 +3582,15 @@ msgstr ""
"televizory a herní systémy (například PS3 a Xbox 360) nebo aplikace, jako "
"jsou totem a Kodi."
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr "Server pro streamování médií"
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr "MiniDLNA"
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr "Simple Media Server"
@@ -3665,11 +3653,11 @@ msgstr ""
"dispozici jsou Klienti pro připojení k "
"Mumble z vašeho počítače a mobilních zařízení."
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr "Mumble"
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr "Hlasový chat"
@@ -3717,15 +3705,15 @@ msgstr "Mumblefly"
msgid "Mumla"
msgstr "Mumla"
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr "Heslo SuperUser bylo úspěšně aktualizováno."
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr "Heslo pro připojení změněno"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr "Změna názvu kořenového kanálu."
@@ -3742,7 +3730,7 @@ msgstr ""
"typu jména je uvedeno, zda jsou služby HTTP, HTTPS a SSH pro příchozí "
"spojení přes dané jméno povoleny nebo zakázány."
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "Jmenné služby"
@@ -3762,7 +3750,7 @@ msgstr "Zabezpečený shell"
msgid "Services"
msgstr "Služby"
-#: plinth/modules/networks/__init__.py:36
+#: 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."
@@ -3770,7 +3758,7 @@ 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:38
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
@@ -3778,15 +3766,10 @@ msgstr ""
"Zařízení spravovaná jinými metodami zde nemusí být k dispozici pro "
"konfiguraci."
-#: plinth/modules/networks/__init__.py:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "Sítě"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "S použitím DNSSEC na IPv{kind}"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "Typ připojení"
@@ -4347,7 +4330,7 @@ msgid "This connection is not active."
msgstr "Toto připojení není aktivní."
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "Zabezpečení"
@@ -4398,7 +4381,7 @@ msgid "Create Connection"
msgstr "Vytvořit připojení"
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "Smazat připojení"
@@ -4418,13 +4401,13 @@ msgstr "Mezery"
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "Ethernet"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "Wi-Fi"
@@ -4445,7 +4428,7 @@ msgid "Computer"
msgstr "Počítač"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "Upravit připojení"
@@ -4455,13 +4438,13 @@ msgstr "Připojení"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "Wi-Fi sítě poblíž"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "Přidat připojení"
@@ -4686,247 +4669,247 @@ msgstr ""
"směrovače a vyhledejte na internetu jeho příručku. Ten vám poskytne úplné "
"pokyny k provedení tohoto úkolu."
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr "vypnuto"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr "automaticky"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr "příručka"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr "sdílené"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr "link-local"
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr "neznámý"
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr "nespravované"
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr "nedostupné"
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr "odpojeno"
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr "příprava"
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr "připojení"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr "potřebuje ověření"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr "vyžadující adresu"
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr "kontrola"
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr "čekání na sekundární"
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr "aktivováno"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr "deaktivace"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr "bez důvodu"
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr "neznámá chyba"
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr "zařízení je nyní spravováno"
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr "zařízení je nyní bez správy"
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr "konfigurace selhala"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr "požadovaná tajemství"
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr "Klienta DHCP se nepodařilo spustit"
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr "Chyba klienta DHCP"
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr "Klient DHCP selhal"
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr "nepodařilo se spustit službu sdíleného připojení"
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr "služba sdíleného připojení selhala"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr "zařízení bylo odstraněno"
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr "zařízení odpojené uživatelem"
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr "selhala závislost připojení"
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr "Síť Wi-Fi nebyla nalezena"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr "selhalo sekundární připojení"
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr "aktivace nového spojení byla zařazena do fronty"
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr "byla zjištěna duplicitní IP adresa"
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr "vybraná metoda IP není podporována"
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr "obecný"
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr "Rozhraní TUN nebo TAP"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr "WireGuard"
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr "ad-hoc"
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr "Infrastruktura"
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr "přístupový bod"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr "bod sítě"
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "Síťová připojení"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr "Připojení nelze zobrazit: Připojení neexistuje."
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr "Informace o spojení"
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "Připojení nelze upravit: Připojení neexistuje."
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr "Tento typ připojení ještě není podporován."
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr "Připojení {name} aktivováno."
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr "Aktivace připojení se nezdařila: Připojení nenalezeno."
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
"Nepodařilo se aktivovat připojení {name}: Není k dispozici žádné použitelné "
"zařízení."
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "Připojení {name} deaktivováno."
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr "Deaktivace připojení se nezdařila: Připojení nenalezeno."
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr "Přidávání nového generického připojení"
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "Přidávání nového ethernetového připojení"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "Přidávání nového PPPoE připojení"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "Přidávání nového Wi-Fi připojení"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "Připojení {name} smazáno."
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr "Smazání připojení se nezdařilo: Připojení nenalezeno."
@@ -4947,20 +4930,20 @@ msgstr ""
"zvýšení zabezpečení a anonymity je také možné přistupovat k ostatku "
"Internetu prostřednictvím {box_name}."
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr "Připojení ke službám VPN"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr "OpenVPN"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr "Virtuální soukromá síť"
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -5100,15 +5083,15 @@ msgstr ""
"pagekite, například pagekite.net. V "
"budoucnu bude možná možné k tomuto účelu použít {box_name} vašeho kamaráda."
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr "PageKite"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr "Viditelnost na veřejnosti"
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr "PageKite doména"
@@ -5221,29 +5204,29 @@ 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/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr "Webový server (HTTP)"
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, 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:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr "Webový server (HTTPS)"
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, 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:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr "Zabezpečený shell (SSH)"
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
@@ -5252,7 +5235,7 @@ msgstr ""
"a> pro nastavení SSH klienta"
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr "Výkon"
@@ -5274,7 +5257,7 @@ msgstr ""
"Výkonnostní metriky shromažďuje nástroj Performance Co-Pilot a lze je "
"zobrazit pomocí aplikace Cockpit."
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr "Monitoring systému"
@@ -5282,7 +5265,7 @@ msgstr "Monitoring systému"
msgid "Restart or shut down the system."
msgstr "Restartovat nebo vypnout systém."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "Napájení"
@@ -5367,18 +5350,18 @@ msgstr ""
"Privoxy můžete použít úpravou nastavením svého webového prohlížeče na název "
"nebo IP adresu svého {box_name} a port 8118. Povolena jsou pouze připojení z "
"IP adres místní sítě. Při používání Privoxy si můžete prohlédnout "
-"podrobnosti nastavení a dokumentaci na http://config.privoxy.org/ nebo http://p.p."
+"podrobnosti nastavení a dokumentaci na http://config.privoxy.org/ nebo http://p.p."
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr "Privoxy"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr "Webová proxy"
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr "Přistupte {url} s proxy {proxy} na tcp{kind}"
@@ -5412,11 +5395,11 @@ msgstr ""
"\"http://quassel-irc.org/downloads\">desktopu a mobilních zařízení."
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr "IRC klient"
@@ -5449,12 +5432,12 @@ 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/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr "Radicale"
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr "Kalendář a adresář kontaktů"
@@ -5575,7 +5558,7 @@ msgstr ""
"lesssecureapps\">https://www.google.com/settings/security/lesssecureapps"
"a>)."
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr "E-mailový klient"
@@ -5607,8 +5590,8 @@ msgid ""
"When enabled, RSS-Bridge can be accessed by any "
"user belonging to the feed-reader group."
msgstr ""
-"Pokud je funkce RSS Bridge povolena, může k ní přistupovat každý uživatel patřící do skupiny feed-reader."
+"Pokud je funkce RSS Bridge povolena, může k ní přistupovat každý uživatel patřící do skupiny feed-reader."
#: plinth/modules/rssbridge/__init__.py:27
#, python-brace-format
@@ -5621,16 +5604,16 @@ msgstr ""
"sledování různých webových stránek. Při přidávání kanálu povolte ověřování a "
"použijte své přihlašovací údaje {box_name}."
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr "Číst a přihlásit se k odběru novinek"
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr "RSS-Bridge"
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr "Generátor kanálů RSS"
@@ -5675,15 +5658,15 @@ msgstr ""
"Domácí sdílení - každý uživatel ve skupině freedombox-share může mít svůj "
"vlastní soukromý prostor."
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr "Přístup k soukromému sdílení"
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr "Samba"
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr "Distribuované souborové úložiště"
@@ -5818,15 +5801,15 @@ 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:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr "Hledat na webu"
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr "Searx"
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr "Vyhledávání na webu"
@@ -5921,7 +5904,7 @@ msgstr ""
"o ně starají přispěvatelé Debianu a komunita %(box_name)s."
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr "Výkaz o zabezpečení"
@@ -5997,12 +5980,12 @@ msgstr "ne"
msgid "Not running"
msgstr "Neprobíhá"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, 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:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr "Nastavení zabezpečení aktualizováno"
@@ -6018,11 +6001,11 @@ msgstr ""
"Všimněte si, že Shaarli podporuje pouze jeden uživatelský účet, který je "
"třeba nastavit při první návštěvě."
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "Shaarli"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr "Záložky"
@@ -6061,11 +6044,11 @@ 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/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr "Shadowsocks"
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr "Socks5 proxy"
@@ -6097,7 +6080,7 @@ 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:20
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -6106,7 +6089,7 @@ 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr "Sdílení"
@@ -6161,28 +6144,28 @@ msgid "Shares should be either public or shared with at least one group"
msgstr ""
"Sdílení by mělo být buď veřejné, nebo sdílené alespoň s jednou skupinou."
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr "Přidat sdílení"
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr "Nyní není nastavené žádné sdílení."
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr "Popis umístění na datovém úložišti"
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr "Sdíleno přes"
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr "Se skupinami"
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr "veřejný přístup"
@@ -6238,7 +6221,7 @@ msgstr ""
"backups\">backups, protože mohou být ukládány pouze na stejném oddílu, "
"jako živá data. "
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr "Zachycené stavy datového úložiště"
@@ -6341,7 +6324,7 @@ msgstr "Datum"
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr "Smazat zachycené stavy"
@@ -6394,53 +6377,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr "Vrátit k zachycenému stavu č. %(number)s"
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr "ručně vytvořen"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr "časová osa"
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr "apt"
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr "Spravovat zachycené stavy"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr "Zachycený stav pořízen."
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr "Nastavení zachycování stavů úložiště aktualizováno"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Chyba akce: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr "Označené zachycené stavy smazány"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
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:211
#, 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:214
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:226
msgid "Rollback to Snapshot"
msgstr "Vrátit do podoby zachyceného stavu"
@@ -6456,7 +6439,7 @@ msgstr ""
"spojení provádět úkoly správy, kopírovat soubory nebo spouštět ostatní "
"služby."
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr "Server zabezpečeného shellu (SSH)"
@@ -6504,7 +6487,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr "Ověřování SSH s povoleným heslem."
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr "Sdružené přihlášení (SSO)"
@@ -6527,105 +6510,105 @@ 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:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr "Úložiště"
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} bajtů"
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr "Operace se nezdařila."
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr "Operace byla zrušena."
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr "Toto zařízení už je odpojováno (umount)."
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
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:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr "Časový limit aplikace překročen."
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
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:257
+#: plinth/modules/storage/__init__.py:268
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:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr "Operace už byla zrušena."
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr "Chybí oprávnění pro provedení požadované operace."
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr "Toto zařízení je už připojeno (mount)."
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr "Zařízení není připojeno."
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr "Není umožněno použít požadovanou volbu."
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr "Zařízení je připojeno jiným uživatelem."
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
"Málo místa na systémovém oddílu: {percent_used}% použito, {free_space} volné."
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr "Málo místa na disku"
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr "Hrozí selhání disku"
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6779,16 +6762,16 @@ msgstr ""
"na {box_name} je dostupné pouze pro uživatele patřící do skupiny \"admin\" "
"nebo \"syncthing-access\"."
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr "Spravovat aplikaci Syncthing"
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr "Syncthing"
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr "Synchronizace souborů"
@@ -6815,40 +6798,40 @@ msgstr ""
"Tor SOCKS port je k dispozici na vašem {box_name} pro interní síť na TCP "
"portu 9050."
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr "Tor"
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr "Tor Onion Service"
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr "Tor Socks proxy"
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr "Předávájící Tor most"
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr "Port Tor předávání k dispozici"
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr "Obfs3 transport zaregistrován"
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr "Obfs4 transport zaregistrován"
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, 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:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Potvrďte použití Tor na adrese {url} na tcp{kind}"
@@ -6973,7 +6956,7 @@ msgstr "Onion služba"
msgid "Ports"
msgstr "Porty"
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "Nastavení se nezměnila"
@@ -7031,7 +7014,7 @@ msgstr ""
"Po dokončení stahování můžete k souborům přistupovat také pomocí aplikace Sdílení."
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr "Transmission"
@@ -7062,11 +7045,11 @@ msgstr ""
"Při použití mobilní nebo desktopové aplikace pro Tiny Tiny RSS použijte pro "
"připojení adresu URL /tt-rss-app."
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr "Tiny Tiny RSS"
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr "Čtečka novinek"
@@ -7093,22 +7076,22 @@ msgstr ""
"systému považován za nezbytný, provede se automaticky ve 02:00 a způsobí, že "
"všechny aplikace budou krátce nedostupné."
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr "Aktualizace software"
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr "FreedomBox aktualizován"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr "Nelze spustit aktualizaci distribuce"
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
@@ -7118,11 +7101,11 @@ msgstr ""
"distribuce. Zajistěte, aby bylo volných alespoň 5 GB. Aktualizace distribuce "
"se bude opakovat po 24 hodinách, pokud je povolena."
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr "Zahájena aktualizace distribuce"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -7215,6 +7198,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr "Odmítnout"
@@ -7334,15 +7318,15 @@ msgstr ""
"nebo nastavení systému však mohou měnit pouze uživatelé skupiny admin"
"em>."
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr "Uživatelé a skupiny"
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr "Přístup ke všem službám a nastavení systému"
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Zkontrolujte LDAP položku „{search_item}“"
@@ -7969,12 +7953,12 @@ msgstr ""
"rozhraní správce. Další zásuvné moduly nebo témata lze instalovat a "
"aktualizovat na vlastní riziko."
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr "WordPress"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr "Webové stránky a blog"
@@ -8024,11 +8008,11 @@ msgstr ""
"další uživatele musí být vytvořeny účty jak v {box_name}, tak v Zoph se "
"stejným uživatelským jménem."
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr "Zoph"
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr "Organizér fotografií"
@@ -8066,37 +8050,112 @@ msgstr "PPPoE"
msgid "Generic"
msgstr "Obecné"
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Chyba při nastavování názvu stroje: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, fuzzy, python-brace-format
+#| msgid "Service disabled: {name}"
+msgid "Finished: {name}"
+msgstr "Služba vypnuta: {name}"
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr "Balíček {expression} není k dispozici pro instalaci"
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr "Balíček {package_name} je nejnovější verze ({latest_version})"
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr "Chyba při instalaci"
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr "Instalace"
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr "stahování"
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr "změna média"
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr "soubor s nastaveními: {file}"
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "Nainstalovat aplikace"
+
+#: plinth/setup.py:46
+#, fuzzy
+#| msgid "Updating..."
+msgid "Updating app"
+msgstr "Aktualizace…"
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Chyba při instalaci aplikace: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Chyba při instalaci aplikace: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Chyba při instalaci aplikace: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Chyba při instalaci aplikace: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Aplikace nainstalována."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "Minulá aktualizace"
+
+#: plinth/setup.py:411
+#, fuzzy
+#| msgid "Upgrade Packages"
+msgid "Updating app packages"
+msgstr "Aktualizovat balíčky"
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 odepřeno"
@@ -8412,6 +8471,10 @@ msgstr "Z portů směrovače/sítě LAN"
msgid "To %(box_name)s Ports"
msgstr "Na %(box_name)s Porty"
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Aplikace nainstalována."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr "Nainstalovat tuto aplikaci?"
@@ -8421,24 +8484,16 @@ msgid "This application needs an update. Update now?"
msgstr "Tato aplikace potřebuje aktualizovat. Provést nyní?"
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-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:46
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:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr "Znovu zkontrolovat"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
@@ -8448,36 +8503,43 @@ msgstr ""
"jsou v konfliktu s instalací této aplikace. Následující balíčky budou v "
"případě pokračování odstraněny:"
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr "Instalace"
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr "Aktualizovat"
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr "Provádění úkonů před instalací"
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr "Provádění úkonů po instalaci"
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr "Instalace %(package_names)s: %(status)s"
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "%(percentage)s%% dokončeno"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr "gudžarátština"
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "S použitím DNSSEC na IPv{kind}"
+
+#~ msgid ""
+#~ "Another installation or upgrade is already running. Please wait for a few "
+#~ "moments before trying again."
+#~ msgstr ""
+#~ "Už je spuštěná jiná instalace nebo přechod na novější verzi. Počkejte "
+#~ "chvíli a zkuste to znovu."
+
+#~ msgid "Performing pre-install operation"
+#~ msgstr "Provádění úkonů před instalací"
+
+#~ msgid "Performing post-install operation"
+#~ msgstr "Provádění úkonů po instalaci"
+
+#, python-format
+#~ msgid "Installing %(package_names)s: %(status)s"
+#~ msgstr "Instalace %(package_names)s: %(status)s"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "%(percentage)s%% dokončeno"
+
#~ 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."
@@ -9491,9 +9553,6 @@ msgstr "gudžarátština"
#~ msgid "Service enabled: {name}"
#~ msgstr "Služba zapnuta: {name}"
-#~ msgid "Service disabled: {name}"
-#~ msgstr "Služba vypnuta: {name}"
-
#~ msgid "PageKite Account"
#~ msgstr "PageKite účet"
@@ -9917,9 +9976,6 @@ msgstr "gudžarátština"
#~ msgid "Automatic Upgrades"
#~ msgstr "Automatické aktualizace"
-#~ msgid "Upgrade Packages"
-#~ msgstr "Aktualizovat balíčky"
-
#~ msgid "No such device - {device_path}"
#~ msgstr "Žádné takové zařízení – {device_path}"
diff --git a/plinth/locale/da/LC_MESSAGES/django.po b/plinth/locale/da/LC_MESSAGES/django.po
index 4ef8e8462..7aa30f356 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2022-05-10 02:10+0000\n"
"Last-Translator: ikmaak \n"
"Language-Team: Danish calibre-gruppen har adgang til appen. Alle "
"brugere med adgang kan benytte alle samlingerne."
-#: plinth/modules/calibre/__init__.py:57
+#: plinth/modules/calibre/__init__.py:55
msgid "Use calibre e-book libraries"
msgstr "Brug calibre e-bogssamlinger"
-#: plinth/modules/calibre/__init__.py:60 plinth/modules/calibre/manifest.py:6
+#: plinth/modules/calibre/__init__.py:58 plinth/modules/calibre/manifest.py:6
msgid "calibre"
msgstr "calibre"
-#: plinth/modules/calibre/__init__.py:61
+#: plinth/modules/calibre/__init__.py:59
msgid "E-book Library"
msgstr "E-bogssamling"
@@ -1133,20 +1119,20 @@ msgstr "Tilgå samlingen %(library)s"
msgid "Delete library %(library)s"
msgstr "Slet samlingen %(library)s"
-#: plinth/modules/calibre/views.py:39
+#: plinth/modules/calibre/views.py:41
msgid "Library created."
msgstr "Samling oprettet."
-#: plinth/modules/calibre/views.py:50
+#: plinth/modules/calibre/views.py:52
msgid "An error occurred while creating the library."
msgstr "Der opstod en fejl under oprettelse af samlingen."
-#: plinth/modules/calibre/views.py:64 plinth/modules/gitweb/views.py:138
+#: plinth/modules/calibre/views.py:66 plinth/modules/gitweb/views.py:141
#, python-brace-format
msgid "{name} deleted."
msgstr "{name} slettet."
-#: plinth/modules/calibre/views.py:68 plinth/modules/gitweb/views.py:142
+#: plinth/modules/calibre/views.py:70 plinth/modules/gitweb/views.py:145
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr "Kunne ikke slette {name}: {error}"
@@ -1185,12 +1171,12 @@ msgstr ""
"Det kan tilgås af enhver bruger på {box_name} "
"som tilhører administratorgruppen."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Cockpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "Serveradministration"
@@ -1202,18 +1188,18 @@ msgstr ""
"Her kan du konfigurere nogle generelle indstillinger såsom værtsnavn, "
"domænenavn, webserverens hjemmeside osv."
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "Generel Konfiguration"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "Konfigurer"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1391,11 +1377,11 @@ msgstr ""
"Den er ikke beregnet til at blive anvendt direkte af brugerne. Servere såsom "
"matrix-synapse skal konfigureres med detaljerne som er angivet her."
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "Coturn"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr "VoIP-hjælper"
@@ -1420,11 +1406,11 @@ msgstr ""
"Netværkstidsserver er et program der holder systemets tid synkroniseret med "
"servere på internettet."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "Dato & Tid"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "Tid synkroniseret med NTP-server"
@@ -1465,17 +1451,17 @@ msgstr ""
"Standardkodeordet er 'deluge', men du bør logge ind og ændre det så snart du "
"har aktiveret denne tjeneste."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "Download filer ved hjælp af BitTorrent-applikationer"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "Deluge"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "BitTorrent Webklient"
@@ -1495,49 +1481,49 @@ 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/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "Diagnosticering"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr "lykkedes"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr "mislykkedes"
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr "fejl"
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr ""
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr "MiB"
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr "GiB"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr "Du bør deaktivere nogle applikationer for at frigøre hukommelse."
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr "Du bør ikke installere flere applikationer på dette system."
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
@@ -1547,7 +1533,7 @@ msgstr ""
"{memory_available} {memory_available_unit} fri{percent_used}{percent_used}. "
"{advice_message}"
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr "Lav hukommelse"
@@ -1648,11 +1634,11 @@ msgstr ""
"datasystems24.net eller du kan få en gratis URL-baseret tjeneste på freedns.afraid.org."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "Dynamisk DNS Klient"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr "Dynamisk domænenavn"
@@ -1784,9 +1770,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1883,12 +1871,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "ejabberd"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "Chatserver"
@@ -1996,7 +1984,7 @@ msgstr "Dino"
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2044,23 +2032,23 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
#, fuzzy
#| msgid "Chat Server"
msgid "Email Server"
msgstr "Chatserver"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
#, fuzzy
#| msgid "Manage Libraries"
msgid "My Email Aliases"
msgstr "Håndter samlinger"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
#, fuzzy
#| msgid "Manage Libraries"
msgid "Manage Aliases for Mailbox"
@@ -2100,7 +2088,7 @@ msgstr ""
msgid "Aliases"
msgstr "Håndter samlinger"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
#, fuzzy
#| msgid "Enable Roundcube"
@@ -2194,7 +2182,7 @@ msgstr ""
"på din{box_name}. At holde en firewall aktiveret og velkonfigureret "
"reducerer risikoen for sikkerhedstrusler fra internettet."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "Firewall"
@@ -2354,15 +2342,15 @@ msgstr ""
"For at lære med om hvordan du bruger Git kan du besøge Git-vejledningen."
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr "Læse- og skriveadgang til Git-repositorier"
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr "Gitweb"
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr "Simpel Git-hosting"
@@ -2481,35 +2469,35 @@ msgstr "Slet Wiki eller Blog %(name)s"
msgid "Delete this repository permanently?"
msgstr "Slet bruger permanent?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
#, fuzzy
#| msgid "packages not found"
msgid "Repository created."
msgstr "pakker ikke fundet"
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
#, 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:84
+#: plinth/modules/gitweb/views.py:86
#, fuzzy
#| msgid "packages not found"
msgid "Repository edited."
msgstr "pakker ikke fundet"
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
#, fuzzy
#| msgid "Create User"
msgid "Edit repository"
msgstr "Opret Bruger"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "Dokumentation"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
#, fuzzy
#| msgid "Manual"
@@ -2517,28 +2505,28 @@ msgctxt "User guide"
msgid "Manual"
msgstr "Brugermanual"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Om"
@@ -2870,23 +2858,23 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
#, fuzzy
#| msgid "Enable application"
msgid "Manage I2P application"
msgstr "Aktiver applikation"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
#, fuzzy
#| msgid "Tor Anonymity Network"
msgid "Anonymity Network"
msgstr "Tor Anonymiseringstjeneste"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
#, fuzzy
#| msgid "Privoxy Web Proxy"
msgid "I2P Proxy"
@@ -2951,19 +2939,19 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
#, fuzzy
#| msgid "wiki"
msgid "ikiwiki"
msgstr "wiki"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
#, fuzzy
#| msgid "Wiki & Blog"
msgid "Wiki and Blog"
msgstr "Wiki & Blog"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
#, fuzzy
#| msgid "Services and Applications"
msgid "View and edit wiki applications"
@@ -3021,33 +3009,33 @@ msgstr ""
"Denne handling fjerner alle artikler, sider og kommentater inklusiv al "
"historik. Slet denne wiki eller blog permanent?"
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "Wiki {name} oprettet."
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "Kunne ikke oprette wiki: {error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "Blog {name} oprettet."
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "Kunne ikke oprette blog: {error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, fuzzy, python-brace-format
#| msgid "{name} deleted."
msgid "{title} deleted."
msgstr "{name} slettet."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, fuzzy, python-brace-format
#| msgid "Could not delete {name}: {error}"
msgid "Could not delete {title}: {error}"
@@ -3065,11 +3053,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
#, fuzzy
#| msgid "Web Server"
msgid "Gobby Server"
@@ -3103,11 +3091,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -3127,11 +3115,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
#, fuzzy
#| msgid "IRC Client (Quassel)"
msgid "Chat Client"
@@ -3178,19 +3166,19 @@ msgstr ""
"org/repository/\">Let's Encrypts abonnementsbetingelser inden tjenesten "
"tages i anvendelse."
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
#, fuzzy
#| msgid "Certificates (Let's Encrypt)"
msgid "Let's Encrypt"
msgstr "Certifikater (Let's Encrypt)"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
#, fuzzy
#| msgid "Certificate Status"
msgid "Certificates"
msgstr "Certifikat Status"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -3261,7 +3249,7 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, fuzzy, python-brace-format
#| msgid "Certificate successfully revoked for domain {domain}"
msgid ""
@@ -3269,31 +3257,31 @@ msgid ""
"moments to take effect."
msgstr "Certifikatet for domænet {domain} blev trukket tilbage"
-#: plinth/modules/letsencrypt/views.py:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, 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:94
+#: plinth/modules/letsencrypt/views.py:96
#, 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:99
+#: plinth/modules/letsencrypt/views.py:101
#, fuzzy, python-brace-format
#| msgid "Failed to revoke certificate for domain {domain}: {error}"
msgid "Failed to delete certificate for domain {domain}: {error}"
@@ -3316,7 +3304,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
#, fuzzy
#| msgid "Chat Server (XMPP)"
msgid "Matrix Synapse"
@@ -3431,12 +3419,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3507,53 +3495,53 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
#, fuzzy
#| msgid "Password"
msgid "Password updated"
msgstr "Kodeord"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
#, fuzzy
#| msgid "Application enabled"
msgid "Public registrations enabled"
msgstr "Applikation aktiveret"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
#, fuzzy
#| msgid "Application disabled"
msgid "Public registrations disabled"
msgstr "Applikation deaktiveret"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
#, fuzzy
#| msgid "PageKite enabled"
msgid "Private mode enabled"
msgstr "PageKite aktiveret"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
#, fuzzy
#| msgid "PageKite disabled"
msgid "Private mode disabled"
msgstr "PageKite deaktiveret"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
#, fuzzy
#| msgid "Setting unchanged"
msgid "Default skin changed"
msgstr "Indstilling uændret"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Domain name set"
msgid "Domain name updated"
msgstr "Domænenavn gemt"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
#, fuzzy
#| msgid "Domain name set"
msgid "Site name updated"
@@ -3572,11 +3560,11 @@ msgstr ""
"For at forbinde til serveren skal der bruges en Minetest klient."
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
#, fuzzy
#| msgid "Block Sandbox (Minetest)"
msgid "Block Sandbox"
@@ -3629,7 +3617,7 @@ msgstr ""
msgid "Address"
msgstr "Adresse"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3640,15 +3628,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
#, fuzzy
#| msgid "Mumble Voice Chat Server"
msgid "Simple Media Server"
@@ -3713,11 +3701,11 @@ msgstr ""
"Klienter til computere og Android-enheder "
"er tilgængelige."
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
#, fuzzy
#| msgid "Voice Chat (Mumble)"
msgid "Voice Chat"
@@ -3769,19 +3757,19 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
#, fuzzy
#| msgid "Password changed successfully."
msgid "SuperUser password successfully updated."
msgstr "Kodeord blev ændret."
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
#, fuzzy
#| msgid "Password"
msgid "Join password changed"
msgstr "Kodeord"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3794,7 +3782,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "Navnetjenester"
@@ -3816,27 +3804,22 @@ msgstr "Secure Shell"
msgid "Services"
msgstr "Tjeneste"
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "Netværk"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "Bruger DNSSEC på IPv{kind}"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "Forbindelsestype"
@@ -4352,7 +4335,7 @@ msgid "This connection is not active."
msgstr "Denne forbindelse er ikke aktiv."
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "Sikkerhed"
@@ -4402,7 +4385,7 @@ msgid "Create Connection"
msgstr "Opret Forbindelse"
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "Slet Forbindelse"
@@ -4422,13 +4405,13 @@ msgstr "Afstand"
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "Ethernet"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "Wi-Fi"
@@ -4449,7 +4432,7 @@ msgid "Computer"
msgstr "Computer"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "Rediger Forbindelse"
@@ -4461,13 +4444,13 @@ msgstr "Forbindelse"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "Wi-Fi-netværk i Nærheden"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "Tilføj forbindelse"
@@ -4656,292 +4639,292 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
#, fuzzy
#| msgid "Disabled"
msgid "disabled"
msgstr "Deaktiveret"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
#, fuzzy
#| msgid "Automatic Upgrades"
msgid "automatic"
msgstr "Automatisk Opdatering"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
#, fuzzy
#| msgid "Manual"
msgid "manual"
msgstr "Brugermanual"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
#, fuzzy
#| msgid "Add Service"
msgid "shared"
msgstr "Tilføj Service"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
#, fuzzy
#| msgid "Manage"
msgid "unmanaged"
msgstr "Administrer"
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
#, fuzzy
#| msgid "Available Domains"
msgid "unavailable"
msgstr "Tilgængelige Domæner"
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
#, fuzzy
#| msgid "cable is connected"
msgid "disconnected"
msgstr "kabel forbundet"
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
#, fuzzy
#| msgid "Enable Shaarli"
msgid "preparing"
msgstr "Aktiver Shaarli"
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
#, fuzzy
#| msgid "Connection"
msgid "connecting"
msgstr "Forbindelse"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "needs authentication"
msgstr "Brug basal (\"basic\") HTTP-autentifikation"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
#, fuzzy
#| msgid "Deactivate"
msgid "activated"
msgstr "Deaktiver"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
#, fuzzy
#| msgid "Deactivate"
msgid "deactivating"
msgstr "Deaktiver"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
#, fuzzy
#| msgid "State reason"
msgid "no reason"
msgstr "Tilstandsbegrundelse"
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
#, fuzzy
#| msgid "repro service is not running"
msgid "device is now managed"
msgstr "repro-tjenesten er ikke aktiv"
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
#, fuzzy
#| msgid "repro service is not running"
msgid "device is now unmanaged"
msgstr "repro-tjenesten er ikke aktiv"
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
#, fuzzy
#| msgid "configuration file: {file}"
msgid "configuration failed"
msgstr "konfigurationsfil: {file}"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
#, fuzzy
#| msgid "{name} deleted."
msgid "DHCP client failed"
msgstr "{name} slettet."
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
#, fuzzy
#| msgid "Tor configuration is being updated"
msgid "shared connection service failed"
msgstr "Tor-konfiguration opdateres"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
#, fuzzy
#| msgid "This service already exists"
msgid "device was removed"
msgstr "Denne tjeneste eksisterer allerede"
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
#, fuzzy
#| msgid "cable is connected"
msgid "device disconnected by user"
msgstr "kabel forbundet"
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
#, fuzzy
#| msgid "packages not found"
msgid "Wi-Fi network not found"
msgstr "pakker ikke fundet"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr "generisk"
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr "TUN eller TAP interface"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
#, fuzzy
#| msgid "Access"
msgid "access point"
msgstr "Adgang"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "Netværksforbindelser"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr "Kan ikke vise forbindelse: Forbindelse ikke fundet."
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr "Forbindelsesinformation"
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "Kan ikke redigere forbindelse: Forbindelse ikke fundet."
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr "Denne type forbindelse kan ikke konfigureres herfra endnu."
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr "Aktiverede forbindelse {name}."
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr "Kunne ikke aktivere forbindelse: Forbindelse ikke fundet."
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
"Kunne ikke aktivere forbindelse {name}: Ingen passende enhed er tilgængelig."
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "Deaktiverede forbindelse {name}."
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr "Kan ikke deaktivere forbindelse: Forbindelse ikke fundet."
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
#, fuzzy
#| msgid "Adding New Ethernet Connection"
msgid "Adding New Generic Connection"
msgstr "Tilføjer Ny Ethernet Forbindelse"
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "Tilføjer Ny Ethernet Forbindelse"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "Tilføjer Ny PPPoE Forbindelse"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "Tilføjer Ny Wi-Fi Forbindelse"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "Slettede forbindelse {name}."
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr "Kunne ikke slette forbindelse: Forbindelse ikke fundet."
@@ -4962,26 +4945,26 @@ msgstr ""
"af {box_name}. Du kan også tilgå resten af internettet igennem {box_name} "
"for øget sikkerhed og anonymitet."
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
#, fuzzy
#| msgid "Connection Type"
msgid "Connect to VPN services"
msgstr "Forbindelsestype"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
#, fuzzy
#| msgid "OpenVPN"
msgid "OpenVPN"
msgstr "OpenVPN"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
#, fuzzy
#| msgid "Virtual Private Network (OpenVPN)"
msgid "Virtual Private Network"
msgstr "Virtuelt Privat Netværk (OpenVPN)"
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -5131,19 +5114,19 @@ msgstr ""
"net. I fremtiden vil det måske blive muligt at bruge din vens {box_name} "
"til dette."
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
#, fuzzy
#| msgid "Pagekite"
msgid "PageKite"
msgstr "PageKite"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
#, fuzzy
#| msgid "Public Visibility (PageKite)"
msgid "Public Visibility"
msgstr "Offentlig Tilgængelighed (PageKite)"
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
#, fuzzy
#| msgid "PageKite Account"
msgid "PageKite Domain"
@@ -5269,29 +5252,29 @@ msgstr ""
"her. For eksempel er HTTPS på andre porte end 443 kendt for at give "
"problemer."
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr "Webserver (HTTP)"
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, 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:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr "Webserver (HTTPS)"
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, 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:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr "Secure Shell (SSH)"
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
@@ -5300,7 +5283,7 @@ msgstr ""
"\">instruktioner for opsætning af SSH-klient"
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -5317,7 +5300,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
#, fuzzy
#| msgid "System Configuration"
msgid "System Monitoring"
@@ -5327,7 +5310,7 @@ msgstr "Systemkonfiguration"
msgid "Restart or shut down the system."
msgstr "Genstart eller luk systemet."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "Strøm"
@@ -5421,19 +5404,19 @@ msgstr ""
"på http://config.privoxy.org/ "
"eller http://p.p."
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
#, fuzzy
#| msgid "Enable Privoxy"
msgid "Privoxy"
msgstr "Aktiver Privoxy"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
#, fuzzy
#| msgid "Privoxy Web Proxy"
msgid "Web Proxy"
msgstr "Privoxy Webproxy"
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr "Tilgå {url} med proxy {proxy} ved brug af tcp{kind}"
@@ -5467,11 +5450,11 @@ msgstr ""
"\">computer og mobile"
"a> enhed er tilgængelige."
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
#, fuzzy
#| msgid "Quassel IRC Client"
msgid "IRC Client"
@@ -5509,12 +5492,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
#, fuzzy
#| msgid "Calendar and Addressbook (Radicale)"
msgid "Calendar and Addressbook"
@@ -5633,7 +5616,7 @@ msgstr ""
"lesssecureapps\">https://www.google.com/settings/security/lesssecureapps"
"a>)."
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
#, fuzzy
#| msgid "Email Client (Roundcube)"
msgid "Email Client"
@@ -5676,18 +5659,18 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
#, fuzzy
#| msgid "Bridge"
msgid "RSS-Bridge"
msgstr "Bro"
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5722,15 +5705,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
#, fuzzy
#| msgid "Network Time Server"
msgid "Network File Storage"
@@ -5874,15 +5857,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
#, fuzzy
#| msgid "Web Server"
msgid "Web Search"
@@ -5971,7 +5954,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
#, fuzzy
#| msgid "Security"
msgid "Security Report"
@@ -6048,13 +6031,13 @@ msgstr ""
msgid "Not running"
msgstr "er ikke aktiv"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, 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:59
+#: plinth/modules/security/views.py:60
#, fuzzy
#| msgid "General Configuration"
msgid "Updated security configuration"
@@ -6078,11 +6061,11 @@ 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/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "Shaarli"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
#, fuzzy
#| msgid "Bookmarks (Shaarli)"
msgid "Bookmarks"
@@ -6116,11 +6099,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -6153,14 +6136,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
#, fuzzy
#| msgid "Enable Shaarli"
msgid "Sharing"
@@ -6214,32 +6197,32 @@ msgstr "Denne tjeneste eksisterer allerede"
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
#, fuzzy
#| msgid "Add Service"
msgid "Add share"
msgstr "Tilføj Service"
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
#, fuzzy
#| msgid "Groups"
msgid "With Groups"
msgstr "Grupper"
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -6291,7 +6274,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
#, fuzzy
#| msgid "Create User"
msgid "Storage Snapshots"
@@ -6399,7 +6382,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Delete Snapshots"
@@ -6451,61 +6434,61 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
#, fuzzy
#| msgid "Library created."
msgid "manually created"
msgstr "Samling oprettet."
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr "apt"
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
#, fuzzy
#| msgid "Create User"
msgid "Manage Snapshots"
msgstr "Opret Bruger"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
#, fuzzy
#| msgid "Configuration updated"
msgid "Storage snapshots configuration updated"
msgstr "Konfiguration opdateret"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Fejl under handling: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Deleted selected snapshots"
msgstr "Slet %(name)s"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -6517,7 +6500,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr "Secure Shell (SSH) Server"
@@ -6564,7 +6547,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -6586,117 +6569,117 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
#, fuzzy
#| msgid "reStore"
msgid "Storage"
msgstr "reStore"
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, fuzzy, python-brace-format
#| msgid "{disk_size} bytes"
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size} bytes"
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, fuzzy, python-brace-format
#| msgid "{disk_size} KiB"
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size} KiB"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, fuzzy, python-brace-format
#| msgid "{disk_size} MiB"
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size} MiB"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, fuzzy, python-brace-format
#| msgid "{disk_size} GiB"
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size} GiB"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, fuzzy, python-brace-format
#| msgid "{disk_size} TiB"
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size} TiB"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
#, fuzzy
#| msgid "repro service is running"
msgid "The device is already unmounting."
msgstr "repro-tjenesten er aktiv"
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
#, fuzzy
#| msgid "This service already exists"
msgid "The device is already mounted."
msgstr "Denne tjeneste eksisterer allerede"
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
#, fuzzy
#| msgid "repro service is not running"
msgid "The device is not mounted."
msgstr "repro-tjenesten er ikke aktiv"
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6846,18 +6829,18 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
#, fuzzy
#| msgid "Install this application?"
msgid "Administer Syncthing application"
msgstr "Installer denne applikation?"
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -6883,43 +6866,43 @@ msgid ""
"TCP port 9050."
msgstr "En Tor SOCKS-port er tilgængelig på din %(box_name)s TCP-port 9050."
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
#, fuzzy
#| msgid "Tor Hidden Service"
msgid "Tor Onion Service"
msgstr "Tor Skjult Tjeneste"
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
#, fuzzy
msgid "Tor Bridge Relay"
msgstr "Tor Bridge Relay"
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr "Tor videresendelsesport tilgængelig"
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr "Obfs3 transport registreret"
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr "Obfs4 transport registreret"
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, 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:221
+#: plinth/modules/tor/__init__.py:218
#, 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}"
@@ -7040,7 +7023,7 @@ msgstr "Skjult Tjeneste"
msgid "Ports"
msgstr "Porte"
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "Indstilling uændret"
@@ -7094,7 +7077,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
#, fuzzy
#| msgid "Transmission BitTorrent"
@@ -7129,11 +7112,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
#, fuzzy
#| msgid "News Feed Reader (Tiny Tiny RSS)"
msgid "News Feed Reader"
@@ -7156,8 +7139,8 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
#, fuzzy
@@ -7165,30 +7148,30 @@ msgstr ""
msgid "Software Update"
msgstr "Softwareopdateringer"
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
#, fuzzy
#| msgid "FreedomBox Manual"
msgid "FreedomBox Updated"
msgstr "FreedomBox Brugervejledning"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
#, fuzzy
#| msgid "Automatic upgrades disabled"
msgid "Distribution update started"
msgstr "Automatisk opdatering deaktiveret"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -7283,6 +7266,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -7408,15 +7392,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr "Brugere og Grupper"
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Kontrol af LDAP-konfiguration \"{search_item}\""
@@ -8071,14 +8055,14 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
#, fuzzy
#| msgid "Address"
msgid "WordPress"
msgstr "Adresse"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
#, fuzzy
#| msgid "Wiki & Blog"
msgid "Website and Blog"
@@ -8117,11 +8101,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -8157,37 +8141,110 @@ msgstr "PPPoE"
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Kunne ikke sætte værtsnavn: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, fuzzy, python-brace-format
+#| msgid "Service disabled: {name}"
+msgid "Finished: {name}"
+msgstr "Tjeneste ikke aktiv: {name}"
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr "Fejl under installation"
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr "Installerer"
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr "downloader"
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr "medie-ændring"
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr "konfigurationsfil: {file}"
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "Installer applikationer"
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Kunne ikke installere applikation: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Kunne ikke installere applikation: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Kunne ikke installere applikation: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Kunne ikke installere applikation: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Applikation installeret."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "Seneste opdatering"
+
+#: plinth/setup.py:411
+#, fuzzy
+#| msgid "Upgrade Packages"
+msgid "Updating app packages"
+msgstr "Opdater Pakker"
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -8514,6 +8571,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr "%(box_name)s Konfiguration"
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Applikation installeret."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr "Installer denne applikation?"
@@ -8523,56 +8584,50 @@ msgid "This application needs an update. Update now?"
msgstr "Denne applikation har brug for en opdatering. Opdater nu?"
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr "Installer"
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr "Opdater"
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr "Udfører før-installationshandlinger"
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr "Udfører efter-installationshandlinger"
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr "Installerer %(package_names)s: %(status)s"
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "%(percentage)s%% færdig"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "Bruger DNSSEC på IPv{kind}"
+
+#~ msgid "Performing pre-install operation"
+#~ msgstr "Udfører før-installationshandlinger"
+
+#~ msgid "Performing post-install operation"
+#~ msgstr "Udfører efter-installationshandlinger"
+
+#, python-format
+#~ msgid "Installing %(package_names)s: %(status)s"
+#~ msgstr "Installerer %(package_names)s: %(status)s"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "%(percentage)s%% færdig"
+
#~ 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."
@@ -9433,9 +9488,6 @@ msgstr ""
#~ msgid "Service enabled: {name}"
#~ msgstr "Tjeneste aktiv: {name}"
-#~ msgid "Service disabled: {name}"
-#~ msgstr "Tjeneste ikke aktiv: {name}"
-
#~ msgid "PageKite Account"
#~ msgstr "PageKite-konto"
@@ -9679,9 +9731,6 @@ msgstr ""
#~ msgid "Automatic Upgrades"
#~ msgstr "Automatisk Opdatering"
-#~ msgid "Upgrade Packages"
-#~ msgstr "Opdater Pakker"
-
#, fuzzy
#~| msgid "Create User"
#~ msgid "Create archive"
diff --git a/plinth/locale/de/LC_MESSAGES/django.po b/plinth/locale/de/LC_MESSAGES/django.po
index c8fa5ffed..2c59f7c8d 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2022-08-05 21:15+0000\n"
"Last-Translator: nautilusx \n"
"Language-Team: German calibre Gruppe können auf die App zugreifen. Alle "
"Benutzer mit Zugangsberechtigung können alle Bibliotheken nutzen."
-#: plinth/modules/calibre/__init__.py:57
+#: plinth/modules/calibre/__init__.py:55
msgid "Use calibre e-book libraries"
msgstr "Verwenden von Calibre-E-Book-Bibliotheken"
-#: plinth/modules/calibre/__init__.py:60 plinth/modules/calibre/manifest.py:6
+#: plinth/modules/calibre/__init__.py:58 plinth/modules/calibre/manifest.py:6
msgid "calibre"
msgstr "calibre"
-#: plinth/modules/calibre/__init__.py:61
+#: plinth/modules/calibre/__init__.py:59
msgid "E-book Library"
msgstr "E-Book-Bibliothek"
@@ -1149,20 +1135,20 @@ msgstr "Gehe zur Bibliothek %(library)s"
msgid "Delete library %(library)s"
msgstr "Bibliothek löschen %(library)s"
-#: plinth/modules/calibre/views.py:39
+#: plinth/modules/calibre/views.py:41
msgid "Library created."
msgstr "Bibliothek erstellt."
-#: plinth/modules/calibre/views.py:50
+#: plinth/modules/calibre/views.py:52
msgid "An error occurred while creating the library."
msgstr "Beim Erstellen der Bibliothek ist ein Fehler aufgetreten."
-#: plinth/modules/calibre/views.py:64 plinth/modules/gitweb/views.py:138
+#: plinth/modules/calibre/views.py:66 plinth/modules/gitweb/views.py:141
#, python-brace-format
msgid "{name} deleted."
msgstr "{name} gelöscht."
-#: plinth/modules/calibre/views.py:68 plinth/modules/gitweb/views.py:142
+#: plinth/modules/calibre/views.py:70 plinth/modules/gitweb/views.py:145
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr "{name} konnte nicht gelöscht werden: {error}"
@@ -1203,12 +1189,12 @@ msgstr ""
"Auf sie kann von jedem Benutzer auf der "
"{box_name} zugegriffen werden, der zur Administratorgruppe gehören."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Cockpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "Serververwaltung"
@@ -1220,18 +1206,18 @@ msgstr ""
"Hier können Sie einige allgemeine Konfigurationsoptionen wie Hostname, "
"Domainname, Webserver-Homepage usw. festlegen."
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "Allgemeine Konfiguration"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "Konfigurieren"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1412,11 +1398,11 @@ msgstr ""
"\"{e_url}\">ejabberd müssen mit den hier angegebenen Details "
"konfiguriert werden."
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "Coturn"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr "VoIP-Helfer"
@@ -1442,11 +1428,11 @@ msgstr ""
"Der Netzwerk-Zeitserver hält Ihre Systemzeit synchron mit Servern im "
"Internet."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "Datum und Uhrzeit"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "Zeit synchronisiert mit NTP-Server"
@@ -1487,17 +1473,17 @@ msgstr ""
"Das Standardkennwort ist 'deluge'; Sie sollten sich aber anmelden und es "
"sofort ändern, nachdem Sie diesen Dienst aktiviert haben."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "Dateien mit BitTorrent herunterladen"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "Deluge"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "BitTorrent-Webclient"
@@ -1517,51 +1503,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/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "Diagnose"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr "bestanden"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr "gescheitert"
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr "Fehler"
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr "Warnung"
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr "MiB"
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr "GiB"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
"Sie sollten einige Anwendungen deaktivieren, um den Speicherverbrauch zu "
"reduzieren."
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr "Sie sollten auf diesem System keine neuen Anwendungen installieren."
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
@@ -1570,7 +1556,7 @@ msgstr ""
"Das System hat wenig Speicherplatz: {percent_used}% verwendet, "
"{memory_available}·{memory_available_unit}frei. {advice_message}"
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr "Wenig Speicher"
@@ -1667,11 +1653,11 @@ msgstr ""
"freedns.afraid.org/\" target=\"_blank\">freedns.afraid.org können "
"mittels Update-URL genutzt werden."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "Dynamischer DNS-Client"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr "Dynamischer Domain-Name"
@@ -1800,9 +1786,11 @@ msgid "This field is required."
msgstr "Dieses Feld ist erforderlich."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1888,12 +1876,12 @@ msgstr ""
"die Coturn-App oder konfiguriere einen externen "
"Server."
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "ejabberd"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "Chatserver"
@@ -2007,7 +1995,7 @@ msgstr "Dino"
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2074,19 +2062,19 @@ msgstr ""
"Während der Installation werden alle anderen E-Mail-Server im System "
"deinstalliert."
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr "Postfix/Dovecot"
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr "E-Mail Server"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr "Meine E-Mail-Aliase"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr "Aliase des Postfachs verwalten"
@@ -2122,7 +2110,7 @@ msgstr "Kann keine Zahl sein"
msgid "Aliases"
msgstr "Aliase"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr "Roundcube"
@@ -2208,7 +2196,7 @@ msgstr ""
"Verkehr Ihrer {box_name} kontrolliert. Die Firewall aktiv und korrekt "
"konfiguriert halten reduziert Sicherheitsrisiken aus dem Internet."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "Firewall"
@@ -2372,15 +2360,15 @@ msgstr ""
"Um weiter über Git Betrieb zu lernen, schauen Sie sich die Gitanleitung an."
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr "Lese- und Schreibberechtigung auf Git respositories"
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr "Gitweb"
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr "Einfaches Git Hosting"
@@ -2480,54 +2468,54 @@ msgstr "Git Repository %(name)s löschen"
msgid "Delete this repository permanently?"
msgstr "Dieses respository permanent löschen?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr "Archiv erstellt."
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr "Beim Erstellen des Repository ist ein Fehler aufgetreten."
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr "Archiv bearbeitet."
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr "Archiv bearbeiten"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "Dokumentation"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr "Handbuch"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr "Unterstützung erhalten"
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr "Feedback geben"
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "Mitwirken"
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Info"
@@ -2888,19 +2876,19 @@ msgstr ""
"Der erste Besuch der bereitgestellten Weboberfläche leitet den "
"Konfigurationsprozess ein."
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr "I2P-Anwendung verwalten"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr "I2P"
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr "Anonymisierungsnetzwerk"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr "I2P Proxy"
@@ -2970,15 +2958,15 @@ msgstr ""
"\"{users_url}\">Benutzerkonfiguration können diese Rechte geändert oder "
"neue Benutzer angelegt werden."
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr "ikiwiki"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr "Wiki und Blog"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr "Wiki-Anwendungen ansehen und bearbeiten"
@@ -3034,32 +3022,32 @@ 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:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "Wiki {name} angelegt."
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "Wiki konnte nicht angelegt werden: {error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "Blog {name} angelegt."
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "Blog konnte nicht angelegt werden: {error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr "{title} gelöscht."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr "{title} konnte nicht gelöscht werden: {error}"
@@ -3079,11 +3067,11 @@ msgstr ""
"Client herunterladen und installieren. Dann Gobby starten und „Mit "
"Server verbinden“ auswählen und den Domainnamen Ihrer {box_name} eingeben."
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr "infinoted"
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr "Gobby-Server"
@@ -3119,11 +3107,11 @@ msgstr ""
"Zur Verwendung von Janus ist Coturn "
"erforderlich."
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr "Janus"
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr "Videoraum"
@@ -3145,11 +3133,11 @@ msgstr ""
"JSXC ist ein XMPP-Webclient. Er wird meist mit einem lokalen XMPP-Server "
"genutzt."
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr "JSXC"
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr "Chatclient"
@@ -3183,15 +3171,15 @@ msgstr ""
"akzeptieren Sie die Let's "
"Encrypt Vetragsvereinbarungen vor der Verwendung dieses Dienstes."
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr "Let's Encrypt"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "Zertifikate"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr "Kann nicht testen: Es sind keine Domains konfiguriert."
@@ -3256,7 +3244,7 @@ msgstr ""
"Es wurden keine Domains konfiguriert. Um Zertifikate erhalten zu können, "
"müssen Domains konfiguriert werden."
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
@@ -3265,29 +3253,29 @@ msgstr ""
"Zertifikat erfolgreich widerrufen für Domain {domain}. Es kann einige "
"Momente dauern, bis dies in Kraft tritt."
-#: plinth/modules/letsencrypt/views.py:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, 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:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr "Zertifikat erfolgreich widerrufen für Domain {domain}"
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr "Fehler beim Widerrufen des Zertifikats für Domain {domain}: {error}"
@@ -3320,7 +3308,7 @@ msgstr ""
"Installiere die Coturn-App oder konfiguriere "
"einen externen Server."
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr "Matrix Synapse"
@@ -3464,12 +3452,12 @@ 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/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr "MediaWiki"
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr "Wiki"
@@ -3544,41 +3532,41 @@ 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:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "Passwort geändert"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
"Kennwortaktualisierung fehlgeschlagen. Bitte wählen Sie ein stärkeres "
"Passwort"
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr "Öffentliche Registrierung aktiviert"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr "Öffentliche Registrierung deaktiviert"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr "Privater Modus aktiviert"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr "Privater Modus ausgeschaltet"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr "Standard-Thema geändert"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr "Domainname aktualisiert"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
msgid "Site name updated"
msgstr "Website-Name aktualisiert"
@@ -3595,11 +3583,11 @@ msgstr ""
"Standardport (30000). Um auf dem Server zu spielen, wird ein Minetest-Client benötigt."
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr "Minetest"
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr "Block-Sandkasten"
@@ -3652,7 +3640,7 @@ msgstr ""
msgid "Address"
msgstr "Adresse"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3670,15 +3658,15 @@ msgstr ""
"Smartphones, Fernseher und Gaming-Systeme (wie PS3 und Xbox 360) oder "
"Anwendungen wie Totem und Kodi."
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr "Medien-Streaming-Server"
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr "MiniDLNA"
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr "Einfacher Medienserver"
@@ -3742,11 +3730,11 @@ msgstr ""
"verbinden. Auf Mumble finden Sie "
"Anwendungen, um sich vom Desktop oder Mobil-Gerät mit Mumble zu verbinden."
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr "Mumble"
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr "Sprachkonferenz"
@@ -3795,15 +3783,15 @@ msgstr "Mumblefly"
msgid "Mumla"
msgstr "Mumla"
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr "SuperUser-Kennwort wurde erfolgreich aktualisiert."
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr "Beitrittspasswort geändert"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr "Name des Hauptkanals geändert."
@@ -3820,7 +3808,7 @@ msgstr ""
"jeden Namens-Typ wird angezeigt, ob die HTTP-, HTTPS- und SSH-Dienste für "
"eingehende Verbindungen eingeschaltet oder ausgeschaltet ist."
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "Namen-Dienste"
@@ -3840,7 +3828,7 @@ msgstr "Secure Shell"
msgid "Services"
msgstr "Dienste"
-#: plinth/modules/networks/__init__.py:36
+#: 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."
@@ -3849,7 +3837,7 @@ msgstr ""
"eine Verbindung zum Internet her. Teilen Sie diese Verbindung mit anderen "
"Geräten im Netzwerk."
-#: plinth/modules/networks/__init__.py:38
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
@@ -3857,15 +3845,10 @@ msgstr ""
"Geräte die mit anderen Methoden verwaltet werden, können hier möglicherweise "
"nicht konfiguriert werden."
-#: plinth/modules/networks/__init__.py:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "Netzwerke"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "DNSSEC wird auf IPv{kind} verwendet"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "Verbindungstyp"
@@ -4438,7 +4421,7 @@ msgid "This connection is not active."
msgstr "Diese Verbindung ist nicht aktiv."
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "Sicherheit"
@@ -4490,7 +4473,7 @@ msgid "Create Connection"
msgstr "Verbindung anlegen"
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "Verbindung löschen"
@@ -4510,13 +4493,13 @@ msgstr "Abstand"
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "Ethernet"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "WLAN"
@@ -4537,7 +4520,7 @@ msgid "Computer"
msgstr "Computer"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "Verbindung bearbeiten"
@@ -4547,13 +4530,13 @@ msgstr "Verbindungen"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "WLANs in der Nähe"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "Verbindung hinzufügen"
@@ -4782,247 +4765,247 @@ msgstr ""
"Routers. Hier finden Sie eine vollständige Anleitung, wie diese Aufgabe zu "
"erfüllen ist."
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr "deaktiviert"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr "automatisch"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr "Handbuch"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr "geteilt"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr "link-lokal"
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr "unbekannt"
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr "nicht verwaltet"
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr "nicht verfügbar"
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr "nicht verbunden"
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr "Vorbereitung"
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr "verbinde"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr "benötigt Authentifizierung"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr "Adresse anfordern"
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr "prüfe"
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr "Warten auf Sekundär"
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr "aktiviert"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr "deaktiviere"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr "ohne Grund"
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr "unbekannter Fehler"
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr "Gerät wird jetzt verwaltet"
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr "Gerät ist jetzt unverwaltet"
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr "Konfiguration gescheitert"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr "Secrets erforderlich"
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr "DHCP-Client konnte nicht gestartet werden"
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr "DHCP Client-Fehler"
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr "DHCP-Client fehlgeschlagen"
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr "Shared Connection Service konnte nicht gestartet werden"
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr "Shared Connection Service fehlgeschlagen"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr "Gerät wurde entfernt"
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr "Gerät durch Benutzer getrennt"
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr "eine Abhängigkeit der Verbindung ist fehlgeschlagen"
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr "Wi-Fi-Netzwerk nicht gefunden"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr "eine sekundäre Verbindung ist fehlgeschlagen"
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr "neue Verbindungsaktivierung wurde in die Warteschlange eingereiht"
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr "eine doppelte IP-Adresse wurde festgestellt"
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr "ausgewählte IP-Methode wird nicht unterstützt"
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr "generisch"
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr "TUN- bzw. TAP-Schnittstelle"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr "WireGuard"
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr "ad-hoc"
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr "Infrastruktur"
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr "Accesspoint"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr "Mesh-Point"
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "Netzwerkverbindungen"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr "Kann Verbindung nicht anzeigen: Verbindung nicht gefunden."
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr "Verbindungsinformationen"
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "Kann Verbindung nicht bearbeiten: Verbindung nicht gefunden."
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr "Dieser Verbindungstyp ist noch nicht bekannt."
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr "Verbindung {name} aktiviert."
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr "Fehler beim Einschalten der Verbindung: Verbindung nicht gefunden."
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
"Fehler beim Einschalten der Verbindung {name}: Kein geeignetes Gerät "
"verfügbar."
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "Verbindung {name} ausgeschaltet."
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr "Konnte Verbindung nicht ausschalten: Verbindung nicht gefunden."
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr "Neue generische Verbindung wird hinzugefügt"
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "Neue Ethernet-Verbindung wird hinzugefügt"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "Neue PPPoE-Verbindung wird hinzugefügt"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "WLAN-Verbindung wird hinzugefügt"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "Verbindung {name} gelöscht."
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr "Konnte Verbindung nicht löschen: Verbindung nicht gefunden."
@@ -5043,20 +5026,20 @@ msgstr ""
"{box_name} erlangen. Sie können auch auf das Internet via {box_name} für "
"zusätzliche Sicherheit und Anonymität zugreifen."
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr "Mit VPN-Diensten verbinden"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr "OpenVPN"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr "Virtuelles Privates Netzwerk"
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -5199,15 +5182,15 @@ msgstr ""
"\"https://pagekite.net\">pagekite.net. In der Zukunft könnte es möglich "
"sein, hierfür die {box_name} eines Freundes zu nutzen."
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr "PageKite"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr "Öffentliche Sichtbarkeit"
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr "PageKite Domäne"
@@ -5321,31 +5304,31 @@ msgstr ""
"Beispielsweise HTTPS auf anderen Ports als 443, ist bekannt dafür, Probleme "
"zu verursachen."
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr "Webserver (HTTP)"
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
"Webseite wird unter http://{0} verfügbar sein"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr "Webserver (HTTPS)"
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
"Webseite wird unter https://{0} verfügbar sein"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr "Secure Shell (SSH)"
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
@@ -5354,7 +5337,7 @@ msgstr ""
"\">Konfigurationsanweisungen"
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr "Leistung"
@@ -5377,7 +5360,7 @@ msgstr ""
"Leistungskennzahlen werden von Performance Co-Pilot erfasst und können in "
"der Cockpit-App angezeigt werden."
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr "Systemüberwachung"
@@ -5385,7 +5368,7 @@ msgstr "Systemüberwachung"
msgid "Restart or shut down the system."
msgstr "Neu starten oder das System herunterfahren."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "Power"
@@ -5477,15 +5460,15 @@ msgstr ""
"unter http://config.privoxy.org/ "
"oder http://p.p einsehen."
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr "Privoxy"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr "Web Proxy"
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr "Zugang auf {url} über Proxy {proxy} auf TCP{kind}"
@@ -5520,11 +5503,11 @@ msgstr ""
"quassel-irc.org/downloads\">Desktop und mobile Telefone zur Verfügung."
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr "IRC-Client"
@@ -5558,12 +5541,12 @@ msgstr ""
"Kontaktdaten wird nicht unterstützt; dies muss über einen separaten Client "
"erfolgen."
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr "Radicale"
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr "Kalender und Adressbuch"
@@ -5685,7 +5668,7 @@ msgstr ""
"lesssecureapps\">https://www.google.com/settings/security/lesssecureapps"
"a>)."
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr "E-Mail-Client"
@@ -5732,16 +5715,16 @@ msgstr ""
"Hinzufügen eines Feeds die Authentifizierung und verwenden Sie Ihre "
"{box_name}-Anmeldeinformationen."
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr "Lesen und Abonnieren von Neuigkeiten-Feeds"
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr "RSS-Bridge"
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr "RSS Feed Generator"
@@ -5787,15 +5770,15 @@ msgstr ""
"Home Share - jeder Benutzer in der freedombox-share-Gruppe kann seinen "
"eigenen privaten Raum haben."
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr "Zugriff auf die privaten Freigaben"
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr "Samba"
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr "Netzwerkdateispeicherung"
@@ -5929,15 +5912,15 @@ msgstr ""
"Searx kann verwendet werden, um Nachverfolgung und Profiling durch "
"Suchmaschinen zu vermeiden. Standardmäßig werden keine Cookies gespeichert."
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr "Suche im Web"
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr "Searx"
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr "Websuche"
@@ -6035,7 +6018,7 @@ msgstr ""
"Mitwirkenden an Debian und der %(box_name)s Gemeinschaft gepflegt."
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr "Sicherheits-Mitteilungsbericht"
@@ -6112,12 +6095,12 @@ msgstr "Nein"
msgid "Not running"
msgstr "Läuft nicht"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Fehler beim Setzen des eingeschränkten Zugriffs: {exception}"
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr "Sicherheitskonfiguration aktualisiert"
@@ -6133,11 +6116,11 @@ msgstr ""
"Beachten Sie, dass Shaarli nur ein einziges Benutzerkonto unterstützt, das "
"Sie bei Ihrem ersten Besuch einrichten müssen."
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "Shaarli"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr "Lesezeichen"
@@ -6177,11 +6160,11 @@ msgstr ""
"SOCKS5-Proxy in ihrem Gerät, Browser, oder Anwendung auf http://"
"Freedombox_Adresse:1080/"
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr "Shadowsocks"
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr "Socks5-Proxy"
@@ -6214,7 +6197,7 @@ msgstr ""
"Verschlüsselungsverfahren. Muss mit der Einstellung des Servers "
"übereinstimmen."
-#: plinth/modules/sharing/__init__.py:20
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -6223,7 +6206,7 @@ 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr "Sharing"
@@ -6278,28 +6261,28 @@ msgstr "Eine Freigabe mit diesem Namen existiert bereits."
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:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr "Freigabe hinzufügen"
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr "Derzeit sind keine Freigaben konfiguriert."
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr "Pfad der Festplatte"
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr "Freigegeben über"
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr "Mit Gruppen"
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr "öffentlicher Zugang"
@@ -6357,7 +6340,7 @@ msgstr ""
"\"/plinth/sys/backups\">Datensicherungen, da sie nur auf derselben "
"Partition gespeichert werden können. "
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr "Speicherauszüge"
@@ -6461,7 +6444,7 @@ msgstr "Datum"
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr "Speicherauszüge löschen"
@@ -6515,56 +6498,56 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr "Zurücksetzen auf Speicherauszug #%(number)s"
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr "Manuell erstellt"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr "Zeitleiste"
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr "apt"
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr "Schnappschüsse verwalten"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr "Schnappschuss erstellt."
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr "Konfiguration der Speicherauszüge aktualisiert"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Aktionsfehler: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr "Ausgewählte Schnappschüsse gelöscht"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
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:211
#, 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:214
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:226
msgid "Rollback to Snapshot"
msgstr "Zurücksetzen auf Speicherauszug"
@@ -6580,7 +6563,7 @@ msgstr ""
"verifizierter, entfernter Computer Verwaltungsaufgaben ausführen, Dateien "
"kopieren oder andere Anwendungen starten."
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr "Secure Shell (SSH) Server"
@@ -6627,7 +6610,7 @@ msgstr "SSH-Authentifizierung mit Passwort deaktiviert."
msgid "SSH authentication with password enabled."
msgstr "SSH-Authentifizierung mit Passwort aktiviert."
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr "Einmal-Anmeldung"
@@ -6651,109 +6634,109 @@ msgstr ""
"Speichermedien einsehen, Wechselmedien einbinden und aushängen, die Root-"
"Partition erweitern usw."
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr "Speicher"
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} Bytes"
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr "Der Vorgang schlug fehl."
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr "Der Vorgang wurde abgebrochen."
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr "Das Gerät wird bereits ausgehängt."
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
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:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr "Der Vorgang beendet wegen Zeitüberschreitung."
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
"Dieser Vorgang würde ein Gerät aufwecken, welches sich in einem Tiefschlaf-"
"Zustand befindet."
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
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:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr "Dieser Vorgang wurde bereits abgebrochen."
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr "Nicht autorisiert, um den gewünschten Vorgang auszuführen."
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr "Dieses Gerät ist bereits eingebunden."
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr "Das Gerät ist nicht eingebunden."
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr "Die gewünschte Option ist nicht gestattet."
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr "Das Gerät ist von einem anderen Benutzer eingebunden."
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, 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:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr "Wenig Plattenspeicherplatz"
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr "Festplattenfehler unmittelbar bevorstehend"
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6912,16 +6895,16 @@ msgstr ""
"{box_name} ist nur für Benutzer der \"Admin\" oder \"Syncthing-access\"-"
"Gruppe zugänglich."
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr "Syncthing-Anwendung einstellen"
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr "Syncthing"
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr "Dateisynchronisation"
@@ -6948,40 +6931,40 @@ msgstr ""
"Tor SOCKS-Port ist auf Ihrer {box_name} für interne Netzwerke auf TCP port "
"9050 verfügbar."
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr "Tor"
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr "Tor-Onion-Dienste"
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr "Tor-Socks-Proxy"
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr "Tor-Bridge-Relay"
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr "Tor-Relay-Port ist verfügbar"
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr "Obfs3-Transport registriert"
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr "Obfs4-Transport registriert"
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, 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:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Tor-Nutzung auf {url} über TCP{kind} bestätigen"
@@ -7112,7 +7095,7 @@ msgstr "Onion-Dienste"
msgid "Ports"
msgstr "Ports"
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "Einstellung unverändert"
@@ -7168,7 +7151,7 @@ msgstr ""
"Nachdem ein Download abgeschlossen ist, können Sie auch über die App Sharing auf Ihre Dateien zugreifen."
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr "Transmission"
@@ -7200,11 +7183,11 @@ msgstr ""
"verwenden Sie die URL /tt-rss-app für die "
"Verbindung."
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr "Tiny Tiny RSS"
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr "Feedreader"
@@ -7233,22 +7216,22 @@ msgstr ""
"erachtet wird, erfolgt dieser automatisch um 02:00 Uhr, so dass alle Apps "
"kurzzeitig nicht verfügbar sind."
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr "Software-Aktualisierung"
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr "FreedomBox aktualisiert"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr "Distributions-Update konnte nicht gestartet werden"
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
@@ -7259,11 +7242,11 @@ msgstr ""
"mindestens 5 GB frei sind. Das Distributions-Update wird nach 24 Stunden "
"erneut versucht, falls aktiviert."
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr "Distributions-Upgrade gestartet"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -7360,6 +7343,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr "Verwerfen"
@@ -7482,15 +7466,15 @@ msgstr ""
"dürfen nur Mitglieder der Gruppe admin Apps oder "
"Systemeinstellungen ändern."
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr "Benutzer und Gruppen"
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr "Zugriff auf alle Anwendungen und Systemeinstellungen"
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "LDAP-Eintrag „{search_item}“ prüfen"
@@ -8138,12 +8122,12 @@ msgstr ""
"Plugins oder Themes können auf Ihr eigenes Risiko installiert und "
"aktualisiert werden."
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr "WordPress"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr "Internetseite und Blog"
@@ -8196,11 +8180,11 @@ msgstr ""
"Administrator in Zoph. Für zusätzliche Benutzer müssen Konten sowohl in "
"{box_name} als auch in Zoph mit demselben Benutzernamen erstellt werden."
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr "Zoph"
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr "Foto-Manager"
@@ -8239,37 +8223,112 @@ msgstr "PPPoE"
msgid "Generic"
msgstr "Allgemein"
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Fehler beim Setzen des Hostnamens: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, fuzzy, python-brace-format
+#| msgid "Service disabled: {name}"
+msgid "Finished: {name}"
+msgstr "Dienst ausgeschaltet: {name}"
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr "Paket {expression} ist nicht verfügbar"
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr "Paket {package_name} ist die aktuellste Version ({latest_version})"
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr "Fehler bei der Installation"
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr "Installation läuft"
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr "herunterladen"
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr "Medienwechsel"
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr "Konfigurationsdatei: {file}"
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "Apps installieren"
+
+#: plinth/setup.py:46
+#, fuzzy
+#| msgid "Updating..."
+msgid "Updating app"
+msgstr "Aktualisierung läuft …"
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Fehler beim Installieren der Anwendung: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Fehler beim Installieren der Anwendung: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Fehler beim Installieren der Anwendung: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Fehler beim Installieren der Anwendung: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Anwendung installiert."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "Letztes Update"
+
+#: plinth/setup.py:411
+#, fuzzy
+#| msgid "Upgrade Packages"
+msgid "Updating app packages"
+msgstr "Pakete aktualisieren"
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Unzulässig"
@@ -8591,6 +8650,10 @@ msgstr "Von Router-/WAN-Ports"
msgid "To %(box_name)s Ports"
msgstr "Zu %(box_name)s Ports"
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Anwendung installiert."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr "Diese Anwendung installieren?"
@@ -8600,22 +8663,14 @@ msgid "This application needs an update. Update now?"
msgstr "Die Anwendung muss aktualisiert werden! Jetzt aktualisieren?"
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-"Es läuft bereits eine andere Installation oder Update. Bitte warten Sie "
-"einen Moment, bevor Sie es erneut versuchen."
-
-#: plinth/templates/setup.html:46
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:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr "Erneut prüfen"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
@@ -8625,36 +8680,43 @@ msgstr ""
"Pakete stehen in Konflikt mit der Installation dieser App. Die folgenden "
"Pakete werden entfernt, wenn Sie fortfahren:"
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr "Installieren"
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr "Aktualisieren"
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr "Installationsvorbereitungen werden ausgeführt"
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr "Installationsnachbereitungen werden ausgeführt"
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr "%(package_names)s wird installiert: %(status)s"
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "%(percentage)s %% abgeschlossen"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr "Gujarati"
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "DNSSEC wird auf IPv{kind} verwendet"
+
+#~ msgid ""
+#~ "Another installation or upgrade is already running. Please wait for a few "
+#~ "moments before trying again."
+#~ msgstr ""
+#~ "Es läuft bereits eine andere Installation oder Update. Bitte warten Sie "
+#~ "einen Moment, bevor Sie es erneut versuchen."
+
+#~ msgid "Performing pre-install operation"
+#~ msgstr "Installationsvorbereitungen werden ausgeführt"
+
+#~ msgid "Performing post-install operation"
+#~ msgstr "Installationsnachbereitungen werden ausgeführt"
+
+#, python-format
+#~ msgid "Installing %(package_names)s: %(status)s"
+#~ msgstr "%(package_names)s wird installiert: %(status)s"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "%(percentage)s %% abgeschlossen"
+
#~ 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."
@@ -9683,9 +9745,6 @@ msgstr "Gujarati"
#~ msgid "Service enabled: {name}"
#~ msgstr "Dienst eingeschaltet: {name}"
-#~ msgid "Service disabled: {name}"
-#~ msgstr "Dienst ausgeschaltet: {name}"
-
#~ msgid "PageKite Account"
#~ msgstr "PageKite-Konto"
@@ -10108,9 +10167,6 @@ msgstr "Gujarati"
#~ msgid "Automatic Upgrades"
#~ msgstr "Automatische Aktualisierungen"
-#~ msgid "Upgrade Packages"
-#~ msgstr "Pakete aktualisieren"
-
#~ msgid "No such device - {device_path}"
#~ msgstr "Kein solches Gerät - {device_path}"
diff --git a/plinth/locale/django.pot b/plinth/locale/django.pot
index 8c8da285f..b9a9ea0be 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -21,7 +21,7 @@ msgstr ""
msgid "Page source"
msgstr ""
-#: plinth/context_processors.py:23 plinth/views.py:84
+#: plinth/context_processors.py:23 plinth/views.py:82
msgid "FreedomBox"
msgstr ""
@@ -84,29 +84,15 @@ msgstr ""
msgid "Use the language preference set in the browser"
msgstr ""
-#: plinth/middleware.py:38 plinth/templates/setup.html:18
-msgid "Application installed."
-msgstr ""
-
-#: plinth/middleware.py:43
-#, python-brace-format
-msgid "Error installing application: {string} {details}"
-msgstr ""
-
-#: plinth/middleware.py:47
-#, python-brace-format
-msgid "Error installing application: {error}"
-msgstr ""
-
-#: plinth/modules/apache/__init__.py:33
+#: plinth/modules/apache/__init__.py:31
msgid "Apache HTTP Server"
msgstr ""
-#: plinth/modules/apache/__init__.py:41
+#: plinth/modules/apache/__init__.py:39
msgid "Web Server"
msgstr ""
-#: plinth/modules/apache/__init__.py:47
+#: plinth/modules/apache/__init__.py:45
#, python-brace-format
msgid "{box_name} Web Interface (Plinth)"
msgstr ""
@@ -132,11 +118,11 @@ msgid ""
"network."
msgstr ""
-#: plinth/modules/avahi/__init__.py:51
+#: plinth/modules/avahi/__init__.py:49
msgid "Service Discovery"
msgstr ""
-#: plinth/modules/avahi/__init__.py:64
+#: plinth/modules/avahi/__init__.py:62
msgid "Local Network Domain"
msgstr ""
@@ -144,36 +130,36 @@ msgstr ""
msgid "Backups allows creating and managing backup archives."
msgstr ""
-#: plinth/modules/backups/__init__.py:50 plinth/modules/backups/__init__.py:202
-#: plinth/modules/backups/__init__.py:247
+#: plinth/modules/backups/__init__.py:48 plinth/modules/backups/__init__.py:199
+#: plinth/modules/backups/__init__.py:244
msgid "Backups"
msgstr ""
-#: plinth/modules/backups/__init__.py:199
+#: plinth/modules/backups/__init__.py:196
msgid ""
"Enable an automatic backup schedule for data safety. Prefer an encrypted "
"remote backup location or an extra attached disk."
msgstr ""
-#: plinth/modules/backups/__init__.py:205
+#: plinth/modules/backups/__init__.py:202
msgid "Enable a Backup Schedule"
msgstr ""
-#: plinth/modules/backups/__init__.py:209
-#: plinth/modules/backups/__init__.py:256
-#: plinth/modules/storage/__init__.py:329
+#: plinth/modules/backups/__init__.py:206
+#: plinth/modules/backups/__init__.py:253
+#: plinth/modules/storage/__init__.py:326
#, python-brace-format
msgid "Go to {app_name}"
msgstr ""
-#: plinth/modules/backups/__init__.py:244
+#: plinth/modules/backups/__init__.py:241
#, python-brace-format
msgid ""
"A scheduled backup failed. Past {error_count} attempts for backup did not "
"succeed. The latest error is: {error_message}"
msgstr ""
-#: plinth/modules/backups/__init__.py:252
+#: plinth/modules/backups/__init__.py:249
msgid "Error During Backup"
msgstr ""
@@ -248,7 +234,7 @@ msgstr ""
#: plinth/modules/ikiwiki/forms.py:15
#: plinth/modules/networks/templates/connection_show.html:71
#: plinth/modules/samba/templates/samba.html:66
-#: plinth/modules/sharing/templates/sharing.html:33
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "Name"
msgstr ""
@@ -405,7 +391,7 @@ msgid "{box_name} storage"
msgstr ""
#: plinth/modules/backups/templates/backups.html:17
-#: plinth/modules/backups/views.py:111
+#: plinth/modules/backups/views.py:112
msgid "Create a new backup"
msgstr ""
@@ -454,7 +440,7 @@ msgid "Create Location"
msgstr ""
#: plinth/modules/backups/templates/backups_add_repository.html:19
-#: plinth/modules/gitweb/views.py:50
+#: plinth/modules/gitweb/views.py:52
msgid "Create Repository"
msgstr ""
@@ -510,7 +496,7 @@ msgstr ""
#: plinth/modules/backups/templates/backups_repository.html:87
#: plinth/modules/backups/templates/backups_restore.html:27
-#: plinth/modules/backups/views.py:206
+#: plinth/modules/backups/views.py:207
msgid "Restore"
msgstr ""
@@ -594,99 +580,99 @@ msgstr ""
msgid "Verify Host"
msgstr ""
-#: plinth/modules/backups/views.py:55
+#: plinth/modules/backups/views.py:56
msgid "Backup schedule updated."
msgstr ""
-#: plinth/modules/backups/views.py:74
+#: plinth/modules/backups/views.py:75
msgid "Schedule Backups"
msgstr ""
-#: plinth/modules/backups/views.py:106
+#: plinth/modules/backups/views.py:107
msgid "Archive created."
msgstr ""
-#: plinth/modules/backups/views.py:134
+#: plinth/modules/backups/views.py:135
msgid "Delete Archive"
msgstr ""
-#: plinth/modules/backups/views.py:146
+#: plinth/modules/backups/views.py:147
msgid "Archive deleted."
msgstr ""
-#: plinth/modules/backups/views.py:159
+#: plinth/modules/backups/views.py:160
msgid "Upload and restore a backup"
msgstr ""
-#: plinth/modules/backups/views.py:194
+#: plinth/modules/backups/views.py:195
msgid "Restored files from backup."
msgstr ""
-#: plinth/modules/backups/views.py:222
+#: plinth/modules/backups/views.py:223
msgid "No backup file found."
msgstr ""
-#: plinth/modules/backups/views.py:230
+#: plinth/modules/backups/views.py:231
msgid "Restore from uploaded file"
msgstr ""
-#: plinth/modules/backups/views.py:289
+#: plinth/modules/backups/views.py:290
msgid "No additional disks available to add a repository."
msgstr ""
-#: plinth/modules/backups/views.py:297
+#: plinth/modules/backups/views.py:298
msgid "Create backup repository"
msgstr ""
-#: plinth/modules/backups/views.py:324
+#: plinth/modules/backups/views.py:325
msgid "Create remote backup repository"
msgstr ""
-#: plinth/modules/backups/views.py:344
+#: plinth/modules/backups/views.py:345
msgid "Added new remote SSH repository."
msgstr ""
-#: plinth/modules/backups/views.py:366
+#: plinth/modules/backups/views.py:367
msgid "Verify SSH hostkey"
msgstr ""
-#: plinth/modules/backups/views.py:392
+#: plinth/modules/backups/views.py:393
msgid "SSH host already verified."
msgstr ""
-#: plinth/modules/backups/views.py:402
+#: plinth/modules/backups/views.py:403
msgid "SSH host verified."
msgstr ""
-#: plinth/modules/backups/views.py:417
+#: plinth/modules/backups/views.py:418
msgid "SSH host public key could not be verified."
msgstr ""
-#: plinth/modules/backups/views.py:419
+#: plinth/modules/backups/views.py:420
msgid "Authentication to remote server failed."
msgstr ""
-#: plinth/modules/backups/views.py:421
+#: plinth/modules/backups/views.py:422
msgid "Error establishing connection to server: {}"
msgstr ""
-#: plinth/modules/backups/views.py:432
+#: plinth/modules/backups/views.py:433
msgid "Repository removed."
msgstr ""
-#: plinth/modules/backups/views.py:446
+#: plinth/modules/backups/views.py:447
msgid "Remove Repository"
msgstr ""
-#: plinth/modules/backups/views.py:455
+#: plinth/modules/backups/views.py:456
msgid "Repository removed. Backups were not deleted."
msgstr ""
-#: plinth/modules/backups/views.py:465
+#: plinth/modules/backups/views.py:466
msgid "Unmounting failed!"
msgstr ""
-#: plinth/modules/backups/views.py:480 plinth/modules/backups/views.py:484
+#: plinth/modules/backups/views.py:481 plinth/modules/backups/views.py:485
msgid "Mounting failed"
msgstr ""
@@ -714,39 +700,39 @@ msgid ""
"the list."
msgstr ""
-#: plinth/modules/bepasty/__init__.py:38 plinth/modules/bepasty/__init__.py:47
+#: plinth/modules/bepasty/__init__.py:36 plinth/modules/bepasty/__init__.py:45
msgid "Read a file, if a web link to the file is available"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:39
+#: plinth/modules/bepasty/__init__.py:37
msgid "Create or upload files"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:40
+#: plinth/modules/bepasty/__init__.py:38
msgid "List all files and their web links"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:41
+#: plinth/modules/bepasty/__init__.py:39
msgid "Delete files"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:42
+#: plinth/modules/bepasty/__init__.py:40
msgid "Administer files: lock/unlock files"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:46
+#: plinth/modules/bepasty/__init__.py:44
msgid "None, password is always required"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:48
+#: plinth/modules/bepasty/__init__.py:46
msgid "List and read all files"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:63 plinth/modules/bepasty/manifest.py:6
+#: plinth/modules/bepasty/__init__.py:61 plinth/modules/bepasty/manifest.py:6
msgid "bepasty"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:65
+#: plinth/modules/bepasty/__init__.py:63
msgid "File & Snippet Sharing"
msgstr ""
@@ -837,16 +823,16 @@ msgstr ""
msgid "Admin"
msgstr ""
-#: plinth/modules/bepasty/views.py:90 plinth/modules/searx/views.py:38
-#: plinth/modules/searx/views.py:49 plinth/modules/tor/views.py:132
-#: plinth/modules/tor/views.py:159 plinth/modules/zoph/views.py:69
+#: plinth/modules/bepasty/views.py:90 plinth/modules/searx/views.py:40
+#: plinth/modules/searx/views.py:51 plinth/modules/tor/views.py:135
+#: plinth/modules/tor/views.py:162 plinth/modules/zoph/views.py:71
msgid "Configuration updated."
msgstr ""
#: plinth/modules/bepasty/views.py:93 plinth/modules/email/views.py:48
-#: plinth/modules/gitweb/views.py:117 plinth/modules/searx/views.py:41
-#: plinth/modules/searx/views.py:52 plinth/modules/tor/views.py:161
-#: plinth/modules/zoph/views.py:72
+#: plinth/modules/gitweb/views.py:119 plinth/modules/searx/views.py:43
+#: plinth/modules/searx/views.py:54 plinth/modules/tor/views.py:164
+#: plinth/modules/zoph/views.py:74
msgid "An error occurred during configuration."
msgstr ""
@@ -876,11 +862,11 @@ msgid ""
"connection from {box_name}."
msgstr ""
-#: plinth/modules/bind/__init__.py:76
+#: plinth/modules/bind/__init__.py:74
msgid "BIND"
msgstr ""
-#: plinth/modules/bind/__init__.py:77
+#: plinth/modules/bind/__init__.py:75
msgid "Domain Name Server"
msgstr ""
@@ -933,11 +919,11 @@ msgid "Refresh IP address and domains"
msgstr ""
#: plinth/modules/bind/views.py:71 plinth/modules/config/views.py:99
-#: plinth/modules/coturn/views.py:39 plinth/modules/deluge/views.py:42
+#: plinth/modules/coturn/views.py:41 plinth/modules/deluge/views.py:42
#: plinth/modules/dynamicdns/views.py:78 plinth/modules/ejabberd/views.py:96
-#: plinth/modules/email/views.py:45 plinth/modules/matrixsynapse/views.py:124
-#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:35
-#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
+#: plinth/modules/email/views.py:45 plinth/modules/matrixsynapse/views.py:126
+#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:37
+#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:29
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:43 plinth/modules/ttrss/views.py:26
#: plinth/modules/wordpress/views.py:37
@@ -967,15 +953,15 @@ msgid ""
"app. All users with access can use all the libraries."
msgstr ""
-#: plinth/modules/calibre/__init__.py:57
+#: plinth/modules/calibre/__init__.py:55
msgid "Use calibre e-book libraries"
msgstr ""
-#: plinth/modules/calibre/__init__.py:60 plinth/modules/calibre/manifest.py:6
+#: plinth/modules/calibre/__init__.py:58 plinth/modules/calibre/manifest.py:6
msgid "calibre"
msgstr ""
-#: plinth/modules/calibre/__init__.py:61
+#: plinth/modules/calibre/__init__.py:59
msgid "E-book Library"
msgstr ""
@@ -1035,20 +1021,20 @@ msgstr ""
msgid "Delete library %(library)s"
msgstr ""
-#: plinth/modules/calibre/views.py:39
+#: plinth/modules/calibre/views.py:41
msgid "Library created."
msgstr ""
-#: plinth/modules/calibre/views.py:50
+#: plinth/modules/calibre/views.py:52
msgid "An error occurred while creating the library."
msgstr ""
-#: plinth/modules/calibre/views.py:64 plinth/modules/gitweb/views.py:138
+#: plinth/modules/calibre/views.py:66 plinth/modules/gitweb/views.py:141
#, python-brace-format
msgid "{name} deleted."
msgstr ""
-#: plinth/modules/calibre/views.py:68 plinth/modules/gitweb/views.py:142
+#: plinth/modules/calibre/views.py:70 plinth/modules/gitweb/views.py:145
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr ""
@@ -1077,12 +1063,12 @@ msgid ""
"belonging to the admin group."
msgstr ""
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr ""
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr ""
@@ -1092,18 +1078,18 @@ msgid ""
"name, webserver home page etc."
msgstr ""
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr ""
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr ""
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1255,11 +1241,11 @@ msgid ""
"be configured with the details provided here."
msgstr ""
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr ""
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr ""
@@ -1281,11 +1267,11 @@ msgid ""
"synchronization with servers on the Internet."
msgstr ""
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr ""
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr ""
@@ -1322,17 +1308,17 @@ msgid ""
"immediately after enabling this service."
msgstr ""
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr ""
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr ""
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr ""
@@ -1350,56 +1336,56 @@ msgid ""
"confirm that applications and services are working as expected."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr ""
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr ""
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
"{memory_available_unit} free. {advice_message}"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr ""
@@ -1477,11 +1463,11 @@ msgid ""
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr ""
@@ -1591,9 +1577,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1669,12 +1657,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr ""
@@ -1767,7 +1755,7 @@ msgstr ""
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1812,19 +1800,19 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr ""
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr ""
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr ""
@@ -1858,7 +1846,7 @@ msgstr ""
msgid "Aliases"
msgstr ""
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr ""
@@ -1939,7 +1927,7 @@ msgid ""
"configured reduces risk of security threat from the Internet."
msgstr ""
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr ""
@@ -2076,15 +2064,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2180,54 +2168,54 @@ msgstr ""
msgid "Delete this repository permanently?"
msgstr ""
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr ""
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr ""
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr ""
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr ""
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
@@ -2505,19 +2493,19 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr ""
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr ""
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr ""
@@ -2570,15 +2558,15 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr ""
@@ -2632,32 +2620,32 @@ msgid ""
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
@@ -2674,11 +2662,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr ""
@@ -2710,11 +2698,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -2734,11 +2722,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr ""
@@ -2760,15 +2748,15 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -2831,36 +2819,36 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, 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:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
@@ -2882,7 +2870,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr ""
@@ -2986,12 +2974,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3052,39 +3040,39 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
msgid "Site name updated"
msgstr ""
@@ -3097,11 +3085,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr ""
@@ -3146,7 +3134,7 @@ msgstr ""
msgid "Address"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3157,15 +3145,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3218,11 +3206,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr ""
@@ -3264,15 +3252,15 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr ""
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3285,7 +3273,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr ""
@@ -3305,27 +3293,22 @@ msgstr ""
msgid "Services"
msgstr ""
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr ""
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr ""
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
@@ -3802,7 +3785,7 @@ msgid "This connection is not active."
msgstr ""
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr ""
@@ -3845,7 +3828,7 @@ msgid "Create Connection"
msgstr ""
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr ""
@@ -3865,13 +3848,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr ""
@@ -3892,7 +3875,7 @@ msgid "Computer"
msgstr ""
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr ""
@@ -3902,13 +3885,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr ""
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
@@ -4091,245 +4074,245 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr ""
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr ""
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr ""
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr ""
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr ""
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr ""
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr ""
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr ""
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr ""
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr ""
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr ""
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr ""
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr ""
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr ""
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr ""
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr ""
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr ""
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr ""
@@ -4344,20 +4327,20 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4465,15 +4448,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr ""
@@ -4579,36 +4562,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -4625,7 +4608,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr ""
@@ -4633,7 +4616,7 @@ msgstr ""
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr ""
@@ -4704,15 +4687,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -4736,11 +4719,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr ""
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr ""
@@ -4765,12 +4748,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -4860,7 +4843,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr ""
@@ -4896,16 +4879,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -4940,15 +4923,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr ""
@@ -5068,15 +5051,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr ""
@@ -5157,7 +5140,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr ""
@@ -5222,12 +5205,12 @@ msgstr ""
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr ""
@@ -5241,11 +5224,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5275,11 +5258,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5308,14 +5291,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr ""
@@ -5363,28 +5346,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -5430,7 +5413,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr ""
@@ -5524,7 +5507,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr ""
@@ -5572,53 +5555,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr ""
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -5630,7 +5613,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -5671,7 +5654,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -5691,104 +5674,104 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -5922,16 +5905,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -5951,40 +5934,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6090,7 +6073,7 @@ msgstr ""
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr ""
@@ -6136,7 +6119,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr ""
@@ -6161,11 +6144,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6186,33 +6169,33 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6290,6 +6273,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6393,15 +6377,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -6966,12 +6950,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr ""
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr ""
@@ -7006,11 +6990,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7044,37 +7028,96 @@ msgstr ""
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, python-brace-format
+msgid "Error: {name}: {exception_message}"
+msgstr ""
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+msgid "Installing app"
+msgstr ""
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, python-brace-format
+msgid "Error installing app: {string} {details}"
+msgstr ""
+
+#: plinth/setup.py:76
+#, python-brace-format
+msgid "Error updating app: {string} {details}"
+msgstr ""
+
+#: plinth/setup.py:82
+#, python-brace-format
+msgid "Error installing app: {error}"
+msgstr ""
+
+#: plinth/setup.py:85
+#, python-brace-format
+msgid "Error updating app: {error}"
+msgstr ""
+
+#: plinth/setup.py:89
+msgid "App installed."
+msgstr ""
+
+#: plinth/setup.py:91
+msgid "App updated"
+msgstr ""
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -7360,6 +7403,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr ""
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr ""
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr ""
@@ -7369,52 +7416,28 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr ""
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr ""
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr ""
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/el/LC_MESSAGES/django.po b/plinth/locale/el/LC_MESSAGES/django.po
index 33bb34ef9..af8952d16 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2022-04-21 09:08+0000\n"
"Last-Translator: Giannis \n"
"Language-Team: Greek από "
"οποιοσδήποτε χρήστης στο {box_name} που ανήκει στην ομάδα διαχειριστών."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Cockpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "Διαχείριση διακομιστή"
@@ -1242,18 +1228,18 @@ msgstr ""
"υπολογιστή, το όνομα διαδικτύου σας, την κεντρική ιστοσελίδα του διακομιστή "
"διαδικτύου κλπ."
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "Γενικές ρυθμίσεις"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "Ρυθμίσετε"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1426,11 +1412,11 @@ msgid ""
"be configured with the details provided here."
msgstr ""
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "Coturn"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr ""
@@ -1456,11 +1442,11 @@ msgstr ""
"Ο διακομιστής ώρας δικτύου είναι ένα πρόγραμμα που διατηρεί την ώρα του "
"συστήματος σε συγχρονισμό με τους διακομιστές στο διαδίκτυο."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "Ημερομηνία και ώρα"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "Η ώρα συγχρονίστηκε με τον διακομιστή NTP"
@@ -1504,17 +1490,17 @@ msgstr ""
"συνδεθείτε και να τον αλλάξετε αμέσως μετά την ενεργοποίηση αυτής της "
"υπηρεσίας."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "Κατεβάστε αρχεία χρησιμοποιώντας εφαρμογές BitTorrent"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "Deluge"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "Πρόγραμμα-πελάτης δικτύου BitTorrent"
@@ -1535,62 +1521,62 @@ msgstr ""
"σύστημά σας για να επιβεβαιώσει ότι οι εφαρμογές και οι υπηρεσίες "
"λειτουργούν όπως αναμένεται."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "Διαγνωστικά"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
#, fuzzy
#| msgid "Quassel"
msgid "passed"
msgstr "Quassel"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
#, fuzzy
#| msgid "Setup failed."
msgid "failed"
msgstr "Η εγκατάσταση απέτυχε."
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr ""
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr ""
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
#, fuzzy
#| msgid "Git"
msgid "GiB"
msgstr "Git"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
"{memory_available_unit} free. {advice_message}"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr ""
@@ -1694,11 +1680,11 @@ msgstr ""
"ανανέωσης στο freedns."
"afraid.org."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "Πελάτης δυναμικού DNS"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr "Δυναμικό όνομα διαδικτύου"
@@ -1837,9 +1823,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1937,12 +1925,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "ejabberd"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "Διακομιστής συνομιλίας"
@@ -2051,7 +2039,7 @@ msgstr "Dino"
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2100,23 +2088,23 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
#, fuzzy
#| msgid "Chat Server"
msgid "Email Server"
msgstr "Διακομιστής συνομιλίας"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
#, fuzzy
#| msgid "Manage Repositories"
msgid "My Email Aliases"
msgstr "Διαχείριση αποθετηρίων"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
#, fuzzy
#| msgid "Manage Repositories"
msgid "Manage Aliases for Mailbox"
@@ -2156,7 +2144,7 @@ msgstr ""
msgid "Aliases"
msgstr "Διαχείριση αποθετηρίων"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr "Roundcube"
@@ -2249,7 +2237,7 @@ msgstr ""
"προστασίας ενεργοποιημένο και η σωστή ρύθμιση παραμέτρων μειώνει τον κίνδυνο "
"απειλών προερχόμενων από το Internet."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "Firewall (τείχος προστασίας)"
@@ -2410,15 +2398,15 @@ msgstr ""
"Για να μάθετε περισσότερα για το git μάθημα git."
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr "Πρόσβαση ανάγνωσης και εγγραφής σε αποθετήρια Git"
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr "Gitweb"
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr "Απλό Hosting Git"
@@ -2524,27 +2512,27 @@ msgstr "Διαγραφή αποθετηρίου Git %(name)s"
msgid "Delete this repository permanently?"
msgstr "Να διαγραφεί μόνιμα αυτό το αποθετήριο;"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr "Το αποθετήριο δημιουργήθηκε."
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr "Παρουσιάστηκε σφάλμα κατά τη δημιουργία του αποθετηρίου."
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr "To αποθετήριο τροποποιήθηκε."
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr "Τροποποίηση αποθετηρίου"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "Boηθητικά έγγραφα"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
#, fuzzy
#| msgid "Manual"
@@ -2552,28 +2540,28 @@ msgctxt "User guide"
msgid "Manual"
msgstr "Εγχειρίδιο"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr "Λάβετε Υποστήριξη"
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr "Υποβάλετε σχόλια"
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "Συνεισφέρετε"
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Σχετικά με"
@@ -2947,19 +2935,19 @@ msgstr ""
"Η πρώτη επίσκεψη στο παρεχόμενο δικτυακό περιβάλλον θα ξεκινήσει τη "
"διαδικασία ρύθμισης."
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr "Διαχείριση εφαρμογής I2P"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr "I2P"
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr "Δίκτυο ανωνυμίας"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr "Διακομιστής μεσολάβησης I2P"
@@ -3035,15 +3023,15 @@ msgstr ""
"\"{users_url}\">ρυθμίσεις μπορεί να γίνει ρύθμιση παραμέτρων χρήστη και "
"να αλλάξετε τα δικαιώματα ή να προσθέσετε νέους χρήστες."
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr "ikiwiki"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr "Wiki και Blog"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr "Προβολή και επεξεργασία εφαρμογών wiki"
@@ -3100,32 +3088,32 @@ msgstr ""
"σχόλια, συμπεριλαμβανομένου του ιστορικού αναθεωρήσεων. Να διαγραφεί "
"οριστικά αυτό το wiki ή το blog;"
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "Δημιουργήθηκε το wiki {name}."
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "Δεν ήταν δυνατή η δημιουργία wiki: {error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "Δημιουργήθηκε το blog {name}."
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "Δεν ήταν δυνατή η δημιουργία ιστολογίου: {error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr "{title} διαγράφηκε."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr "Δεν ήταν δυνατή η διαγραφή του {title}: {error}"
@@ -3148,11 +3136,11 @@ msgstr ""
"επιλέξτε \"σύνδεση στο διακομιστή\" και πληκτρολογήστε το όνομα διαδικτύου "
"σας για το {box_name}."
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr "infinoted"
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr "Gobby Server"
@@ -3186,11 +3174,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -3212,11 +3200,11 @@ msgstr ""
"Το JSXC είναι ένα πρόγραμμα-πελάτης Web για το XMPP Συνήθως χρησιμοποιείται "
"με ένα διακομιστή ΧΜPP που εκτελείται στο ίδιο δίκτυο."
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr "JSXC"
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr "Πρόγραμμα-πελάτης συνομιλίας"
@@ -3250,15 +3238,15 @@ msgstr ""
"letsencrypt.org/repository/\">Συμφωνία Συνδρομητή Lets Encrypt πριν από "
"τη χρήση αυτής της υπηρεσίας."
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr "Let's Encrypt"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "Πιστοποιητικά"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -3323,7 +3311,7 @@ msgstr ""
"Δεν έχουν ρυθμιστεί ονόματα διαδικτύου Ρυθμίσετε "
"όνομα διαδικτύου για να μπορείτε να αποκτήσετε πιστοποιητικά για αυτό."
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
@@ -3332,29 +3320,29 @@ msgstr ""
"Το πιστοποιητικό ακυρώθηκε με επιτυχία για τον όνομα {domain}. Αυτό μπορεί "
"να διαρκέσει λίγα λεπτά για να τεθεί σε ισχύ."
-#: plinth/modules/letsencrypt/views.py:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr "Αποτυχία λήψης πιστοποιητικού για το όνομα {domain} {error}"
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr "Το πιστοποιητικό διαγράφηκε επιτυχώς για το όνομα {domain}"
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr "Αποτυχία διαγραφής πιστοποιητικού για το όνομα {domain}: {error}"
@@ -3384,7 +3372,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr "Matrix Synapse"
@@ -3528,12 +3516,12 @@ msgstr ""
"Όποιος έχει μια διεύθυνση URL για αυτό το wiki μπορεί να το διαβάσει. Μόνο "
"οι χρήστες που είναι συνδεδεμένοι μπορούν να κάνουν αλλαγές στο περιεχόμενο."
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr "Mediawiki"
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr "Wiki"
@@ -3610,11 +3598,11 @@ msgstr ""
"Επιλέξτε μια προκαθορισμένη εμφάνιση για την εγκατάσταση του wiki σας. Οι "
"χρήστες έχουν την επιλογή να επιλέξουν την εμφάνιση που προτιμούν."
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "Ενημερώθηκε ο κωδικός πρόσβασης"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
#, fuzzy
#| msgid "Password used to encrypt data. Must match server password."
msgid "Password update failed. Please choose a stronger password"
@@ -3622,33 +3610,33 @@ msgstr ""
"Κωδικός πρόσβασης που χρησιμοποιείται για την κρυπτογράφηση δεδομένων. "
"Πρέπει να ταιριάζει με τον κωδικό πρόσβασης του διακομιστή."
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr "Η δημόσια εγγραφή ενεργοποιήθηκε"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr "Οι δημόσιες εγγραφές είναι απενεργοποιημένες"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr "Η ιδιωτική λειτουργία είναι ενεργοποιημένη"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr "Η ιδιωτική λειτουργία απενεργοποιήθηκε"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr "Η προεπιλεγμένη εμφάνιση άλλαξε"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Domain name set"
msgid "Domain name updated"
msgstr "To όνομα διαδικτύου ρυθμίστηκε επιτυχώς"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
#, fuzzy
#| msgid "Domain name set"
msgid "Site name updated"
@@ -3668,11 +3656,11 @@ msgstr ""
"συνδεθείτε με το διακομιστή, ένας Minetest πελάτη είναι απαραίτητος."
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr "Minetest"
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr "Μπλοκ Sandbox"
@@ -3726,7 +3714,7 @@ msgstr ""
msgid "Address"
msgstr "Διεύθυνση"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3745,15 +3733,15 @@ msgstr ""
"βίντεο παιχνιδιών (όπως το PS3 και το Xbox 360) ή εφαρμογές όπως το Totem "
"και Kodi."
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr "Διακομιστής ροής πολυμέσων"
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr "Απλός διακομιστής πολυμέσων"
@@ -3821,11 +3809,11 @@ msgstr ""
"href=\"http://mumble.info\"> Πελάτες για να συνδεθείτε με το Mumble από "
"τον υπολογιστή και τις συσκευές Android είναι διαθέσιμες."
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr "Mumble"
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr "Φωνητική συνομιλία"
@@ -3876,17 +3864,17 @@ msgstr "Mumblefly"
msgid "Mumla"
msgstr "Mumla"
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr "Ο κωδικός πρόσβασης SuperUser Ενημερώθηκε με επιτυχία."
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
#, fuzzy
#| msgid "Upload password updated"
msgid "Join password changed"
msgstr "Ο κωδικός πρόσβασης ρυθμίστηκε"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3904,7 +3892,7 @@ msgstr ""
"αν οι υπηρεσίες HTTP, HTTPS και SSH είναι ενεργοποιημένες ή "
"απενεργοποιημένες για εισερχόμενες συνδέσεις μέσω του συγκεκριμένου ονόματος."
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "Υπηρεσίες ονομάτων"
@@ -3926,7 +3914,7 @@ msgstr "Secure Shell"
msgid "Services"
msgstr "Υπηρεσία"
-#: plinth/modules/networks/__init__.py:36
+#: 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."
@@ -3935,7 +3923,7 @@ msgstr ""
"Ethernet, Wi-Fi ή PPPoE. Μοιραστείτε αυτήν τη σύνδεση με άλλες συσκευές στο "
"δίκτυο."
-#: plinth/modules/networks/__init__.py:38
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
@@ -3943,15 +3931,10 @@ msgstr ""
"Οι συσκευές που διαχειρίζονται μέσω άλλων μεθόδων ενδέχεται να μην είναι "
"διαθέσιμες για ρύθμιση παραμέτρων εδώ."
-#: plinth/modules/networks/__init__.py:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "Δίκτυα"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "Χρήση του DNSSEC σε IPv {kind}"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "Τύπος σύνδεσης"
@@ -4456,7 +4439,7 @@ msgid "This connection is not active."
msgstr "Αυτή η σύνδεση δεν είναι ενεργή."
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "Ασφάλεια"
@@ -4506,7 +4489,7 @@ msgid "Create Connection"
msgstr "Δημιουργία σύνδεσης"
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "Διαγραφή σύνδεσης"
@@ -4526,13 +4509,13 @@ msgstr "Διαχωρισμός"
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "Ethernet"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "Wi-Fi"
@@ -4553,7 +4536,7 @@ msgid "Computer"
msgstr "Υπολογιστής"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "Επεξεργασία σύνδεσης"
@@ -4563,13 +4546,13 @@ msgstr "Συνδέσεις"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "Κοντινά δίκτυα Wi-Fi"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "Προσθήκη σύνδεσης"
@@ -4758,301 +4741,301 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
#, fuzzy
#| msgid "Disabled"
msgid "disabled"
msgstr "Απενεργοποιήθηκε"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
#, fuzzy
#| msgid "Automatic"
msgid "automatic"
msgstr "Αυτόματο"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
#, fuzzy
#| msgid "Manual"
msgid "manual"
msgstr "Εγχειρίδιο"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
#, fuzzy
#| msgid "Shared"
msgid "shared"
msgstr "Κοινόχρηστο"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
#, fuzzy
#| msgid "Unavailable Shares"
msgid "unavailable"
msgstr "Με διαθέσιμα μερίσματα"
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
#, fuzzy
#| msgid "cable is connected"
msgid "disconnected"
msgstr "το καλώδιο είναι συνδεδεμένο"
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
#, fuzzy
#| msgid "Sharing"
msgid "preparing"
msgstr "Sharing"
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
#, fuzzy
#| msgid "Connection"
msgid "connecting"
msgstr "Σύνδεση"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "needs authentication"
msgstr "Χρήση βασικού ελέγχου ταυτότητας HTTP"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
#, fuzzy
#| msgid "Deactivate"
msgid "activated"
msgstr "Απενεργοποίηση"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
#, fuzzy
#| msgid "Deactivate"
msgid "deactivating"
msgstr "Απενεργοποίηση"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
#, fuzzy
#| msgid "State reason"
msgid "no reason"
msgstr "Kατάσταση"
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
#, fuzzy
#| msgid "The device is not mounted."
msgid "device is now managed"
msgstr "Η συσκευή δεν είναι τοποθετημένη."
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
#, fuzzy
#| msgid "The device is not mounted."
msgid "device is now unmanaged"
msgstr "Η συσκευή δεν είναι τοποθετημένη."
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
#, fuzzy
#| msgid "configuration file: {file}"
msgid "configuration failed"
msgstr "αρχείο ρυθμίσεων: {file}"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
#, fuzzy
#| msgid "Archive deleted."
msgid "DHCP client failed"
msgstr "Το αρχείο διαγράφηκε."
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
#, fuzzy
#| msgid "The operation failed."
msgid "shared connection service failed"
msgstr "Η ενέργεια απέτυχε."
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
#, fuzzy
#| msgid "The device is already mounted."
msgid "device was removed"
msgstr "Η συσκευή έχει ήδη προστεθεί."
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
#, fuzzy
#| msgid "The device is mounted by another user."
msgid "device disconnected by user"
msgstr "Η συσκευή έχει ήδη προστεθεί από άλλο χρήστη."
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
#, fuzzy
#| msgid "Repository not found"
msgid "Wi-Fi network not found"
msgstr "Το αποθετήριο δεν βρέθηκε"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
#, fuzzy
#| msgid "The operation failed."
msgid "a secondary connection failed"
msgstr "Η ενέργεια απέτυχε."
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
#, fuzzy
#| msgid "Generic"
msgid "generic"
msgstr "Γενικός"
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
#, fuzzy
#| msgid "Interface"
msgid "TUN or TAP interface"
msgstr "Ιnterface"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr "WireGuard"
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
#, fuzzy
#| msgid "Ad-hoc"
msgid "ad-hoc"
msgstr "ad-hoc"
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
#, fuzzy
#| msgid "Infrastructure"
msgid "infrastructure"
msgstr "Υποδομή"
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
#, fuzzy
#| msgid "Access Point"
msgid "access point"
msgstr "Σημείο πρόσβασης"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
#, fuzzy
#| msgid "Access Point"
msgid "mesh point"
msgstr "Σημείο πρόσβασης"
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "Συνδέσεις δικτύου"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr "Δεν είναι δυνατή η εμφάνιση της σύνδεσης: δεν βρέθηκε σύνδεση."
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr "Πληροφορίες σύνδεσης"
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "Δεν είναι δυνατή η επεξεργασία της σύνδεσης: δεν βρέθηκε σύνδεση."
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr "Αυτός ο τύπος σύνδεσης δεν έχει κατανοηθεί ακόμα."
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr "H σύνδεση {name} ενεργοποιήθηκε."
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr "Απέτυχε η ενεργοποίηση της σύνδεσης: η σύνδεση δεν βρέθηκε."
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
"Απέτυχε η ενεργοποίηση της σύνδεσης {name}: δεν υπάρχει διαθέσιμη κατάλληλη "
"συσκευή."
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "Aπενεργοποιήθηκε η σύνδεση {name}."
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr "Απέτυχε η απενεργοποίηση της σύνδεσης: η σύνδεση δεν βρέθηκε."
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr "Προσθήκη νέας γενικής σύνδεσης"
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "Προσθήκη νέας σύνδεσης Ethernet"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "Προσθήκη νέας σύνδεσης PPPoE"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "Προσθήκη νέας σύνδεσης Wi-Fi"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "Η σύνδεση {name} διαγράφηκε."
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr "Απέτυχε η διαγραφή της σύνδεσης: η σύνδεση δεν βρέθηκε."
@@ -5074,22 +5057,22 @@ msgstr ""
"επίσης να αποκτήσετε πρόσβαση στο υπόλοιπο Internet μέσω του {box_name} για "
"πρόσθετη ασφάλεια και ανωνυμία."
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
#, fuzzy
#| msgid "Connection Type"
msgid "Connect to VPN services"
msgstr "Τύπος σύνδεσης"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr "OpenVPN"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr "Εικονικό ιδιωτικό δίκτυο"
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -5224,15 +5207,15 @@ msgstr ""
"παράδειγμα pagekite.net . Στο μέλλον "
"μπορεί να είναι δυνατή η χρήση του {box_name} ενός φίλου σας για αυτό."
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr "PageKite"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr "Δημόσια ορατότητα"
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr "Όνομα διαδικτύου Pagekite"
@@ -5352,30 +5335,30 @@ msgstr ""
"παράδειγμα, HTTPS, στις θύρες εκτός από 443 είναι γνωστό ότι προκαλούν "
"προβλήματα."
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr "Διακομιστής Διαδικτύου (HTTP)"
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
"Η τοποθεσία θα είναι διαθέσιμη στο http://{0} "
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr "Διακομιστής Διαδικτύου (HTTPS)"
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr "Το Site θα είναι διαθέσιμο στο https://{0}"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr "Secure Shell (SSH)"
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
@@ -5384,7 +5367,7 @@ msgstr ""
"\"https://pagekite.net/wiki/Howto/SshOverPageKite/\">Οδηγίες"
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -5401,7 +5384,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr ""
@@ -5409,7 +5392,7 @@ msgstr ""
msgid "Restart or shut down the system."
msgstr "Επανεκκίνηση ή κλείσιμο του συστήματος."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "Ισχύς"
@@ -5511,15 +5494,15 @@ msgstr ""
"\"http://config.privoxy.org\">http://config.privoxy.org/ ή http://p.p."
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr "Privoxy"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr "Διακομιστής μεσολάβησης διαδικτύου"
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -5556,11 +5539,11 @@ msgstr ""
"\">υπολογιστή και κινητό είναι διαθέσιμοι."
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr "Πελάτης IRC"
@@ -5599,12 +5582,12 @@ msgstr ""
"γεγονότων ή επαφών, το οποίο πρέπει να γίνει χρησιμοποιώντας ένα ξεχωριστό "
"πελάτη."
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr "Radicale"
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr "Ημερολόγιο και βιβλίο διευθύνσεων"
@@ -5743,7 +5726,7 @@ msgstr ""
"settings/security/lesssecureapps\">https://www.google.com/settings/security/"
"lesssecureapps )."
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr "Πρόγραμμα-πελάτης ηλεκτρονικού ταχυδρομείου"
@@ -5784,16 +5767,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr "Διαβάστε και εγγραφείτε τροφοδοσίες ειδήσεων"
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5840,15 +5823,15 @@ msgstr ""
"Οικιακό μέρισμα - κάθε χρήστης στην ομάδα freedombox-share μπορεί να έχει το "
"δικό του προσωπικό διαμέρισμα στο δίσκο."
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr "Πρόσβαση στα ιδιωτικά μερίσματα"
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr "Samba"
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
#, fuzzy
#| msgid "Distributed File Storage"
msgid "Network File Storage"
@@ -6003,15 +5986,15 @@ msgstr ""
"δημιουργία προφίλ χρήστη από τις μηχανές αναζήτησης. Δεν αποθηκεύει cookies "
"από προεπιλογή."
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr "Αναζήτηση στο διαδίκτυο"
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr "Searx"
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr "Διαδικτυακή αναζήτηση"
@@ -6103,7 +6086,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr "Αναφορά ασφαλείας"
@@ -6180,12 +6163,12 @@ msgstr "Όχι"
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Σφάλμα κατά τη ρύθμιση περιορισμένης πρόσβασης: {exception}"
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr "Ενημερώθηκαν οι ρυθμίσεις παραμέτρων ασφαλείας"
@@ -6210,11 +6193,11 @@ msgstr ""
"Σημειώστε ότι το Shaarli υποστηρίζει μόνο ένα λογαριασμό χρήστη, το οποίο θα "
"πρέπει να ρυθμίσετε την αρχική επίσκεψη."
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "Shaarli"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr "Σελιδοδείκτες"
@@ -6258,11 +6241,11 @@ msgstr ""
"την εφαρμογή που επιθυμείτε στη διεύθυνση του freedomox http: // "
"freedombox_address: 1080 /"
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr "Shadowsocks"
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr "Διακομιστής μεσολάβησης τύπου socks5"
@@ -6294,7 +6277,7 @@ msgid "Encryption method. Must match setting on server."
msgstr ""
"Μέθοδος κρυπτογράφησης. Πρέπει να ταιριάζει με τη ρύθμιση στο διακομιστή."
-#: plinth/modules/sharing/__init__.py:20
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -6303,7 +6286,7 @@ msgstr ""
"To Sharing σάς επιτρέπει να μοιράζεστε αρχεία και φακέλους στο {box_name} "
"μέσω του διαδικτύου με επιλεγμένες ομάδες χρηστών."
-#: plinth/modules/sharing/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr "Κοινή χρήση"
@@ -6361,28 +6344,28 @@ msgstr ""
"Τα μερίσματα θα πρέπει να είναι είτε δημόσια είτε να μοιράζονται με "
"τουλάχιστον μία ομάδα"
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr "Προσθήκη μερίσματος"
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr "Δεν έχουν ρυθμιστεί μερίσματα."
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr "Moνοπάτι Δίσκου"
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr "Μοιράζεται με"
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr "Με ομάδες"
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr "δημόσια πρόσβαση"
@@ -6439,7 +6422,7 @@ msgstr ""
"τα αντίγραφα ασφαλείας επειδή "
"μπορούν να αποθηκευτούν μόνο στο ίδιο διαμέρισμα του δίσκου. "
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr "Στιγμιότυπα συστήματος αρχείων"
@@ -6548,7 +6531,7 @@ msgstr "Ημερομηνία"
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr "Διαγραφή στιγμιότυπων"
@@ -6606,58 +6589,58 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr "Επαναφορά στο στιγμιότυπο #%(number)s"
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
#, fuzzy
#| msgid "Repository created."
msgid "manually created"
msgstr "Το αποθετήριο δημιουργήθηκε."
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr "Διαχείριση στιγμιότυπων"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr "Το στιγμιότυπο δημιουργήθηκε."
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr "Η ρύθμιση παραμέτρων των στιγμιότυπων αποθήκευσης Ενημερώθηκε"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Σφάλμα ενέργειας: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr "Διαγράφηκαν επιλεγμένα στιγμιότυπα"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
"Το στιγμιότυπο χρησιμοποιείται αυτήν τη στιγμή. Παρακαλώ προσπαθήστε ξανά "
"αργότερα."
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "Πραγματοποιήθηκε επαναφορά στο στιγμιότυπο #{number}."
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
"Πρέπει να γίνει επανεκκίνηση του συστήματος για να ολοκληρωθεί η επαναφορά."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr "Επαναφορά σε στιγμιότυπο"
@@ -6674,7 +6657,7 @@ msgstr ""
"αντιγράψει αρχεία ή να εκτελέσει άλλες υπηρεσίες χρησιμοποιώντας αυτές τις "
"συνδέσεις."
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr "Διακομιστής SSH"
@@ -6721,7 +6704,7 @@ msgstr "Έλεγχος ταυτότητας SSH με κωδικό πρόσβασ
msgid "SSH authentication with password enabled."
msgstr "Έλεγχος ταυτότητας SSH με κωδικό πρόσβασης ενεργοποιήθηκε."
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr "Ενιαία είσοδος"
@@ -6747,92 +6730,92 @@ msgstr ""
"χρησιμοποιούνται προς το παρόν, να προσθέσετε και να αφαιρέσετε αφαιρούμενα "
"μέσα, επεκτείνετε το root διαμέρισμα κλπ."
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr "Χώρος Αποθήκευσης"
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} bytes"
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr "Η ενέργεια απέτυχε."
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr "Η ενέργεια ακυρώθηκε."
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr "Η συσκευή είναι ήδη προς αφαίρεση."
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr "Η ενέργεια δεν υποστηρίζεται λόγω μη υποστήριξης προγραμματος οδηγού."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr "Η ενέργεια απέτυχε επειδή διήρκησε πολύ χρόνο."
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
"Η ενέργεια θα ξυπνήσει ένα δίσκο που είναι σε μια βαθιά κατάσταση ύπνου."
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr "Γίνεται προσπάθεια αφαίρεσης μιας συσκευής που είναι απασχολημένη."
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr "Η ενέργια έχει ήδη ακυρωθεί."
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr "Δεν έχετε εξουσιοδότηση για την εκτέλεση της συγκεκριμένης ενέργειας."
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr "Η συσκευή έχει ήδη προστεθεί."
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr "Η συσκευή δεν είναι τοποθετημένη."
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr "Δεν έχετε εξουσιοδότηση για την εκτέλεση της συγκεκριμένης ενέργειας."
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr "Η συσκευή έχει ήδη προστεθεί από άλλο χρήστη."
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, fuzzy, no-python-format, python-brace-format
#| msgid ""
#| "Warning: Low space on system partition ({percent_used}% used, "
@@ -6842,15 +6825,15 @@ msgstr ""
"Προειδοποίηση: χαμηλός χώρος στο διαμέρισμα του συστήματος ({percent_used}% "
"χρησιμοποιείται, {free_space} είναι ελεύθερος)."
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -7009,16 +6992,16 @@ msgstr ""
"{box_name} είναι διαθέσιμη μόνο για χρήστες που ανήκουν στην ομάδα \"admin"
"\" (διαχειριστών)."
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr "Διαχειριστείτε την εφαρμογή Syncthing"
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr "Syncthing"
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr "Συγχρονισμός αρχείων"
@@ -7044,40 +7027,40 @@ msgid ""
"TCP port 9050."
msgstr "Μια θύρα Tor SOCKS είναι διαθέσιμη στη θύρα 9050 του %(box_name)s σας."
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr "Tor"
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr "Υπηρεσία κρεμυδιού Tor"
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr "Tor διακομιστής μεσολάβησης τύπου socks5"
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr "Γέφυρα/μεσολαβητής Tor"
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr "Θύρα μεσολαβητή Tor διαθέσιμη"
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr "Obfs3 μεταφορά καταχωρήθηκε"
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr "Obfs4 μεταφορά καταχωρήθηκε"
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr "Πρόσβαση στη διεύθυνση URL {url} με tcp {kind} μέσω του Tor"
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Επιβεβαίωση χρήσης του Tor στο {url} στο προτόκολλο TCP {kind}"
@@ -7208,7 +7191,7 @@ msgstr "Υπηρεσία κρεμμυδιού"
msgid "Ports"
msgstr "Θύρες"
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "Οι ρυθμίσεις δεν άλλαξαν"
@@ -7263,7 +7246,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr "Transmission"
@@ -7304,11 +7287,11 @@ msgstr ""
"Tiny Tiny RSS, χρησιμοποιήστε τη διεύθυνση URL /tt-rss-app για τη σύνδεση."
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr "Tiny Tiny RSS"
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr "Αναγνώστης ειδήσεων"
@@ -7330,8 +7313,8 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
#, fuzzy
@@ -7339,30 +7322,30 @@ msgstr ""
msgid "Software Update"
msgstr "Το μέρισμα διαγράφηκε."
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
#, fuzzy
#| msgid "FreedomBox Foundation"
msgid "FreedomBox Updated"
msgstr "Ίδρυμα FreedomBox"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
#, fuzzy
#| msgid "Automatic upgrades disabled"
msgid "Distribution update started"
msgstr "Oι αυτόματες ενημερώσεις απενεργοποιήθηκαν"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -7460,6 +7443,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr "Κλείσιμο"
@@ -7597,15 +7581,15 @@ msgstr ""
"σελίδα. Ωστόσο, μόνο οι χρήστες της ομάδας admin μπορούν να "
"τροποποιήσουν τις εφαρμογές ή τις ρυθμίσεις του συστήματος."
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr "Χρήστες και ομάδες"
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr "Πρόσβαση σε όλες τις υπηρεσίες και τις ρυθμίσεις συστήματος"
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Ελέγξτε την καταχώρηση LDAP \"{search_item}\""
@@ -8272,14 +8256,14 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
#, fuzzy
#| msgid "Address"
msgid "WordPress"
msgstr "Διεύθυνση"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
#, fuzzy
#| msgid "Wiki and Blog"
msgid "Website and Blog"
@@ -8318,11 +8302,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -8358,37 +8342,109 @@ msgstr "PPPoE"
msgid "Generic"
msgstr "Γενικός"
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Σφάλμα κατά τη ρύθμιση του ονόματος του υπολογιστή: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr "Σφάλμα κατά την εγκατάσταση"
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr "Εγκαθίσταται"
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr "Λήψη"
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr "Αλλαγή μέσου"
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr "αρχείο ρυθμίσεων: {file}"
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "Εγκαταστήσετε Εφαρμογές"
+
+#: plinth/setup.py:46
+#, fuzzy
+#| msgid "Updating..."
+msgid "Updating app"
+msgstr "Eνημερώνεται..."
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Σφάλμα κατά την εγκατάσταση της εφαρμογής: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Σφάλμα κατά την εγκατάσταση της εφαρμογής: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Σφάλμα κατά την εγκατάσταση της εφαρμογής: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Σφάλμα κατά την εγκατάσταση της εφαρμογής: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Η εφαρμογή εγκαταστάθηκε."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "Τελευταία ενημέρωση"
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Απαγορεύεται"
@@ -8733,6 +8789,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr "Ρύθμιση του %(box_name)s"
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Η εφαρμογή εγκαταστάθηκε."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr "Να εγκατασταθεί αυτή η εφαρμογή;"
@@ -8742,59 +8802,58 @@ msgid "This application needs an update. Update now?"
msgstr "Αυτή η εφαρμογή χρειάζεται μια ενημέρωση. Ενημέρωση τώρα?"
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-"Εκτελείται ήδη μια άλλη εγκατάσταση ή αναβάθμιση. Παρακαλώ περιμένετε λίγα "
-"λεπτά πριν προσπαθήσετε ξανά."
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
"Αυτή η εφαρμογή δεν είναι αυτή τη στιγμή διαθέσιμη στο λειτουργικό σας."
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr "Εγκατάσταση"
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr "Ενημερωμένη έκδοση"
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr "Εκτελείται διαδικασία πριν από την εγκατάσταση"
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr "Εκτέλεση διαδικασία μετά την εγκατάσταση"
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr "Εγκατάσταση του %(package_names)s: %(status)s"
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "ολοκληρώθηκε το %(percentage)s%%"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr "Gujarati"
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "Χρήση του DNSSEC σε IPv {kind}"
+
+#~ msgid ""
+#~ "Another installation or upgrade is already running. Please wait for a few "
+#~ "moments before trying again."
+#~ msgstr ""
+#~ "Εκτελείται ήδη μια άλλη εγκατάσταση ή αναβάθμιση. Παρακαλώ περιμένετε "
+#~ "λίγα λεπτά πριν προσπαθήσετε ξανά."
+
+#~ msgid "Performing pre-install operation"
+#~ msgstr "Εκτελείται διαδικασία πριν από την εγκατάσταση"
+
+#~ msgid "Performing post-install operation"
+#~ msgstr "Εκτέλεση διαδικασία μετά την εγκατάσταση"
+
+#, python-format
+#~ msgid "Installing %(package_names)s: %(status)s"
+#~ msgstr "Εγκατάσταση του %(package_names)s: %(status)s"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "ολοκληρώθηκε το %(percentage)s%%"
+
#~ 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."
diff --git a/plinth/locale/es/LC_MESSAGES/django.po b/plinth/locale/es/LC_MESSAGES/django.po
index 59bc8cf7b..c9d4b98a9 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2022-03-10 22:59+0000\n"
"Last-Translator: Nathaniel Ramos Alexander \n"
"Language-Team: Spanish calibre podrán acceder a la app. Todos "
"los usuarios con acceso pueden usar todas las bibliotecas."
-#: plinth/modules/calibre/__init__.py:57
+#: plinth/modules/calibre/__init__.py:55
msgid "Use calibre e-book libraries"
msgstr "Usar bibliotecas Calibre"
-#: plinth/modules/calibre/__init__.py:60 plinth/modules/calibre/manifest.py:6
+#: plinth/modules/calibre/__init__.py:58 plinth/modules/calibre/manifest.py:6
msgid "calibre"
msgstr "Calibre"
-#: plinth/modules/calibre/__init__.py:61
+#: plinth/modules/calibre/__init__.py:59
msgid "E-book Library"
msgstr "Biblioteca de libros electrónicos"
@@ -1144,20 +1130,20 @@ msgstr "Ir a biblioteca %(library)s"
msgid "Delete library %(library)s"
msgstr "Eliminar biblioteca %(library)s"
-#: plinth/modules/calibre/views.py:39
+#: plinth/modules/calibre/views.py:41
msgid "Library created."
msgstr "Biblioteca creada."
-#: plinth/modules/calibre/views.py:50
+#: plinth/modules/calibre/views.py:52
msgid "An error occurred while creating the library."
msgstr "Ha habido un error al crear la biblioteca."
-#: plinth/modules/calibre/views.py:64 plinth/modules/gitweb/views.py:138
+#: plinth/modules/calibre/views.py:66 plinth/modules/gitweb/views.py:141
#, python-brace-format
msgid "{name} deleted."
msgstr "{name} eliminado."
-#: plinth/modules/calibre/views.py:68 plinth/modules/gitweb/views.py:142
+#: plinth/modules/calibre/views.py:70 plinth/modules/gitweb/views.py:145
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr "No se pudo eliminar {name}: {error}"
@@ -1196,12 +1182,12 @@ msgstr ""
"Puede acceder cualquier usuario/a en {box_name} "
"que pertenezca al grupo «admin»."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Cockpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "Administración del servidor"
@@ -1213,18 +1199,18 @@ msgstr ""
"Opciones de configuración general como el nombre del host, el del dominio, "
"la página de inicio del servidor web, etc."
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "Configuración general"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "Configurar"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1404,11 +1390,11 @@ msgstr ""
"\"{e_url}\">ejabberd tienen que configurarse con los detalles que se "
"proporcionan aquí."
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "Coturn"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr "Asistente VoIP"
@@ -1434,11 +1420,11 @@ msgstr ""
"El servidor de tiempo de red (servicio NTP) mantiene sincronizada la hora "
"del sistema con servidores de Internet."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "Fecha y hora"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "Hora sincronizada con el servidor NTP"
@@ -1479,17 +1465,17 @@ msgstr ""
"La clave de acceso por defecto es 'deluge' pero es muy recomendable que nada "
"más activar el servicio acceda al mismo y la cambie."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "Descargar archivos usando aplicaciones BitTorrent"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "Deluge"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "Cliente web de BitTorrent"
@@ -1509,50 +1495,50 @@ msgstr ""
"El test de diagnóstico del sistema ejecuta una serie de comprobaciones para "
"confirmar que las aplicaciones y servicios están funcionando como se espera."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "Diagnósticos"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr "ok."
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr "Falló"
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr "error"
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr "aviso"
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr "MiB"
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr "GiB"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
"Habría que deshabilitar algunas apps para reducir el consumo de memoria."
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr "Hay que evitar instalar más apps en este sistema."
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
@@ -1561,7 +1547,7 @@ msgstr ""
"El sistema va justo de memoria: {percent_used}% usada, {memory_available} "
"{memory_available_unit} libres. {advice_message}"
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr "Poca memoria libre"
@@ -1663,11 +1649,11 @@ msgstr ""
"actualización en freedns.afraid.org."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "Cliente de DNS dinámico"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr "Nombre de dominio dinámico"
@@ -1801,9 +1787,11 @@ msgid "This field is required."
msgstr "se requieren secretos"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1897,12 +1885,12 @@ msgstr ""
"Instalar la app Coturn o configurar un servidor "
"externo."
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "ejabberd"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "Servidor de Chat"
@@ -2011,7 +1999,7 @@ msgstr "Dino"
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2072,19 +2060,19 @@ msgstr ""
"Durante la instalación se desinstalará cualquier otro servidor de correo "
"electrónico que haya en el sistema."
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr "Postfix/Dovecot"
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr "Servidor de correo electrónico"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr "Mis alias de correo electrónico"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr "Administrar Alias para el buzón de correo electronico"
@@ -2120,7 +2108,7 @@ msgstr "No puede ser un número"
msgid "Aliases"
msgstr "Alias"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr "Roundcube"
@@ -2206,7 +2194,7 @@ msgstr ""
"de su {box_name}. Mantenerlo activado y correctamente configurado reduce el "
"riesgo de amenazas de seguridad desde Internet."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "Cortafuegos"
@@ -2368,15 +2356,15 @@ msgstr ""
"Para aprender más acerca de cómo usar Git visita el tutorial de Git."
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr "Acceso de lectura y escritura para repositorios Git"
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr "Gitweb"
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr "Alojamiento simple para Git"
@@ -2473,54 +2461,54 @@ msgstr "Borrar Repositorio Git %(name)s"
msgid "Delete this repository permanently?"
msgstr "¿Eliminar este repositorio definitivamente?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr "Repositorio creado."
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr "Ha habido un error al crear el repositorio."
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr "Repositorio editado."
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr "Editar repositorio"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "Documentación"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr "Manual"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr "Obtener ayuda"
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr "Enviar Comentarios"
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "Contribuír"
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Acerca de"
@@ -2874,19 +2862,19 @@ msgstr ""
"La primer visita a la interfaz web provista iniciará el proceso de "
"configuración."
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr "Administrar la aplicación I2P"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr "I2P"
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr "Red anónima"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr "Proxy I2P"
@@ -2961,15 +2949,15 @@ msgstr ""
"\"{users_url}\">configuración de usuarios puede modificar estos permisos "
"o añadir nuevos usuarios."
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr "ikiwiki"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr "Wiki y Blog"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr "Aplicaciones wiki para ver y editar"
@@ -3025,32 +3013,32 @@ msgstr ""
"Esta acción borrará todas las entradas, páginas y comentarios incluido el "
"historial. ¿Eliminar este wiki o blog definitivamente?"
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "Wiki {name} creado."
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "No se pudo crear el wiki: {error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "Blog {name} creado."
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "No se pudo crear el blog: {error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr "{title} eliminado."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr "No se pudo eliminar {title}: {error}"
@@ -3071,11 +3059,11 @@ msgstr ""
"seleccione \"Conectar al servidor\" e introduzca el nombre de dominio de su "
"{box_name}."
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr "infinoted"
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr "Servidor Gobby"
@@ -3109,11 +3097,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -3135,11 +3123,11 @@ msgstr ""
"JSXC es un cliente web para XMPP. Se usa habitualmente con un servidor XMPP "
"local."
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr "JSXC"
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr "Cliente de Chat"
@@ -3171,15 +3159,15 @@ msgstr ""
"letsencrypt.org/repository/\">Acuerdo de suscripción de Let's Encrypt "
"antes de usar este servicio."
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr "Let's Encrypt"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "Certificados"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr "No puedo probar: No hay dominios configurados."
@@ -3244,7 +3232,7 @@ msgstr ""
"No se ha configurado ningún dominio. Configure "
"alguno para poder asignarle un certificado."
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
@@ -3253,29 +3241,29 @@ msgstr ""
"El certificado para el dominio {domain} ha sido revocado con éxito. "
"Necesitará unos momentos para tener efecto."
-#: plinth/modules/letsencrypt/views.py:47
+#: plinth/modules/letsencrypt/views.py:49
#, python-brace-format
msgid "Failed to revoke certificate for domain {domain}: {error}"
msgstr "Falló la revocación del certificado para el dominio {domain}: {error}"
-#: plinth/modules/letsencrypt/views.py:60
-#: plinth/modules/letsencrypt/views.py:77
+#: plinth/modules/letsencrypt/views.py:62
+#: plinth/modules/letsencrypt/views.py:79
#, python-brace-format
msgid "Certificate successfully obtained for domain {domain}"
msgstr "Se ha obtenido con éxito el certificado para el dominio {domain}"
-#: plinth/modules/letsencrypt/views.py:65
-#: plinth/modules/letsencrypt/views.py:82
+#: plinth/modules/letsencrypt/views.py:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr "Falló la obtención del certificado para el dominio {domain}: {error}"
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr "El certificado para el dominio {domain} ha sido eliminado con éxito"
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr "Falló la eliminación del certificado para el dominio {domain}: {error}"
@@ -3307,7 +3295,7 @@ msgstr ""
"Instalar la app Coturn o configurar un servidor "
"externo."
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr "Matrix Synapse"
@@ -3448,12 +3436,12 @@ msgstr ""
"Cualquiera con acceso a este wiki puede leerlo, pero solo quien se "
"autentique en el sistema podrá modificar el contenido."
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr "MediaWiki"
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr "Wiki"
@@ -3535,43 +3523,43 @@ msgstr ""
"Elija un tema por defecto para su instalación de MediaWiki. Los usuarios "
"podrán elegir su propio tema."
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "Clave actualizada"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
#, fuzzy
#| msgid "Password used to encrypt data. Must match server password."
msgid "Password update failed. Please choose a stronger password"
msgstr "Clave para cifrar los datos. Debe coincidir con la clave del servidor."
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr "Habilitado el registro público"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr "Inhabilitado el registro público"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr "Activado el modo privado"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr "Desactivado el modo privado"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr "Tema por defecto cambiado"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Domain name set"
msgid "Domain name updated"
msgstr "Asignar nombre de dominio"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
#, fuzzy
#| msgid "Domain name set"
msgid "Site name updated"
@@ -3590,11 +3578,11 @@ msgstr ""
"defecto (30000). Para acceder al servidor necesitará un Cliente Minetest."
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr "Minetest"
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr "Sandbox de bloques"
@@ -3647,7 +3635,7 @@ msgstr ""
msgid "Address"
msgstr "Dirección"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3664,15 +3652,15 @@ msgstr ""
"reproductores portátiles, teléfonos móviles, televisores, consolas como PS3 "
"y Xbox o aplicaciones como Totem y Kodi."
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr "Servidor de emisión multimedia"
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr "MiniDLNA"
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr "Servidor multimedia básico"
@@ -3739,11 +3727,11 @@ msgstr ""
"disponibles Clientes para conectar desde "
"sus dispositivos de escritorio o Android."
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr "Mumble"
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr "Chat de voz"
@@ -3793,17 +3781,17 @@ msgstr "Mumblefly"
msgid "Mumla"
msgstr "Mumla"
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr "Clave de administración cambiada con éxito."
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
#, fuzzy
#| msgid "Upload password updated"
msgid "Join password changed"
msgstr "Clave para compartir actualizada"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3820,7 +3808,7 @@ msgstr ""
"servicio de Tor onion. Para cada tipo de nombre se muestra si los servicios "
"HTTP, HTTPS y SSH están activos o no para las conexiones entrantes."
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "Servicios de nombres"
@@ -3840,7 +3828,7 @@ msgstr "Intérprete de órdenes seguro"
msgid "Services"
msgstr "Servicios"
-#: plinth/modules/networks/__init__.py:36
+#: 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."
@@ -3848,7 +3836,7 @@ msgstr ""
"Configurar dispositivos de red. Conectar con Internet mediante Ethernet, Wi-"
"Fi o PPPoE. Compartir esa conexión con otros dispositivos de la red."
-#: plinth/modules/networks/__init__.py:38
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
@@ -3856,15 +3844,10 @@ msgstr ""
"Los dispositivos administrados mediante otros métodos quizá no estén "
"disponibles para configurarse aquí."
-#: plinth/modules/networks/__init__.py:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "Redes"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "DNSSEC en uso sobre IPv{kind}"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "Tipo de conexión"
@@ -4425,7 +4408,7 @@ msgid "This connection is not active."
msgstr "Esta conexión no está activa."
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "Protección"
@@ -4476,7 +4459,7 @@ msgid "Create Connection"
msgstr "Crear conexión"
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "Eliminar conexión"
@@ -4496,13 +4479,13 @@ msgstr "Espaciado"
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "Ethernet"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "Wi-Fi"
@@ -4523,7 +4506,7 @@ msgid "Computer"
msgstr "Ordenador"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "Editar conexión"
@@ -4533,13 +4516,13 @@ msgstr "Conexiones"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "Redes Wi-Fi cercanas"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "Añadir conexión"
@@ -4763,247 +4746,247 @@ msgstr ""
"Internet el manual de su modelo de router, que le proporcionará las "
"instrucciones necesarias sobre cómo hacerlo."
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr "desactivada"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr "automática"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr "manual"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr "compartida"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr "enlace-local"
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr "desconocido"
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr "no gestionada"
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr "indisponible"
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr "conectado"
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr "preparando"
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr "conectando"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr "necesita autenticación"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr "solicitando dirección"
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr "comprobando"
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr "esperando al secundario"
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr "activada"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr "desactivando"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr "sin motivo"
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr "fallo desconocido"
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr "el dispositivo está hora gestionado"
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr "el dispositivo ahora no está gestionado"
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr "falló la configuración"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr "se requieren secretos"
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr "Fallo iniciando el cliente DHCP"
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr "Error en cliente DHCP"
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr "falló el cliente DHCP"
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr "fallo al iniciar el servicio de conexión compartida"
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr "falló el servicio de conexión compartida"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr "Se eliminó el dispositivo"
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr "dispositivo desconectado por el usuario"
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr "falló una dependencia de la conexión"
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr "Red Wi-Fi no encontrada"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr "falló una conexión secundaria"
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr "encolada la activación de la nueva conexión"
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr "se detectó una dirección IP duplicada"
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr "el método IP seleccionado no está soportado"
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr "genérica"
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr "interfaz TUN o TAP"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr "WireGuard"
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr "ad-hoc"
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr "infraestructura"
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr "punto de acceso"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr "punto de acceso a la red mesh"
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "Conexiones de red"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr "No se puede mostrar la conexión: no se encontró."
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr "Información de la conexión"
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "No se puede editar la conexión: no se encontró."
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr "Este tipo de conexión no está aún soportada."
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr "Activar conexión {name}."
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr "Ha fallado la activación de la conexión: no se encontró."
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, 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/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "Conexión {name} desactivada."
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
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/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr "Añadir nueva conexión genérica"
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "Añadir nueva conexión Ethernet"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "Añadir nueva conexión PPPoE"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "Añadir nueva conexión Wi-Fi"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "Conexión {name} eliminada."
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr "Ha fallado la eliminación de la conexión: no se encontró."
@@ -5024,20 +5007,20 @@ 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:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr "Conectar a servicios VPN"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr "OpenVPN"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr "Red privada virtual"
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -5176,15 +5159,15 @@ 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:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr "PageKite"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr "Visibilidad pública"
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr "Dominio PageKite"
@@ -5298,29 +5281,29 @@ msgstr ""
"Por ejemplo, se sabe que HTTPS en un puerto distinto de 443 causará "
"problemas."
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr "Servidor Web (HTTP)"
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr "El sitio estará disponible en http://{0}"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr "Servidor web seguro (HTTPS)"
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr "El sitio estará disponible en https://{0}"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr "Intérprete de órdenes seguro (SSH)"
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
@@ -5329,7 +5312,7 @@ msgstr ""
"\">instrucciones para la configuración del cliente SSH"
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr "Rendimiento"
@@ -5351,7 +5334,7 @@ msgstr ""
"Las métricas de rendimiento las recolecta Performance Co-Pilot y se pueden "
"ver empleando la app Cockpit."
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr "Monitorización del sistema"
@@ -5359,7 +5342,7 @@ msgstr "Monitorización del sistema"
msgid "Restart or shut down the system."
msgstr "Reiniciar o apagar el sistema."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "Apagar / Reiniciar"
@@ -5455,15 +5438,15 @@ msgstr ""
"documentación en http://config.privoxy."
"org/ o http://p.p."
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr "Privoxy"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr "Proxy Web"
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr "Acceso a {url} con proxy {proxy} en tcp {kind}"
@@ -5497,11 +5480,11 @@ msgstr ""
"quassel-irc.org/downloads\">escritorio y móvil."
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr "Cliente IRC"
@@ -5534,12 +5517,12 @@ msgstr ""
"de nuevos calendarios y agendas. No soporta añadir eventos o contactos, que "
"debe hacerse usando un cliente separado."
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr "Radicale"
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr "Calendario y Contactos"
@@ -5658,7 +5641,7 @@ msgstr ""
"google.com/settings/security/lesssecureapps\">https://www.google.com/"
"settings/security/lesssecureapps)."
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr "Cliente de correo"
@@ -5702,18 +5685,18 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr "Leer y suscribirse a nuevos agregadores"
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
#, fuzzy
#| msgid "Bridge"
msgid "RSS-Bridge"
msgstr "Puente"
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5758,15 +5741,15 @@ msgstr ""
"Compartir en mi cuenta - todos los miembros del grupo freedombox-share "
"disponen de un espacio privado propio."
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr "Acceso a los elementos compartidos privados"
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr "Samba"
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr "Sistema de archivos en red"
@@ -5901,15 +5884,15 @@ 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:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr "Buscar en la web"
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr "Searx"
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr "Buscador web"
@@ -6005,7 +5988,7 @@ msgstr ""
"contribuyentes a Debian y de la comunidad de %(box_name)s."
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr "Informe de Seguridad"
@@ -6085,12 +6068,12 @@ msgstr "No"
msgid "Not running"
msgstr "No se está ejecutando"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Error al definir el acceso restringido: {exception}"
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr "Configuración de seguridad actualizada"
@@ -6106,11 +6089,11 @@ msgstr ""
"Note que Shaarli solo soporta una cuenta de usuaria/o, que debe configurar "
"en el primer acceso."
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "Shaarli"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr "Marcadores"
@@ -6151,11 +6134,11 @@ 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/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr "Shadowsocks"
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr "Proxy Socks5"
@@ -6184,7 +6167,7 @@ msgstr "Clave para cifrar los datos. Debe coincidir con la clave del servidor."
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:20
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -6193,7 +6176,7 @@ msgstr ""
"Permite compartir a través de la web archivos y carpetas en su {box_name} "
"con otras personas."
-#: plinth/modules/sharing/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr "Compartir"
@@ -6249,28 +6232,28 @@ msgstr ""
"Las carpetas compartidas deben ser públicas o estar compartidas con al menos "
"un grupo"
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr "Añadir compartición"
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr "Actualmente no hay comparticiones configuradas."
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr "Ruta de acceso en disco"
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr "Compartido por"
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr "Con los grupos"
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr "Acceso público"
@@ -6327,7 +6310,7 @@ msgstr ""
"plinth/sys/backups\">las copias de seguridad ya que se almacenan en la "
"misma partición. "
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr "Instantáneas"
@@ -6433,7 +6416,7 @@ msgstr "Fecha"
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr "Eliminar instantáneas"
@@ -6486,54 +6469,54 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr "Restaurar a instantánea %(number)s"
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr "creada a mano"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr "linea de tiempo"
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr "APT"
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr "Gestionar instantáneas"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr "Instantánea creada."
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr "Configuración de instantáneas actualizada"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Acción de error: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr "Las instantáneas seleccionadas fueron eliminadas"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
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:211
#, 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:214
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:226
msgid "Rollback to Snapshot"
msgstr "Restaurar a instantánea"
@@ -6549,7 +6532,7 @@ msgstr ""
"realizar tareas de administración, copiar archivos o ejecutar otros "
"servicios a través de esas conexiones."
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr "Servidor de intérprete de órdenes seguro (SSH)"
@@ -6595,7 +6578,7 @@ msgstr "Acceso SSH con clave desactivado."
msgid "SSH authentication with password enabled."
msgstr "Acceso SSH con clave activado."
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr "Inicio de sesión único"
@@ -6620,106 +6603,106 @@ 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:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr "Almacenamiento"
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} bytes"
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr "Falló la operación."
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr "Se ha cancelado la operación."
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr "El dispositivo ya se está desmontando."
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
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:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr "La operación agotó el tiempo."
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
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:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr "Tratando de desmontar un dispositivo ocupado."
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr "Ya se ha cancelado la operación."
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr "No tiene autorización para la operación solicitada."
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr "El dispositivo ya está montado."
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr "El dispositivo no está montado."
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr "La operación solicitada no está permitida."
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr "El dispositivo está ya montado por otro usuario."
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, 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."
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr "Poco espacio en disco"
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr "Fallo de disco inminente"
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6875,16 +6858,16 @@ msgstr ""
"interfaz web en {box_name} solo está disponible para quienes pertenezcan a "
"los grupos \"admin\" o \"syncthing-access\"."
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr "Administrar Syncthing"
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr "Syncthing"
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr "Sincronización de archivos"
@@ -6912,40 +6895,40 @@ msgstr ""
"Un puerto SOCKS de Tor está disponible en su %(box_name)s en el puerto TCP "
"9050."
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr "Tor"
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr "Servicio Tor Onion"
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr "Proxy Socks para Tor"
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr "Puente de retransmisión Tor"
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr "Puerto de servidor Tor disponible"
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr "Transporte Obfs3 registrado"
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr "Transporte Obfs4 registrado"
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, 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:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Confirmar uso de Tor en {url} sobre tcp {kind}"
@@ -7074,7 +7057,7 @@ msgstr "Servicio Onion"
msgid "Ports"
msgstr "Puertos"
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "Configuración sin cambio"
@@ -7130,7 +7113,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr "Transmission"
@@ -7165,11 +7148,11 @@ msgstr ""
"Cuando emplee una aplicación de móvil o de escritorio para Tiny Tiny RSS, "
"use la URL /tt-rss-app para conectar."
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr "Tiny Tiny RSS"
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr "Lector de noticias"
@@ -7197,8 +7180,8 @@ msgstr ""
"tiempo. Si se decide retrasar el reinicio del sistema, éste se hará de forma "
"automática a las 02:00 h."
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
#, fuzzy
@@ -7206,15 +7189,15 @@ msgstr ""
msgid "Software Update"
msgstr "Actualizaciones de software (Upgrades)"
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr "FreedomBox actualizado"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr "No se pudo iniciar la actualización de la distribución"
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
@@ -7225,11 +7208,11 @@ msgstr ""
"libres. Si está habilitada, la actualización de la distribución se "
"reintentará tras 24h ."
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr "Iniciada la actualización de la distribución"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -7325,6 +7308,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr "Descartar"
@@ -7453,15 +7437,15 @@ msgstr ""
"sólo los usuarios del grupo admin pueden cambiar configuraciones de "
"apps o del sistema."
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr "Usuarias/os y grupos"
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr "Acceso a todos los servicios y configuraciones del sistema"
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Comprobar la entrada LDAP \"{search_item}\""
@@ -8095,14 +8079,14 @@ msgstr ""
"de administración una actualización de la base de datos. Se pueden instalar "
"y actualizar plugins y temas adicionales asumiendo los riesgos."
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
#, fuzzy
#| msgid "Address"
msgid "WordPress"
msgstr "Dirección"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
#, fuzzy
#| msgid "Wiki and Blog"
msgid "Website and Blog"
@@ -8156,11 +8140,11 @@ msgstr ""
"Para añadir más usuarios hay que crear cuentas con el mismo nombre tanto en "
"Zoph como en {box_name} ."
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr "Zoph"
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr "Organizador de fotografías"
@@ -8197,37 +8181,112 @@ msgstr "PPPoE"
msgid "Generic"
msgstr "Genérica"
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Error al definir el nombre de anfitrión: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, fuzzy, python-brace-format
+#| msgid "Service disabled: {name}"
+msgid "Finished: {name}"
+msgstr "Servicio desactivado: {name}"
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr "El paquete {package_name} es la última versión ({latest_version})"
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr "Error durante la instalación"
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr "instalando"
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr "descargando"
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr "cambio de medio"
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr "archivo de configuración: {file}"
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "Instalar Aplicaciones"
+
+#: plinth/setup.py:46
+#, fuzzy
+#| msgid "Updating..."
+msgid "Updating app"
+msgstr "Actualizando..."
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Error al instalar la aplicación: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Error al instalar la aplicación: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Error al instalar la aplicación: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Error al instalar la aplicación: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Aplicación instalada."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "Última actualización"
+
+#: plinth/setup.py:411
+#, fuzzy
+#| msgid "Upgrade Packages"
+msgid "Updating app packages"
+msgstr "Actualizar paquetes"
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Prohibido"
@@ -8547,6 +8606,10 @@ msgstr "Desde los puertos externos"
msgid "To %(box_name)s Ports"
msgstr "A los puertos de %(box_name)s"
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Aplicación instalada."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr "¿Instalar esta aplicación?"
@@ -8556,22 +8619,14 @@ msgid "This application needs an update. Update now?"
msgstr "Esta aplicación necesita actualizarse. ¿Actualizar ahora?"
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-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:46
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:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr "Volver a coomprobar"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
@@ -8581,36 +8636,43 @@ msgstr ""
"sistema son incompatibles con la instalación de esta app. Si continuas se "
"eliminarán los siguientes paquetes:"
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr "Instalar"
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr "Actualización"
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr "Realizando operaciones previas a la instalación"
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr "Realizando operaciones posteriores a la instalación"
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr "Instalando %(package_names)s: %(status)s"
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "%(percentage)s%% completado"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr "Gujarati"
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "DNSSEC en uso sobre IPv{kind}"
+
+#~ msgid ""
+#~ "Another installation or upgrade is already running. Please wait for a few "
+#~ "moments before trying again."
+#~ msgstr ""
+#~ "Otra instalación o actualización está actualmente en ejecución. Por favor "
+#~ "espere unos momentos antes de intentarlo de nuevo."
+
+#~ msgid "Performing pre-install operation"
+#~ msgstr "Realizando operaciones previas a la instalación"
+
+#~ msgid "Performing post-install operation"
+#~ msgstr "Realizando operaciones posteriores a la instalación"
+
+#, python-format
+#~ msgid "Installing %(package_names)s: %(status)s"
+#~ msgstr "Instalando %(package_names)s: %(status)s"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "%(percentage)s%% completado"
+
#~ 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."
@@ -9624,9 +9686,6 @@ msgstr "Gujarati"
#~ msgid "Service enabled: {name}"
#~ msgstr "Servicio activado: {name}"
-#~ msgid "Service disabled: {name}"
-#~ msgstr "Servicio desactivado: {name}"
-
#~ msgid "PageKite Account"
#~ msgstr "Cuenta PageKite"
@@ -10055,9 +10114,6 @@ msgstr "Gujarati"
#~ msgid "Automatic Upgrades"
#~ msgstr "Actualizaciones automáticas"
-#~ msgid "Upgrade Packages"
-#~ msgstr "Actualizar paquetes"
-
#~ msgid "No such device - {device_path}"
#~ msgstr "No se encuentra el dispositivo - {device_path}"
diff --git a/plinth/locale/fa/LC_MESSAGES/django.po b/plinth/locale/fa/LC_MESSAGES/django.po
index 35091b39f..0b870079c 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2021-09-07 11:34+0000\n"
"Last-Translator: Seyed mohammad ali Hosseinifard \n"
"Language-Team: Persian یا سرویس رایگان بهروزرسانی نشانی را در freedns.afraid.org به کار ببرید."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
#, fuzzy
msgid "Dynamic DNS Client"
msgstr "برنامهٔ DNS متغیر (Dynamic DNS Client)"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
#, fuzzy
#| msgid "Domain Name"
msgid "Dynamic Domain Name"
@@ -1793,9 +1778,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1884,12 +1871,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
#, fuzzy
#| msgid "Web Server"
msgid "Chat Server"
@@ -1992,7 +1979,7 @@ msgstr ""
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2037,23 +2024,23 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
#, fuzzy
#| msgid "Web Server"
msgid "Email Server"
msgstr "سرور وب"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
#, fuzzy
#| msgid "Create Connection"
msgid "My Email Aliases"
msgstr "ساختن اتصال"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
#, fuzzy
#| msgid "Create Connection"
msgid "Manage Aliases for Mailbox"
@@ -2093,7 +2080,7 @@ msgstr ""
msgid "Aliases"
msgstr "ساختن اتصال"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr ""
@@ -2185,7 +2172,7 @@ msgstr ""
"خروجی شبکه را در {box_name} شما کنترل میکند. فعال نگهداشتن فایروال و تنظیم "
"درست آن خطر تهدیدهای امنیتی از طرف اینترنت را کم میکند."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "فایروال"
@@ -2329,15 +2316,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2454,31 +2441,31 @@ msgstr "پاککردن ویکی یا وبلاگ %(name)s"
msgid "Delete this repository permanently?"
msgstr "اتصال %(name)s را برای همیشه پاک میکنید؟"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
#, fuzzy
#| msgid "Error occurred while publishing key."
msgid "An error occurred while creating the repository."
msgstr "هنگام انتشار کلید خطایی رخ داد."
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr ""
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
#, fuzzy
#| msgid "Create Connection"
msgid "Edit repository"
msgstr "ساختن اتصال"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "راهنما"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
#, fuzzy
#| msgid "Manual"
@@ -2486,28 +2473,28 @@ msgctxt "User guide"
msgid "Manual"
msgstr "کتاب راهنما"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "درباره"
@@ -2829,21 +2816,21 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
#, fuzzy
msgid "Manage I2P application"
msgstr "فعالسازی برنامه"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
#, fuzzy
msgid "Anonymity Network"
msgstr "رفتن به تنظیمات شبکه"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr ""
@@ -2906,17 +2893,17 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
#, fuzzy
#| msgid "Manage Wikis and Blogs"
msgid "Wiki and Blog"
msgstr "مدیریت ویکیها و وبلاگها"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
#, fuzzy
msgid "View and edit wiki applications"
msgstr "سرویسها و برنامهها"
@@ -2973,33 +2960,33 @@ msgstr ""
"این کار همهٔ نوشتهها، صفحهها، نظرها، و تاریخچهٔ آنها را حذف میکند. آیا به "
"پاککردن ویکی یا وبلاگ ادامه میدهید؟"
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "ویکی {name} ساخته شد."
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "ساختن ویکی شکست خورد: {error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "وبلاگ {name} ساخته شد."
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "ساختن وبلاگ شکست خورد: {error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, fuzzy, python-brace-format
#| msgid "{name} deleted."
msgid "{title} deleted."
msgstr "{name} پاک شد."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, fuzzy, python-brace-format
#| msgid "Could not delete {name}: {error}"
msgid "Could not delete {title}: {error}"
@@ -3017,11 +3004,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
#, fuzzy
#| msgid "Web Server"
msgid "Gobby Server"
@@ -3055,11 +3042,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -3079,11 +3066,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr ""
@@ -3128,19 +3115,19 @@ msgstr ""
"\"https://letsencrypt.org/repository/\">قرارداد اشتراک Let's Encrypt "
"بخوانید و آن را بپذیرید."
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
#, fuzzy
#| msgid "Certificates (Let's Encrypt)"
msgid "Let's Encrypt"
msgstr "گواهی دیجیتال (Let's Encrypt)"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
#, fuzzy
#| msgid "Certificate Status"
msgid "Certificates"
msgstr "وضعیت گواهی دیجیتال"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -3209,7 +3196,7 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, fuzzy, python-brace-format
#| msgid "Certificate successfully revoked for domain {domain}"
msgid ""
@@ -3217,30 +3204,30 @@ msgid ""
"moments to take effect."
msgstr "گواهی دامنهٔ {domain} با موفقیت باطل شد"
-#: plinth/modules/letsencrypt/views.py:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr "گرفتن گواهی برای دامنهٔ {domain} شکست خورد: {error}"
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, 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:99
+#: plinth/modules/letsencrypt/views.py:101
#, fuzzy, python-brace-format
#| msgid "Failed to revoke certificate for domain {domain}: {error}"
msgid "Failed to delete certificate for domain {domain}: {error}"
@@ -3263,7 +3250,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr ""
@@ -3368,12 +3355,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3442,46 +3429,46 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
#, fuzzy
#| msgid "Password"
msgid "Password updated"
msgstr "رمز"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
#, fuzzy
msgid "Public registrations enabled"
msgstr "برنامه نصب شد."
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
#, fuzzy
msgid "Public registrations disabled"
msgstr "برنامه نصب شد."
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
#, fuzzy
msgid "Private mode disabled"
msgstr "برنامه نصب شد."
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Domain name set"
msgid "Domain name updated"
msgstr "نام دامنه تنظیم شد"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
#, fuzzy
#| msgid "Domain name set"
msgid "Site name updated"
@@ -3500,11 +3487,11 @@ msgstr ""
"برای اتصال به سرور به یک برنامهٔ ماینتست نیاز است."
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
#, fuzzy
msgid "Block Sandbox"
msgstr "بازی مکعبها (Minetest)"
@@ -3555,7 +3542,7 @@ msgstr ""
msgid "Address"
msgstr "نشانی"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3566,15 +3553,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3635,11 +3622,11 @@ msgstr ""
"\"http://mumble.info\">نرمافزارهایی برای اتصال به سرور مامبل برای "
"کامپیوتر رومیزی و دستگاههای اندروید در دسترس است."
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
#, fuzzy
#| msgid "Voice Chat (Mumble)"
msgid "Voice Chat"
@@ -3685,17 +3672,17 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
#, fuzzy
#| msgid "Password"
msgid "Join password changed"
msgstr "رمز"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3708,7 +3695,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "سرویس نامها"
@@ -3730,27 +3717,22 @@ msgstr "پوستهٔ ایمن"
msgid "Services"
msgstr "سرویس"
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "شبکهها"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "در حال استفاده از DNSSEC روی IPv{kind}"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "نوع اتصال"
@@ -4259,7 +4241,7 @@ msgid "This connection is not active."
msgstr "این اتصال فعال نیست."
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "امنیت"
@@ -4308,7 +4290,7 @@ msgid "Create Connection"
msgstr "ساختن اتصال"
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "پاککردن اتصال"
@@ -4329,13 +4311,13 @@ msgstr "Spacing"
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "اترنت"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "Wi-Fi"
@@ -4356,7 +4338,7 @@ msgid "Computer"
msgstr "کامپیوتر"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "ویرایش اتصال"
@@ -4368,13 +4350,13 @@ msgstr "اتصال"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "شبکههای بیسیم در نزدیکی"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "افزودن اتصال"
@@ -4563,291 +4545,291 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
#, fuzzy
#| msgid "Disabled"
msgid "disabled"
msgstr "غیرفعال"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
#, fuzzy
#| msgid "Automatic"
msgid "automatic"
msgstr "خودکار"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
#, fuzzy
#| msgid "Manual"
msgid "manual"
msgstr "کتاب راهنما"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
#, fuzzy
#| msgid "Shared"
msgid "shared"
msgstr "مشترک"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
#, fuzzy
#| msgid "Manage"
msgid "unmanaged"
msgstr "مدیریت"
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
#, fuzzy
#| msgid "Available Domains"
msgid "unavailable"
msgstr "دامنههای موجود"
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
#, fuzzy
#| msgid "cable is connected"
msgid "disconnected"
msgstr "سیم وصل است"
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
#, fuzzy
#| msgid "Shared"
msgid "preparing"
msgstr "مشترک"
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
#, fuzzy
#| msgid "Connection"
msgid "connecting"
msgstr "اتصال"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "needs authentication"
msgstr "بهکاربردن تأیید هویت سادهٔ تحت وب"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
#, fuzzy
#| msgid "Deactivate"
msgid "activated"
msgstr "غیرفعالسازی"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
#, fuzzy
#| msgid "Deactivate"
msgid "deactivating"
msgstr "غیرفعالسازی"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
#, fuzzy
#| msgid "State reason"
msgid "no reason"
msgstr "دلیل وضعیت"
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
#, fuzzy
#| msgid "Configuration updated"
msgid "configuration failed"
msgstr "پیکربندی بهروز شد"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
#, fuzzy
#| msgid "{name} deleted."
msgid "DHCP client failed"
msgstr "{name} پاک شد."
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
#, fuzzy
#| msgid "Configuration updated"
msgid "shared connection service failed"
msgstr "پیکربندی بهروز شد"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
#, fuzzy
#| msgid "The requested domain is already registered."
msgid "device was removed"
msgstr "دامنهٔ درخواستی از قبل ثبت شده است."
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
#, fuzzy
#| msgid "cable is connected"
msgid "device disconnected by user"
msgstr "سیم وصل است"
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr ""
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
#, fuzzy
#| msgid "Interface"
msgid "TUN or TAP interface"
msgstr "واسط"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
#, fuzzy
#| msgid "Ad-hoc"
msgid "ad-hoc"
msgstr "موردی"
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
#, fuzzy
#| msgid "Infrastructure"
msgid "infrastructure"
msgstr "سازمانی"
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
#, fuzzy
#| msgid "Access Point"
msgid "access point"
msgstr "نقطهٔ دسترسی"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
#, fuzzy
#| msgid "Access Point"
msgid "mesh point"
msgstr "نقطهٔ دسترسی"
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "اتصالهای شبکه"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr "نمیتوان اتصال را نشان داد: اتصالی پیدا نشد."
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr "اطلاعات اتصال"
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "نمیتوان اتصال را ویراست: اتصالی پیدا نشد."
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr "از این نوع اتصال هنوز پشتیبانی نمیشود."
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr "اتصال {name} فعال شد."
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr "فعالسازی اتصال شکست خورد: اتصالی پیدا نشد."
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr "فعالسازی اتصال {name} شکست خورد: دستگاه مناسبی موجود نیست."
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "اتصال {name} غیرفعال شد."
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr "غیرفعالسازی اتصال شکست خورد: اتصالی پیدا نشد."
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr "افزودن یک اتصال عام تازه"
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "افزودن اتصال اترنت تازه"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "افزودن اتصال PPPoE تازه"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "افزودن اتصال Wi-Fi تازه"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "اتصال {name} پاک شد."
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr "پاککردن اتصال شکست خورد: اتصال پیدا نشد."
@@ -4862,24 +4844,24 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
#, fuzzy
#| msgid "Connection Type"
msgid "Connect to VPN services"
msgstr "نوع اتصال"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
#, fuzzy
#| msgid "Open"
msgid "OpenVPN"
msgstr "باز"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4989,15 +4971,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
#, fuzzy
#| msgid "Available Domains"
msgid "PageKite Domain"
@@ -5105,36 +5087,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -5151,7 +5133,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr ""
@@ -5159,7 +5141,7 @@ msgstr ""
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr ""
@@ -5230,15 +5212,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -5262,11 +5244,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr ""
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr ""
@@ -5291,12 +5273,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -5390,7 +5372,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
#, fuzzy
msgid "Email Client"
msgstr "برنامهٔ DNS متغیر (Dynamic DNS Client)"
@@ -5427,16 +5409,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5471,15 +5453,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
#, fuzzy
#| msgid "Interface"
msgid "Network File Storage"
@@ -5623,15 +5605,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
#, fuzzy
#| msgid "Web Server"
msgid "Web Search"
@@ -5718,7 +5700,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
#, fuzzy
#| msgid "Security"
msgid "Security Report"
@@ -5791,13 +5773,13 @@ msgstr ""
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, fuzzy, python-brace-format
#| msgid "Error setting time zone: {exception}"
msgid "Error setting restricted access: {exception}"
msgstr "خطا در هنگام تنظیم منطقهٔ زمانی: {exception}"
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
#, fuzzy
#| msgid "General Configuration"
msgid "Updated security configuration"
@@ -5813,11 +5795,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5847,11 +5829,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5882,14 +5864,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
#, fuzzy
#| msgid "Shared"
msgid "Sharing"
@@ -5941,30 +5923,30 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
#, fuzzy
#| msgid "Shared"
msgid "Shared Over"
msgstr "مشترک"
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -6020,7 +6002,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Storage Snapshots"
@@ -6126,7 +6108,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Delete Snapshots"
@@ -6176,61 +6158,61 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
#, fuzzy
#| msgid "Last update"
msgid "manually created"
msgstr "آخرین بهروزرسانی"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Manage Snapshots"
msgstr "پاککردن %(name)s"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
#, fuzzy
#| msgid "Configuration updated"
msgid "Storage snapshots configuration updated"
msgstr "پیکربندی بهروز شد"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Deleted selected snapshots"
msgstr "پاککردن %(name)s"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -6242,7 +6224,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -6289,7 +6271,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -6311,110 +6293,110 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, fuzzy, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size} بایت"
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, fuzzy, python-brace-format
#| msgid "{disk_size} KiB"
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size} KiB"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, fuzzy, python-brace-format
#| msgid "{disk_size} MiB"
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size} MiB"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, fuzzy, python-brace-format
#| msgid "{disk_size} GiB"
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size} GiB"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, fuzzy, python-brace-format
#| msgid "{disk_size} TiB"
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size} TiB"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
#, fuzzy
#| msgid "The requested domain is already registered."
msgid "The device is already mounted."
msgstr "دامنهٔ درخواستی از قبل ثبت شده است."
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6561,16 +6543,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -6590,40 +6572,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6731,7 +6713,7 @@ msgstr "سرویس"
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr ""
@@ -6777,7 +6759,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr ""
@@ -6802,11 +6784,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6827,8 +6809,8 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
#, fuzzy
@@ -6836,28 +6818,28 @@ msgstr ""
msgid "Software Update"
msgstr "{name} پاک شد."
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
#, fuzzy
msgid "FreedomBox Updated"
msgstr "FreedomBox"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
#, fuzzy
msgid "Distribution update started"
msgstr "برنامه نصب شد."
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6939,6 +6921,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -7048,15 +7031,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -7681,14 +7664,14 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
#, fuzzy
#| msgid "Address"
msgid "WordPress"
msgstr "نشانی"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
#, fuzzy
#| msgid "Manage Wikis and Blogs"
msgid "Website and Blog"
@@ -7727,11 +7710,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7767,37 +7750,102 @@ msgstr ""
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "خطا در هنگام تنظیم نام میزبان: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+msgid "Installing app"
+msgstr ""
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+msgid "Error installing app: {string} {details}"
+msgstr "خطا هنگام نصب برنامه: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+msgid "Error updating app: {string} {details}"
+msgstr "خطا هنگام نصب برنامه: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "خطا هنگام نصب برنامه: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "خطا هنگام نصب برنامه: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+msgid "App installed."
+msgstr "برنامه نصب شد."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "آخرین بهروزرسانی"
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -8094,6 +8142,11 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr "راهاندازی %(box_name)s"
+#: plinth/templates/setup.html:18
+#, fuzzy
+msgid "Application installed."
+msgstr "برنامه نصب شد."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr ""
@@ -8103,56 +8156,36 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr ""
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr ""
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr ""
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "در حال استفاده از DNSSEC روی IPv{kind}"
+
#, fuzzy
#~| msgid "Access Point"
#~ msgid "Access"
diff --git a/plinth/locale/fake/LC_MESSAGES/django.po b/plinth/locale/fake/LC_MESSAGES/django.po
index 1090b2851..e25205218 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2016-01-31 22:24+0530\n"
"Last-Translator: Sunil Mohan Adapa \n"
"Language-Team: Plinth Developers /IKIWIKI."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr ""
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
#, fuzzy
#| msgid "Server domain"
msgid "Server Administration"
@@ -1256,18 +1238,18 @@ msgid ""
"name, webserver home page etc."
msgstr ""
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "GENERAL CONFIGURATION"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "CONFIGURE"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1437,11 +1419,11 @@ msgid ""
"be configured with the details provided here."
msgstr ""
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr ""
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr ""
@@ -1471,11 +1453,11 @@ msgstr ""
"NETWORK TIME SERVER IS A PROGRAM THAT MAINTIANS THE SYSTEM TIME IN "
"SYNCHRONIZATION WITH SERVERS ON THE INTERNET."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "DATE & TIME"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr ""
@@ -1527,19 +1509,19 @@ msgstr ""
"\">/DELUGE PATH ON THE WEB SERVER. THE DEFAULT PASSWORD IS 'DELUGE', BUT "
"YOU SHOULD LOG IN AND CHANGE IT IMMEDIATELY AFTER ENABLING THIS SERVICE."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr ""
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
#, fuzzy
#| msgid "Enable Deluge"
msgid "Deluge"
msgstr "ENABLE DELUGE"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
#, fuzzy
#| msgid "BitTorrent Web Client (Deluge)"
msgid "BitTorrent Web Client"
@@ -1561,58 +1543,58 @@ msgstr ""
"THE SYSTEM DIAGNOSTIC TEST WILL RUN A NUMBER OF CHECKS ON YOUR SYSTEM TO "
"CONFIRM THAT APPLICATIONS AND SERVICES ARE WORKING AS EXPECTED."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "DIAGNOSTICS"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
#, fuzzy
#| msgid "Setup failed."
msgid "failed"
msgstr "SETUP FAILED."
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr ""
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr ""
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
"{memory_available_unit} free. {advice_message}"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr ""
@@ -1727,11 +1709,11 @@ msgstr ""
"BASED SERVICES ON "
"FREEDNS.AFRAID.ORG."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "DYNAMIC DNS CLIENT"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
#, fuzzy
#| msgid "Domain Name"
msgid "Dynamic Domain Name"
@@ -1879,9 +1861,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1980,12 +1964,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
#, fuzzy
#| msgid "Web Server"
msgid "Chat Server"
@@ -2088,7 +2072,7 @@ msgstr ""
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2136,23 +2120,23 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
#, fuzzy
#| msgid "Web Server"
msgid "Email Server"
msgstr "WEB SERVER"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
#, fuzzy
#| msgid "Create User"
msgid "My Email Aliases"
msgstr "CREATE USER"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
#, fuzzy
#| msgid "Create User"
msgid "Manage Aliases for Mailbox"
@@ -2192,7 +2176,7 @@ msgstr ""
msgid "Aliases"
msgstr "CREATE USER"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
#, fuzzy
#| msgid "Enable Roundcube"
@@ -2290,7 +2274,7 @@ msgstr ""
"NETWORK TRAFFIC ON YOUR %(box_name)s. KEEPING A FIREWALL ENABLED AND "
"PROPERLY CONFIGURED REDUCES RISK OF SECURITY THREAT FROM THE INTERNET."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "FIREWALL"
@@ -2438,15 +2422,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2567,35 +2551,35 @@ msgstr "DELETE WIKI OR BLOG %(name)s"
msgid "Delete this repository permanently?"
msgstr "DELETE USER PERMANENTLY?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
#, fuzzy
#| msgid "packages not found"
msgid "Repository created."
msgstr "PACKAGES NOT FOUND"
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
#, fuzzy
#| msgid "An error occurred during configuration."
msgid "An error occurred while creating the repository."
msgstr "AN ERROR OCCURRED DURING CONFIGURATION."
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
#, fuzzy
#| msgid "packages not found"
msgid "Repository edited."
msgstr "PACKAGES NOT FOUND"
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
#, fuzzy
#| msgid "Create User"
msgid "Edit repository"
msgstr "CREATE USER"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "DOCUMENTATION"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
#, fuzzy
#| msgid "Manual"
@@ -2603,28 +2587,28 @@ msgctxt "User guide"
msgid "Manual"
msgstr "MANUAL"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "ABOUT"
@@ -2957,23 +2941,23 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
#, fuzzy
#| msgid "Applications"
msgid "Manage I2P application"
msgstr "APPLICATIONS"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
#, fuzzy
#| msgid "Tor Anonymity Network"
msgid "Anonymity Network"
msgstr "TOR ANONYMITY NETWORK"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
#, fuzzy
#| msgid "Privoxy Web Proxy"
msgid "I2P Proxy"
@@ -3028,17 +3012,17 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
#, fuzzy
#| msgid "wiki"
msgid "ikiwiki"
msgstr "WIKI"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr "WIKI AND BLOG"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
#, fuzzy
#| msgid "Services and Applications"
msgid "View and edit wiki applications"
@@ -3096,33 +3080,33 @@ msgstr ""
"THIS ACTION WILL REMOVE ALL THE POSTS, PAGES AND COMMENTS INCLUDING REVISION "
"HISTORY. DELETE THIS WIKI OR BLOG PERMANENTLY?"
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "CREATED WIKI {name}."
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "COULD NOT CREATE WIKI: {error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "CREATED BLOG {name}."
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "COULD NOT CREATE BLOG: {error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, fuzzy, python-brace-format
#| msgid "{name} deleted."
msgid "{title} deleted."
msgstr "{name} DELETED."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, fuzzy, python-brace-format
#| msgid "Could not delete {name}: {error}"
msgid "Could not delete {title}: {error}"
@@ -3140,11 +3124,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
#, fuzzy
#| msgid "Web Server"
msgid "Gobby Server"
@@ -3178,11 +3162,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -3202,11 +3186,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
#, fuzzy
#| msgid "IRC Client (Quassel)"
msgid "Chat Client"
@@ -3252,19 +3236,19 @@ msgstr ""
"READ AND AGREE WITH THE LET'S ENCRYPT SUBSCRIBER AGREEMENT BEFORE USING THIS SERVICE."
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
#, fuzzy
#| msgid "Certificates (Let's Encrypt)"
msgid "Let's Encrypt"
msgstr "CERTIFICATES (LET'S ENCRYPT)"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
#, fuzzy
#| msgid "Certificate Status"
msgid "Certificates"
msgstr "CERTIFICATE STATUS"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -3335,7 +3319,7 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, fuzzy, python-brace-format
#| msgid "Certificate successfully revoked for domain {domain}"
msgid ""
@@ -3343,30 +3327,30 @@ msgid ""
"moments to take effect."
msgstr "CERTIFICATE SUCCESSFULLY REVOKED FOR DOMAIN {domain}"
-#: plinth/modules/letsencrypt/views.py:47
+#: plinth/modules/letsencrypt/views.py:49
#, python-brace-format
msgid "Failed to revoke certificate for domain {domain}: {error}"
msgstr "FAILED TO REVOKE CERTIFICATE FOR DOMAIN {domain}: {error}"
-#: plinth/modules/letsencrypt/views.py:60
-#: plinth/modules/letsencrypt/views.py:77
+#: plinth/modules/letsencrypt/views.py:62
+#: plinth/modules/letsencrypt/views.py:79
#, python-brace-format
msgid "Certificate successfully obtained for domain {domain}"
msgstr "CERTIFICATE SUCCESSFULLY OBTAINED FOR DOMAIN {domain}"
-#: plinth/modules/letsencrypt/views.py:65
-#: plinth/modules/letsencrypt/views.py:82
+#: plinth/modules/letsencrypt/views.py:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr "FAILED TO OBTAIN CERTIFICATE FOR DOMAIN {domain}: {error}"
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, fuzzy, python-brace-format
#| msgid "Certificate successfully revoked for domain {domain}"
msgid "Certificate successfully deleted for domain {domain}"
msgstr "CERTIFICATE SUCCESSFULLY REVOKED FOR DOMAIN {domain}"
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, fuzzy, python-brace-format
#| msgid "Failed to revoke certificate for domain {domain}: {error}"
msgid "Failed to delete certificate for domain {domain}: {error}"
@@ -3389,7 +3373,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
#, fuzzy
#| msgid "Chat Server (XMPP)"
msgid "Matrix Synapse"
@@ -3504,12 +3488,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3580,53 +3564,53 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
#, fuzzy
#| msgid "Password"
msgid "Password updated"
msgstr "PASSWORD"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
#, fuzzy
#| msgid "Applications"
msgid "Public registrations enabled"
msgstr "APPLICATIONS"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
#, fuzzy
#| msgid "Applications"
msgid "Public registrations disabled"
msgstr "APPLICATIONS"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
#, fuzzy
#| msgid "PageKite enabled"
msgid "Private mode enabled"
msgstr "PAGEKITE ENABLED"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
#, fuzzy
#| msgid "PageKite disabled"
msgid "Private mode disabled"
msgstr "PAGEKITE DISABLED"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
#, fuzzy
#| msgid "Setting unchanged"
msgid "Default skin changed"
msgstr "SETTING UNCHANGED"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Domain name set"
msgid "Domain name updated"
msgstr "DOMAIN NAME SET"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
#, fuzzy
#| msgid "Domain name set"
msgid "Site name updated"
@@ -3641,11 +3625,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
#, fuzzy
#| msgid "Blocked"
msgid "Block Sandbox"
@@ -3698,7 +3682,7 @@ msgstr ""
msgid "Address"
msgstr "ADDRESS"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3709,15 +3693,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
#, fuzzy
#| msgid "Mumble Voice Chat Server"
msgid "Simple Media Server"
@@ -3782,11 +3766,11 @@ msgstr ""
"href=\"http://mumble.info\">CLIENTS TO CONNECT TO MUMBLE FROM YOUR "
"DESKTOP AND ANDROID DEVICES ARE AVAILABLE."
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
#, fuzzy
#| msgid "Voice Chat (Mumble)"
msgid "Voice Chat"
@@ -3832,19 +3816,19 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
#, fuzzy
#| msgid "Password changed successfully."
msgid "SuperUser password successfully updated."
msgstr "PASSWORD CHANGED SUCCESSFULLY."
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
#, fuzzy
#| msgid "Password"
msgid "Join password changed"
msgstr "PASSWORD"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
#, fuzzy
#| msgid "Domain name is unchanged"
msgid "Root channel name changed."
@@ -3859,7 +3843,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "NAME SERVICES"
@@ -3883,27 +3867,22 @@ msgstr "SECURE SHELL (SSH)"
msgid "Services"
msgstr "SERVICE"
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "NETWORKS"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "USING DNSSEC ON IPV{kind}"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "CONNECTION TYPE"
@@ -4415,7 +4394,7 @@ msgid "This connection is not active."
msgstr "THIS CONNECTION IS NOT ACTIVE."
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "SECURITY"
@@ -4464,7 +4443,7 @@ msgid "Create Connection"
msgstr "CREATE CONNECTION"
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "DELETE CONNECTION"
@@ -4484,13 +4463,13 @@ msgstr "SPACING"
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "ETHERNET"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "WI-FI"
@@ -4511,7 +4490,7 @@ msgid "Computer"
msgstr "COMPUTER"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "EDIT CONNECTION"
@@ -4523,13 +4502,13 @@ msgstr "CONNECTION"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "NEARBY WI-FI NETWORKS"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "ADD CONNECTION"
@@ -4718,293 +4697,293 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
#, fuzzy
#| msgid "Disabled"
msgid "disabled"
msgstr "DISABLED"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
#, fuzzy
#| msgid "Automatic Upgrades"
msgid "automatic"
msgstr "AUTOMATIC UPGRADES"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
#, fuzzy
#| msgid "Manual"
msgid "manual"
msgstr "MANUAL"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
#, fuzzy
#| msgid "Add Service"
msgid "shared"
msgstr "ADD SERVICE"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
#, fuzzy
#| msgid "Manage"
msgid "unmanaged"
msgstr "MANAGE"
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
#, fuzzy
#| msgid "Enable Subdomains"
msgid "unavailable"
msgstr "ENABLE SUBDOMAINS"
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
#, fuzzy
#| msgid "cable is connected"
msgid "disconnected"
msgstr "CABLE IS CONNECTED"
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
#, fuzzy
#| msgid "Enable Shaarli"
msgid "preparing"
msgstr "ENABLE SHAARLI"
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
#, fuzzy
#| msgid "Connection"
msgid "connecting"
msgstr "CONNECTION"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "needs authentication"
msgstr "USE HTTP BASIC AUTHENTICATION"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
#, fuzzy
#| msgid "Deactivate"
msgid "activated"
msgstr "DEACTIVATE"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
#, fuzzy
#| msgid "Deactivate"
msgid "deactivating"
msgstr "DEACTIVATE"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
#, fuzzy
#| msgid "State reason"
msgid "no reason"
msgstr "STATE REASON"
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
#, fuzzy
#| msgid "repro service is not running"
msgid "device is now managed"
msgstr "REPRO SERVICE IS NOT RUNNING"
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
#, fuzzy
#| msgid "repro service is not running"
msgid "device is now unmanaged"
msgstr "REPRO SERVICE IS NOT RUNNING"
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
#, fuzzy
#| msgid "Configuration"
msgid "configuration failed"
msgstr "CONFIGURATION"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
#, fuzzy
#| msgid "{name} deleted."
msgid "DHCP client failed"
msgstr "{name} DELETED."
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
#, fuzzy
#| msgid "Tor configuration is being updated"
msgid "shared connection service failed"
msgstr "TOR CONFIGURATION IS BEING UPDATED"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
#, fuzzy
#| msgid "This service already exists"
msgid "device was removed"
msgstr "THIS SERVICE ALREADY EXISTS"
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
#, fuzzy
#| msgid "cable is connected"
msgid "device disconnected by user"
msgstr "CABLE IS CONNECTED"
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
#, fuzzy
#| msgid "packages not found"
msgid "Wi-Fi network not found"
msgstr "PACKAGES NOT FOUND"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
#, fuzzy
#| msgid "Interface"
msgid "TUN or TAP interface"
msgstr "INTERFACE"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr ""
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "NETWORK CONNECTIONS"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr "CANNOT SHOW CONNECTION: CONNECTION NOT FOUND."
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
#, fuzzy
#| msgid "Show Connection information"
msgid "Connection Information"
msgstr "SHOW CONNECTION INFORMATION"
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "CANNOT EDIT CONNECTION: CONNECTION NOT FOUND."
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr "THIS TYPE OF CONNECTION IS NOT YET UNDERSTOOD."
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr "ACTIVATED CONNECTION {name}."
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr "FAILED TO ACTIVATE CONNECTION: CONNECTION NOT FOUND."
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, 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/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "DEACTIVATED CONNECTION {name}."
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr "FAILED TO DE-ACTIVATE CONNECTION: CONNECTION NOT FOUND."
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
#, fuzzy
#| msgid "Adding New Ethernet Connection"
msgid "Adding New Generic Connection"
msgstr "ADDING NEW ETHERNET CONNECTION"
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "ADDING NEW ETHERNET CONNECTION"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "ADDING NEW PPPOE CONNECTION"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "ADDING NEW WI-FI CONNECTION"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "CONNECTION {name} DELETED."
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr "FAILED TO DELETE CONNECTION: CONNECTION NOT FOUND."
@@ -5032,26 +5011,26 @@ msgstr ""
"YOU CAN ALSO ACCESS THE REST OF THE INTERNET VIA %(box_name)s FOR ADDED "
"SECURITY AND ANONYMITY."
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
#, fuzzy
#| msgid "Connection Type"
msgid "Connect to VPN services"
msgstr "CONNECTION TYPE"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
#, fuzzy
#| msgid "OpenVPN"
msgid "OpenVPN"
msgstr "OPENVPN"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
#, fuzzy
#| msgid "Virtual Private Network (OpenVPN)"
msgid "Virtual Private Network"
msgstr "VIRTUAL PRIVATE NETWORK (OPENVPN)"
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -5205,19 +5184,19 @@ 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:63
+#: plinth/modules/pagekite/__init__.py:61
#, fuzzy
#| msgid "Pagekite"
msgid "PageKite"
msgstr "PAGEKITE"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
#, fuzzy
#| msgid "Public Visibility (PageKite)"
msgid "Public Visibility"
msgstr "PUBLIC VISIBILITY (PAGEKITE)"
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
#, fuzzy
#| msgid "PageKite Account"
msgid "PageKite Domain"
@@ -5342,29 +5321,29 @@ msgstr ""
"PROTOCOL/PORT COMBINATIONS THAT YOU ARE ABLE TO DEFINE HERE. FOR EXAMPLE, "
"HTTPS ON PORTS OTHER THAN 443 IS KNOWN TO CAUSE PROBLEMS."
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr "WEB SERVER (HTTP)"
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr "SITE WILL BE AVAILABLE AT HTTP://{0}"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr "WEB SERVER (HTTPS)"
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr "SITE WILL BE AVAILABLE AT HTTPS://{0}"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr "SECURE SHELL (SSH)"
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
@@ -5373,7 +5352,7 @@ msgstr ""
"SshOverPageKite/\">INSTRUCTIONS"
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -5390,7 +5369,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
#, fuzzy
#| msgid "System Configuration"
msgid "System Monitoring"
@@ -5400,7 +5379,7 @@ msgstr "SYSTEM CONFIGURATION"
msgid "Restart or shut down the system."
msgstr "RESTART OR SHUT DOWN THE SYSTEM."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "POWER"
@@ -5498,19 +5477,19 @@ msgstr ""
"config.privoxy.org\">HTTP://CONFIG.PRIVOXY.ORG/ OR HTTP://P.P.\""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
#, fuzzy
#| msgid "Enable Privoxy"
msgid "Privoxy"
msgstr "ENABLE PRIVOXY"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
#, fuzzy
#| msgid "Privoxy Web Proxy"
msgid "Web Proxy"
msgstr "PRIVOXY WEB PROXY"
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr "ACCESS {url} WITH PROXY {proxy} ON TCP{kind}"
@@ -5551,11 +5530,11 @@ msgstr ""
"downloads\">DESKTOP AND MOBILE DEVICES ARE AVAILABLE."
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr ""
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
#, fuzzy
#| msgid "Quassel IRC Client"
msgid "IRC Client"
@@ -5582,12 +5561,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -5709,7 +5688,7 @@ msgstr ""
"lesssecureapps\" >HTTPS://WWW.GOOGLE.COM/SETTINGS/SECURITY/LESSSECUREAPPS"
"a>)."
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
#, fuzzy
#| msgid "Email Client (Roundcube)"
msgid "Email Client"
@@ -5752,18 +5731,18 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
#, fuzzy
#| msgid "Bridge"
msgid "RSS-Bridge"
msgstr "BRIDGE"
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5798,15 +5777,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
#, fuzzy
#| msgid "Network Time Server"
msgid "Network File Storage"
@@ -5952,15 +5931,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
#, fuzzy
#| msgid "Web Server"
msgid "Web Search"
@@ -6049,7 +6028,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
#, fuzzy
#| msgid "Security"
msgid "Security Report"
@@ -6126,13 +6105,13 @@ msgstr ""
msgid "Not running"
msgstr "TOR IS NOT RUNNING"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, 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:59
+#: plinth/modules/security/views.py:60
#, fuzzy
#| msgid "General Configuration"
msgid "Updated security configuration"
@@ -6156,11 +6135,11 @@ 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/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "SHAARLI"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
#, fuzzy
#| msgid "Bookmarks (Shaarli)"
msgid "Bookmarks"
@@ -6194,11 +6173,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -6231,14 +6210,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
#, fuzzy
#| msgid "Enable Shaarli"
msgid "Sharing"
@@ -6292,32 +6271,32 @@ msgstr "THIS SERVICE ALREADY EXISTS"
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
#, fuzzy
#| msgid "Add Service"
msgid "Add share"
msgstr "ADD SERVICE"
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
#, fuzzy
#| msgid "Groups"
msgid "With Groups"
msgstr "GROUPS"
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -6369,7 +6348,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
#, fuzzy
#| msgid "Create User"
msgid "Storage Snapshots"
@@ -6477,7 +6456,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Delete Snapshots"
@@ -6529,61 +6508,61 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
#, fuzzy
#| msgid "packages not found"
msgid "manually created"
msgstr "PACKAGES NOT FOUND"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
#, fuzzy
#| msgid "Create User"
msgid "Manage Snapshots"
msgstr "CREATE USER"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
#, fuzzy
#| msgid "Configuration updated"
msgid "Storage snapshots configuration updated"
msgstr "CONFIGURATION UPDATED"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "ACTION ERROR: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Deleted selected snapshots"
msgstr "DELETE %(name)s"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -6595,7 +6574,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr "SECURE SHELL (SSH) SERVER"
@@ -6642,7 +6621,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -6664,112 +6643,112 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
#, fuzzy
#| msgid "reStore"
msgid "Storage"
msgstr "RESTORE"
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
#, fuzzy
#| msgid "repro service is running"
msgid "The device is already unmounting."
msgstr "REPRO SERVICE IS RUNNING"
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
#, fuzzy
#| msgid "This service already exists"
msgid "The device is already mounted."
msgstr "THIS SERVICE ALREADY EXISTS"
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
#, fuzzy
#| msgid "repro service is not running"
msgid "The device is not mounted."
msgstr "REPRO SERVICE IS NOT RUNNING"
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6916,18 +6895,18 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
#, fuzzy
#| msgid "Installation"
msgid "Administer Syncthing application"
msgstr "INSTALLATION"
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -6960,42 +6939,42 @@ msgid ""
"TCP port 9050."
msgstr "A TOR SOCKS PORT IS AVAILABLE ON YOUR %(box_name)s ON TCP PORT 9050."
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
#, fuzzy
#| msgid "Tor Hidden Service"
msgid "Tor Onion Service"
msgstr "TOR HIDDEN SERVICE"
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr "TOR BRIDGE RELAY"
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr "TOR RELAY PORT AVAILABLE"
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr "OBFS3 TRANSPORT REGISTERED"
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr "OBFS4 TRANSPORT REGISTERED"
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, 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:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "CONFIRM TOR USAGE AT {url} ON TCP{kind}"
@@ -7119,7 +7098,7 @@ msgstr "HIDDEN SERVICE"
msgid "Ports"
msgstr "PORT"
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "SETTING UNCHANGED"
@@ -7178,7 +7157,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
#, fuzzy
#| msgid "Transmission BitTorrent"
@@ -7210,11 +7189,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -7235,8 +7214,8 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
#, fuzzy
@@ -7244,30 +7223,30 @@ msgstr ""
msgid "Software Update"
msgstr "SOFTWARE UPGRADES"
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
#, fuzzy
#| msgid "FreedomBox Manual"
msgid "FreedomBox Updated"
msgstr "FREEDOMBOX MANUAL"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
#, fuzzy
#| msgid "Automatic upgrades disabled"
msgid "Distribution update started"
msgstr "AUTOMATIC UPGRADES DISABLED"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -7361,6 +7340,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -7484,15 +7464,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr "USERS AND GROUPS"
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "CHECK LDAP ENTRY \"{search_item}\""
@@ -8145,14 +8125,14 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
#, fuzzy
#| msgid "Address"
msgid "WordPress"
msgstr "ADDRESS"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
#, fuzzy
#| msgid "Wiki and Blog"
msgid "Website and Blog"
@@ -8191,11 +8171,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -8231,42 +8211,115 @@ msgstr "PPPOE"
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "ERROR SETTING HOSTNAME: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, fuzzy, python-brace-format
+#| msgid "Service disabled: {name}"
+msgid "Finished: {name}"
+msgstr "SERVICE DISABLED: {name}"
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
#, fuzzy
#| msgid "Installation"
msgid "installing"
msgstr "INSTALLATION"
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
#, fuzzy
#| msgid "Setting unchanged"
msgid "media change"
msgstr "SETTING UNCHANGED"
-#: plinth/package.py:383
+#: plinth/package.py:382
#, fuzzy, python-brace-format
#| msgid "Configuration"
msgid "configuration file: {file}"
msgstr "CONFIGURATION"
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install"
+msgid "Installing app"
+msgstr "INSTALL"
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing packages: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "ERROR INSTALLING PACKAGES: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing packages: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "ERROR INSTALLING PACKAGES: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing packages: {string} {details}"
+msgid "Error installing app: {error}"
+msgstr "ERROR INSTALLING PACKAGES: {string} {details}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing packages: {string} {details}"
+msgid "Error updating app: {error}"
+msgstr "ERROR INSTALLING PACKAGES: {string} {details}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Applications"
+msgid "App installed."
+msgstr "APPLICATIONS"
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "LAST UPDATE"
+
+#: plinth/setup.py:411
+#, fuzzy
+#| msgid "Upgrade Packages"
+msgid "Updating app packages"
+msgstr "UPGRADE PACKAGES"
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -8597,6 +8650,12 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr "%(box_name)s SETUP"
+#: plinth/templates/setup.html:18
+#, fuzzy
+#| msgid "Applications"
+msgid "Application installed."
+msgstr "APPLICATIONS"
+
#: plinth/templates/setup.html:24
#, fuzzy
#| msgid "Installation"
@@ -8608,58 +8667,46 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr "INSTALL"
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
#, fuzzy
#| msgid "Update URL"
msgid "Update"
msgstr "UPDATE URL"
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr "INSTALLING %(package_names)s: %(status)s"
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "%(percentage)s%% COMPLETE"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "USING DNSSEC ON IPV{kind}"
+
+#, python-format
+#~ msgid "Installing %(package_names)s: %(status)s"
+#~ msgstr "INSTALLING %(package_names)s: %(status)s"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "%(percentage)s%% COMPLETE"
+
#, fuzzy
#~| msgid "Web Server"
#~ msgid "WebRTC server"
@@ -9410,9 +9457,6 @@ msgstr ""
#~ msgid "Service enabled: {name}"
#~ msgstr "SERVICE ENABLED: {name}"
-#~ msgid "Service disabled: {name}"
-#~ msgstr "SERVICE DISABLED: {name}"
-
#~ msgid "PageKite Account"
#~ msgstr "PAGEKITE ACCOUNT"
@@ -9629,9 +9673,6 @@ msgstr ""
#~ msgid "Automatic Upgrades"
#~ msgstr "AUTOMATIC UPGRADES"
-#~ msgid "Upgrade Packages"
-#~ msgstr "UPGRADE PACKAGES"
-
#, fuzzy
#~| msgid "Create User"
#~ msgid "Create archive"
diff --git a/plinth/locale/fr/LC_MESSAGES/django.po b/plinth/locale/fr/LC_MESSAGES/django.po
index 849de9072..d5558ebe1 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2022-08-03 22:17+0000\n"
"Last-Translator: Maxime Leroy \n"
"Language-Team: French utilisateur faisant "
"partie du groupe admin sur la {box_name}."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Cockpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "Administration du serveur"
@@ -1222,18 +1208,18 @@ msgstr ""
"Cette page vous permet de modifier certains paramètres généraux comme le nom "
"de machine, le nom de domaine, la page d’accueil du serveur web, etc."
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "Configuration générale"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "Configurer"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1418,11 +1404,11 @@ msgstr ""
"\"{e_url}\">ejabberd qui peuvent l’utiliser en reportant les détails "
"fournis ici dans leur configuration."
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "Coturn"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr "Assistant de VoIP"
@@ -1448,11 +1434,11 @@ msgstr ""
"Le serveur de temps réseau est un programme permettant de maintenir l’heure "
"du système synchronisée avec les serveurs Internet."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "Date et heure"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "Heure synchronisée avec le serveur de temps NTP"
@@ -1494,17 +1480,17 @@ msgstr ""
"il est fortement recommandé de le modifier immédiatement après l’activation "
"du service."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "Téléchargement de fichiers avec les applications BitTorrent"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "Deluge"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "Client web pour BitTorrent"
@@ -1525,51 +1511,51 @@ msgstr ""
"sur votre système pour confirmer que les applications et les services "
"fonctionnent comme prévu."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "Diagnostics"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr "réussi"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr "échoué"
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr "erreur"
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr "avertissement"
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr "Mio"
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr "Gio"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
"Vous devriez désactiver certaines application pour libérer de la mémoire."
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr ""
"Il est déconseillé d’installer de nouvelles applications sur ce système."
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
@@ -1578,7 +1564,7 @@ msgstr ""
"Le système est bientôt à court de mémoire : {percent_used}% utilisés, "
"{memory_available} {memory_available_unit} libres. {advice_message}"
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr "Mémoire disponible faible"
@@ -1675,11 +1661,11 @@ msgstr ""
"d’actualisation sur freedns.afraid.org."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "Client DNS dynamique"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr "Nom de domaine dynamique"
@@ -1811,9 +1797,11 @@ msgid "This field is required."
msgstr "Ce champ est requis."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1899,12 +1887,12 @@ msgstr ""
"Installez pour cela l’application Coturn ou "
"bien configurez un serveur externe."
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "ejabberd"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "Serveur de discussion"
@@ -2016,7 +2004,7 @@ msgstr "Dino"
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2083,19 +2071,19 @@ msgstr ""
"Durant l’installation, les autres serveurs de courriels qui seraient "
"présents sur le système seront désinstallés."
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr "Postfix/Dovecot"
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr "Serveur de courriel"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr "Mes alias de courriel"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr "Gérer les alias pour la boîte aux lettres"
@@ -2131,7 +2119,7 @@ msgstr "Ne peut être un nombre"
msgid "Aliases"
msgstr "Liste d’alias"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr "Roundcube"
@@ -2218,7 +2206,7 @@ msgstr ""
"un pare-feu activé et correctement configuré réduit le risque des menaces "
"provenant d’Internet."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "Pare-feu"
@@ -2381,15 +2369,15 @@ msgstr ""
"Pour en apprendre plus sur l’utilisation de Git, consultez ce tutoriel Git."
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr "Accès aux dépôts Git en lecture et en écriture"
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr "Gitweb"
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr "Hébergement Git simple"
@@ -2486,54 +2474,54 @@ msgstr "Supprimer le dépôt Git %(name)s"
msgid "Delete this repository permanently?"
msgstr "Supprimer définitivement ce dépôt ?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr "Dépôt créé."
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr "Une erreur est survenue pendant la création du dépôt."
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr "Dépôt modifié."
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr "Modifier le dépôt"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "Documentation"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr "Manuel utilisateur"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr "Obtenir de l’aide"
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr "Partager vos impressions"
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "Participer"
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "À propos"
@@ -2905,19 +2893,19 @@ msgstr ""
"L’interface web fournie vous guidera dans les étapes de configuration lors "
"de votre première visite."
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr "Gestion de l’application I2P"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr "I2P"
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr "Réseau d'anonymisation"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr "Serveur mandataire I2P"
@@ -2989,15 +2977,15 @@ msgstr ""
"utilisateurs dans la configuration des utilisateurs"
"a>."
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr "ikiwiki"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr "Wiki et blogue"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr "Consultation et modification des applications de wiki"
@@ -3054,32 +3042,32 @@ msgstr ""
"commentaires, ainsi que l'historique des révisions. Voulez-vous supprimer ce "
"wiki ou blogue de façon permanente ?"
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "Wiki {name} créé."
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "Le wiki n'a pu être créé : {error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "Blogue {name} créé."
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "Le blogue n'a pu être créé : {error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr "{title} supprimé."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr "La suppression de {title} n'a pas abouti : {error}"
@@ -3099,11 +3087,11 @@ msgstr ""
"Gobby et installez-le. Lancez ensuite Gobby, sélectionnez « Connect to "
"Server » et saisissez le nom de domaine de la {box_name}."
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr "infinoted"
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr "Serveur Gobby"
@@ -3137,11 +3125,11 @@ msgstr "Une salle de visioconférence simple est incluse."
msgid "Coturn is required to use Janus."
msgstr "Coturn est requis pour utiliser Janus."
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr "Janus"
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr "Salle de visio"
@@ -3163,11 +3151,11 @@ msgstr ""
"JSXC est un client web pour XMPP. Il s’utilise typiquement avec un serveur "
"XMPP tournant sur la même machine."
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr "JSXC"
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr "Client de discussion"
@@ -3200,15 +3188,15 @@ msgstr ""
"repository/\">conditions d’utilisation de Let’s Encrypt avant d’utiliser "
"ce service."
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr "Let's Encrypt"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "Certificats"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr "Test impossible : aucun domaine n’est configuré."
@@ -3273,7 +3261,7 @@ msgstr ""
"Aucun domaine n'a été configuré. Configurez des "
"domaines pour pouvoir leur obtenir des certificats."
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
@@ -3282,30 +3270,30 @@ msgstr ""
"Le certificat du domaine {domain} a été révoqué. Cette modification peut "
"nécessiter quelques instants avant de prendre effet."
-#: plinth/modules/letsencrypt/views.py:47
+#: plinth/modules/letsencrypt/views.py:49
#, python-brace-format
msgid "Failed to revoke certificate for domain {domain}: {error}"
msgstr ""
"Échec de la révocation du certificat pour le domaine {domain} : {error}"
-#: plinth/modules/letsencrypt/views.py:60
-#: plinth/modules/letsencrypt/views.py:77
+#: plinth/modules/letsencrypt/views.py:62
+#: plinth/modules/letsencrypt/views.py:79
#, python-brace-format
msgid "Certificate successfully obtained for domain {domain}"
msgstr "Le certificat pour le domaine {domain} a été obtenu avec succès"
-#: plinth/modules/letsencrypt/views.py:65
-#: plinth/modules/letsencrypt/views.py:82
+#: plinth/modules/letsencrypt/views.py:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr "Échec de l'obtention du certificat pour le domaine {domain} : {error}"
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr "Le certificat pour le domaine {domain} a été supprimé"
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
@@ -3339,7 +3327,7 @@ msgstr ""
"Installez pour cela l’application Coturn ou "
"bien configurez un serveur externe."
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr "Matrix Synapse"
@@ -3483,12 +3471,12 @@ msgstr ""
"Toute personne ayant le lien vers ce wiki peut le consulter. Seuls les "
"utilisateurs connectés avec leur compte peuvent y apporter des modifications."
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr "MediaWiki"
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr "Wiki"
@@ -3563,41 +3551,41 @@ msgstr ""
"Choisissez un thème par défaut pour votre installation de MediaWiki. Les "
"utilisateurs peuvent sélectionner leur thème préféré."
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "Mot de passe mis à jour"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
"Échec de la mise à jour du mot passe. Veuillez choisir un mot de passe plus "
"sûr"
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr "Inscriptions publiques activées"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr "Inscriptions publiques désactivées"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr "Mode privé activé"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr "Mode privé désactivé"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr "Thème par défaut modifié"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr "Nom de domaine modifié"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
msgid "Site name updated"
msgstr "Nom de site modifié"
@@ -3614,11 +3602,11 @@ msgstr ""
"au serveur, vous devez disposer d'un client Minetest."
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr "Minetest"
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr "Bac à sable cubique"
@@ -3672,7 +3660,7 @@ msgstr ""
msgid "Address"
msgstr "Adresse"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3690,15 +3678,15 @@ msgstr ""
"portables, les smartphones, les télévisions et les systèmes de jeu (comme la "
"PS3 ou la Xbox 360) ainsi que les applications telles que Totem ou Kodi."
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr "Serveur de streaming de médias"
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr "MiniDLNA"
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr "Serveur de médias simple"
@@ -3762,11 +3750,11 @@ msgstr ""
"64738. Utilisez l’un des clients Mumble "
"pour vous connecter depuis votre ordinateur ou un appareil mobile."
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr "Mumble"
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr "Tchat vocal"
@@ -3815,15 +3803,15 @@ msgstr "Mumblefly"
msgid "Mumla"
msgstr "Mumla"
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr "Le mot de passe du super utilisateur a été mis à jour."
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr "Mot de passe pour rejoindre modifié"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr "Nom du canal racine modifié."
@@ -3841,7 +3829,7 @@ msgstr ""
"les services HTTP, HTTPS et SSH sont activés ou pas pour les connexions "
"entrantes via le nom en question."
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "Services de nommage"
@@ -3861,7 +3849,7 @@ msgstr "Secure Shell"
msgid "Services"
msgstr "Services"
-#: plinth/modules/networks/__init__.py:36
+#: 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."
@@ -3870,7 +3858,7 @@ msgstr ""
"le Wi-Fi ou le protocole PPPoE. Partage de cette connexion avec d’autres "
"appareils du réseau local."
-#: plinth/modules/networks/__init__.py:38
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
@@ -3878,15 +3866,10 @@ msgstr ""
"Les périphériques gérés par d’autres méthodes pourraient ne pas être "
"disponibles pour être configurés ici."
-#: plinth/modules/networks/__init__.py:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "Réseau"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "Utilise DNSSEC sur IPv{kind}"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "Type de connexion"
@@ -4457,7 +4440,7 @@ msgid "This connection is not active."
msgstr "Cette connexion n'est pas active."
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "Sécurité"
@@ -4509,7 +4492,7 @@ msgid "Create Connection"
msgstr "Créer Connexion"
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "Supprimer Connexion"
@@ -4529,13 +4512,13 @@ msgstr "Espacement"
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "Ethernet"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "Wi-Fi"
@@ -4556,7 +4539,7 @@ msgid "Computer"
msgstr "Machine"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "Modifier la connexion"
@@ -4566,13 +4549,13 @@ msgstr "Connexions"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "Réseaux Wi-Fi à proximité"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "Ajouter une connexion"
@@ -4803,249 +4786,249 @@ msgstr ""
"Elle vous donnera les instructions détaillées sur comment réaliser cette "
"opération."
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr "désactivé"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr "automatique"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr "manuel utilisateur"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr "partagé"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr "lien local"
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr "inconnu"
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr "non géré"
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr "indisponible"
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr "déconnecté"
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr "en cours de préparation"
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr "en cours de connexion"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr "nécessite une authentification"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr "demande d'adresse"
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr "vérification"
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr "attente du secondaire"
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr "activé"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr "en cours de désactivation"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr "Pas d’explication"
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr "erreur inconnue"
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr "Le périphérique est maintenant géré"
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr "Le périphérique n’est plus géré"
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr "échec de configuration"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr "secrets exigés"
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr "le client DHCP n'a pas pu être démarré"
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr "erreur du client DHCP"
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr "Le client DHCP a échoué"
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr "le partage de connexion n'a pas pu démarrer"
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr "Le service de connexion partagée a échoué"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr "Le périphérique a été déconnecté"
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr "Le périphérique a été déconnecté par l’utilisateur"
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr "une dépendance de la connexion a échoué"
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr "Réseau wifi introuvable"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr "Une connexion secondaire a échoué"
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr "une nouvelle activation de la connexion a été mise en file d'attente"
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr "une adresse IP dupliquée a été détectée"
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr "Le protocole IP sélectionné n'est pas pris en charge"
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr "générique"
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr "Interface TUN ou TAP"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr "WireGuard"
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr "ad hoc"
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr "infrastructure"
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr "point d’accès"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr "Point d’accès au réseau maillé"
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "Connexions réseau"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
"Impossible d’afficher les détails de la connexion : connexion introuvable."
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr "Informations sur la connexion"
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "Impossible de modifier la connexion : connexion introuvable."
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
"La configuration de ce type de connexion n'est pas encore pris en charge."
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr "Connexion {name} activée."
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr "Échec d’activation de la connexion : connexion introuvable."
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
"Échec d’activation de la connexion {name} : pas de périphérique adéquat "
"disponible."
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "Connexion {name} désactivée."
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr "Échec de désactivation de la connexion : connexion introuvable."
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr "Ajout d'une nouvelle connexion générique"
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "Ajout d’une nouvelle connexion Ethernet"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "Ajout d’une nouvelle connexion PPPoE"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "Ajout d’une nouvelle connexion Wi-Fi"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "Connexion {name} supprimée."
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr "Échec de suppression de la connexion : connexion introuvable."
@@ -5067,20 +5050,20 @@ msgstr ""
"d’accéder au reste d’Internet au travers de la {box_name} pour une sécurité "
"et un anonymat accrus."
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr "Connexion aux services VPN"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr "OpenVPN"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr "Réseau privé virtuel"
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -5230,15 +5213,15 @@ msgstr ""
"a>. Il se pourrait que dans le futur, l’utilisation de la {box_name} d’un "
"ami pour cela soit également proposée."
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr "PageKite"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr "Visibilité publique"
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr "Domaine PageKite"
@@ -5352,29 +5335,29 @@ msgstr ""
"définition. Par exemple, l’utilisation de ports autre que 443 pour le "
"protocole HTTPS est connu pour causer des problèmes."
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr "Serveur web (HTTP)"
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr "Le site sera accessible sur http://{0}"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr "Serveur web (HTTPS)"
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr "Le site sera accessible sur https://{0}"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr "Shell sécurisé (SSH)"
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
@@ -5383,7 +5366,7 @@ msgstr ""
"net/wiki/Howto/SshOverPageKite/\">wiki PageKite (en anglais)"
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr "Performance"
@@ -5406,7 +5389,7 @@ msgstr ""
"Les métriques de performance sont collectées par le Co-Pilote "
"« Performance » et visualisables dans l’appli Cockpit."
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr "Surveillance du système"
@@ -5414,7 +5397,7 @@ msgstr "Surveillance du système"
msgid "Restart or shut down the system."
msgstr "Redémarrer ou éteindre le système."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "Alimentation"
@@ -5507,15 +5490,15 @@ msgstr ""
"\"http://config.privoxy.org\">http://config.privoxy.org/ ou http://p.p."
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr "Privoxy"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr "Serveur mandataire web"
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr "Accéder à l'URL {url} avec le mandataire {proxy} sur tcp{kind}"
@@ -5551,11 +5534,11 @@ msgstr ""
"quasseldroid.iskrembilen.com/\">mobile sont disponibles pour "
"téléchargement."
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr "Client IRC"
@@ -5591,12 +5574,12 @@ msgstr ""
"charge l’ajout d’événements ou de contacts, opérations qui doivent être "
"réalisées avec un client dédié."
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr "Radicale"
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr "Agenda et carnet d’adresses"
@@ -5721,7 +5704,7 @@ msgstr ""
"settings/security/lesssecureapps\">https://www.google.com/settings/security/"
"lesssecureapps)."
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr "Client de courriel"
@@ -5768,16 +5751,16 @@ msgstr ""
"a> pour suivre différents sites internet. Lors de l'ajout d'un fil, activez "
"l'authentification et utilisez les identifiants de {box_name}."
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr "Lecture et abonnement à des flux d’actualités"
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr "RSS-Bridge"
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr "Générateur de fil RSS"
@@ -5823,15 +5806,15 @@ msgstr ""
"Partage de dossier personnel : chaque utilisateur du groupe freedombox-share "
"a son propre espace privé."
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr "Accès aux partages privés"
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr "Samba"
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr "Stockage de fichiers réseau"
@@ -5967,15 +5950,15 @@ msgstr ""
"Searx peut être utilisé pour éviter le pistage et le profilage fait par les "
"moteurs de recherche. Par défaut il ne stocke aucun cookie."
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr "Recherches sur le Web"
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr "Searx"
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr "Recherche web"
@@ -6074,7 +6057,7 @@ msgstr ""
"les contributeurs de Debian et la communauté %(box_name)s."
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr "Rapport de sécurité"
@@ -6154,12 +6137,12 @@ msgstr "Non"
msgid "Not running"
msgstr "Inactif"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Erreur lors de la mise en place de l’accès restreint : {exception}"
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr "Configuration de sécurité mise à jour"
@@ -6175,11 +6158,11 @@ msgstr ""
"Notez que Shaarli ne sait gérer qu’un unique compte utilisateur, que vous "
"devrez configurer lors de votre première visite."
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "Shaarli"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr "Signets"
@@ -6220,11 +6203,11 @@ msgstr ""
"l’URL de mandataire SOCKS5 sur votre appareil, navigateur ou application "
"avec l’URL http://adresse_freedombox:1080/"
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr "Shadowsocks"
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr "Mandataire Socks5"
@@ -6257,7 +6240,7 @@ msgstr ""
"Méthode de chiffrement. Doit correspondre à celle qui a été configurée sur "
"le serveur."
-#: plinth/modules/sharing/__init__.py:20
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -6266,7 +6249,7 @@ msgstr ""
"« Partages » vous permet de partager des fichiers et répertoires de votre "
"{box_name} sur Internet avec des groupes d’utilisateurs bien définis."
-#: plinth/modules/sharing/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr "Partages"
@@ -6321,28 +6304,28 @@ msgid "Shares should be either public or shared with at least one group"
msgstr ""
"Les partages peuvent être soit publics soit partagés avec au moins un groupe"
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr "Ajouter un partage"
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr "Aucun partage actuellement configuré."
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr "Chemin"
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr "Partagé sur"
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr "Accessible aux groupes"
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr "Accès public"
@@ -6400,7 +6383,7 @@ msgstr ""
"peuvent pas remplacent pas les sauvegardes"
"a> car ils sont forcément conservés sur la même partition. "
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr "Instantanés de disque"
@@ -6504,7 +6487,7 @@ msgstr "Date"
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr "Supprimer les instantanés"
@@ -6558,54 +6541,54 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr "Revenir à l'instantané #%(number)s"
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr "créé manuellement"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr "historique"
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr "apt"
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr "Gestion des instantanés"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr "Instantané créé."
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr "Configuration des instantanés de disque mise à jour"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Erreur sur action : {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr "Supprimer les instantanés sélectionnés"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
"L’instantané est en cours d’utilisation. Veuillez réessayer ultérieurement."
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, 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:214
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:226
msgid "Rollback to Snapshot"
msgstr "Revenir à l'instantané"
@@ -6621,7 +6604,7 @@ 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/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr "Serveur Secure Shell (SSH)"
@@ -6667,7 +6650,7 @@ msgstr "Authentification SSH par mot de passe désactivée."
msgid "SSH authentication with password enabled."
msgstr "Authentification SSH par mot de passe activée."
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr "Authentification unique"
@@ -6691,109 +6674,109 @@ msgstr ""
"d’utilisation, monter et démonter des médias amovibles, étendre la partition "
"racine, etc."
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr "Stockage"
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} octets"
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} Kio"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} Mio"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} Gio"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} Tio"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr "L'opération a échoué."
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr "L'opération a été annulée."
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr "Le périphérique est déjà en train d’être démonté."
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
"L’opération n’est pas disponible par manque d’un pilote ou d’un outil adapté."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr "L'opération ne s'est pas terminée."
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
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:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr "Tentative de démontage d’un périphérique en cours d’utilisation."
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr "L'opération a déjà été annulée."
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
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:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr "Le périphérique est déjà monté."
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr "Le périphérique n’est pas monté."
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr "Vous n'êtes pas autorisé à utiliser l'option demandée."
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr "Le périphérique est monté par un autre utilisateur."
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
"Espace disque faible sur la partition système : {percent_used}% utilisés, "
"{free_space} libres."
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr "Espace disque faible"
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr "Erreur disque imminente"
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6952,16 +6935,16 @@ msgstr ""
"accessible uniquement aux utilisateurs membres des groupes « admin » ou "
"« syncthing-access »."
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr "Administration de l’application Syncthing"
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr "Syncthing"
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr "Synchronisation de fichiers"
@@ -6988,40 +6971,40 @@ msgstr ""
"Un port SOCKS pour Tor est accessible sur votre {box_name} pour les réseaux "
"internes via le port TCP 9050."
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr "Tor"
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr "Service onion Tor"
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr "Mandataire Socks Tor"
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr "Relais Tor de type pont (« bridge relay »)"
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr "Le port du relais Tor est disponible"
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr "Abonné au transport obfs3"
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr "Abonné au transport obfs4"
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, 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:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Confirmez l'utilisation de Tor pour {url} sur tcp{kind}"
@@ -7151,7 +7134,7 @@ msgstr "Service Onion"
msgid "Ports"
msgstr "Ports"
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "Paramètre inchangé"
@@ -7209,7 +7192,7 @@ msgstr ""
"Une fois qu'un téléchargement est terminé, vous pouvez également accéder à "
"vos fichiers au moyen de l'application Partage."
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr "Transmission"
@@ -7244,11 +7227,11 @@ msgstr ""
"ordinateur, saisissez l’URL tt-rss-app pour "
"vous connecter."
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr "Tiny Tiny RSS"
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr "Lecteur de flux d'informations"
@@ -7277,22 +7260,22 @@ msgstr ""
"nécessaire, il est effectué à 2h00, rendant indisponible l’ensemble des "
"applications pour une courte période."
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr "Mise à jour du système"
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr "FreedomBox mise à jour"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr "Impossible de lancer la mise à niveau de la distribution"
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
@@ -7303,11 +7286,11 @@ msgstr ""
"sont disponibles. Si activée, la mise à niveau automatique de la "
"distribution sera retentée dans 24H."
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr "Mise à niveau de la distribution démarrée"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -7405,6 +7388,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr "Fermer"
@@ -7530,15 +7514,15 @@ msgstr ""
"principale. En revanche, seuls les utilisateurs membres du groupe admin"
"em> peuvent modifier les applications ou changer les paramètres système."
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr "Utilisateurs et groupes"
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr "Accès à tous les services et à la configuration du système"
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Vérification de l’entrée LDAP « {search_item} »"
@@ -8184,12 +8168,12 @@ msgstr ""
"la mise à jour de modules additionnels et de thèmes se fait à vos risques et "
"périls."
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr "WordPress"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr "Site web et blogue"
@@ -8241,11 +8225,11 @@ msgstr ""
"l’administrateur Zoph. Pour ajouter des utilisateurs ceux-ci doivent être "
"créés à la fois sur la {box_name} et dans Zoph avec le même identifiant."
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr "Zoph"
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr "Photothèque"
@@ -8284,37 +8268,112 @@ msgstr "PPPoE"
msgid "Generic"
msgstr "Générique"
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Erreur lors de la définition du nom de machine : {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, fuzzy, python-brace-format
+#| msgid "Service disabled: {name}"
+msgid "Finished: {name}"
+msgstr "Service désactivé : {name}"
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr "Le paquet {expression} n’est pas disponible à l’installation"
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr "Le paquet {package_name} est à la dernière version ({latest_version})"
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr "Erreur pendant l’installation"
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr "installation en cours"
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr "téléchargement en cours"
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr "changement de support"
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr "fichier de configuration : {file}"
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "Installer des applications"
+
+#: plinth/setup.py:46
+#, fuzzy
+#| msgid "Updating..."
+msgid "Updating app"
+msgstr "Mise à jour en cours…"
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Erreur lors de l’installation de l’application : {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Erreur lors de l’installation de l’application : {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Erreur lors de l’installation de l’application : {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Erreur lors de l’installation de l’application : {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Application installée."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "Dernière mise à jour"
+
+#: plinth/setup.py:411
+#, fuzzy
+#| msgid "Upgrade Packages"
+msgid "Updating app packages"
+msgstr "Mise à Niveau Paquets"
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Non autorisé"
@@ -8636,6 +8695,10 @@ msgstr "Depuis les ports routeur/Internet (WAN)"
msgid "To %(box_name)s Ports"
msgstr "Vers les ports %(box_name)s"
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Application installée."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr "Installer cette application ?"
@@ -8646,23 +8709,15 @@ msgstr ""
"Cette application a besoin d'une mise à jour. Mettre à jour maintenant ?"
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-"Une autre installation ou mise à niveau est déjà en cours. Veuillez "
-"patienter quelques instants avant de réessayer."
-
-#: plinth/templates/setup.html:46
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:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr "Vérifier à nouveau"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
@@ -8672,36 +8727,43 @@ msgstr ""
"système sont incompatibles avec l’installation de cette application. Si vous "
"choisissez de continuer, les paquets suivants seront supprimés :"
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr "Installer"
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr "Mises à jour"
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr "Préinstallation en cours"
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr "Postinstallation en cours"
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr "Installation de %(package_names)s : %(status)s"
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "%(percentage)s%% effectué"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr "Gujarati"
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "Utilise DNSSEC sur IPv{kind}"
+
+#~ msgid ""
+#~ "Another installation or upgrade is already running. Please wait for a few "
+#~ "moments before trying again."
+#~ msgstr ""
+#~ "Une autre installation ou mise à niveau est déjà en cours. Veuillez "
+#~ "patienter quelques instants avant de réessayer."
+
+#~ msgid "Performing pre-install operation"
+#~ msgstr "Préinstallation en cours"
+
+#~ msgid "Performing post-install operation"
+#~ msgstr "Postinstallation en cours"
+
+#, python-format
+#~ msgid "Installing %(package_names)s: %(status)s"
+#~ msgstr "Installation de %(package_names)s : %(status)s"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "%(percentage)s%% effectué"
+
#~ 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."
@@ -9741,9 +9803,6 @@ msgstr "Gujarati"
#~ msgid "Service enabled: {name}"
#~ msgstr "Service activé : {name}"
-#~ msgid "Service disabled: {name}"
-#~ msgstr "Service désactivé : {name}"
-
#~ msgid "PageKite Account"
#~ msgstr "Compte PageKite"
@@ -10178,9 +10237,6 @@ msgstr "Gujarati"
#~ msgid "Automatic Upgrades"
#~ msgstr "Mises à niveau automatiques"
-#~ msgid "Upgrade Packages"
-#~ msgstr "Mise à Niveau Paquets"
-
#, fuzzy
#~| msgid "Create User"
#~ msgid "Create archive"
diff --git a/plinth/locale/gl/LC_MESSAGES/django.po b/plinth/locale/gl/LC_MESSAGES/django.po
index dab3557e3..b3b0bde65 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2021-01-18 12:32+0000\n"
"Last-Translator: ikmaak \n"
"Language-Team: Galician freedns.afraid.org."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr ""
@@ -1597,9 +1583,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1675,12 +1663,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr ""
@@ -1773,7 +1761,7 @@ msgstr ""
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1818,21 +1806,21 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
#, fuzzy
#| msgid "Web Server"
msgid "Email Server"
msgstr "Servidor web"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr ""
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr ""
@@ -1866,7 +1854,7 @@ msgstr ""
msgid "Aliases"
msgstr ""
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr ""
@@ -1947,7 +1935,7 @@ msgid ""
"configured reduces risk of security threat from the Internet."
msgstr ""
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr ""
@@ -2084,15 +2072,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2188,27 +2176,27 @@ msgstr ""
msgid "Delete this repository permanently?"
msgstr ""
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr ""
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr ""
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr ""
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
#, fuzzy
#| msgid "Manual"
@@ -2216,28 +2204,28 @@ msgctxt "User guide"
msgid "Manual"
msgstr "Manual"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Acerca de"
@@ -2515,19 +2503,19 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr ""
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr ""
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr ""
@@ -2580,15 +2568,15 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr ""
@@ -2642,32 +2630,32 @@ msgid ""
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
@@ -2684,11 +2672,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr ""
@@ -2720,11 +2708,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -2744,11 +2732,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr ""
@@ -2770,15 +2758,15 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -2841,36 +2829,36 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, 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:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
@@ -2892,7 +2880,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr ""
@@ -2996,12 +2984,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3064,39 +3052,39 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
msgid "Site name updated"
msgstr ""
@@ -3109,11 +3097,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr ""
@@ -3158,7 +3146,7 @@ msgstr ""
msgid "Address"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3169,15 +3157,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3230,11 +3218,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr ""
@@ -3276,15 +3264,15 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr ""
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3297,7 +3285,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr ""
@@ -3319,27 +3307,22 @@ msgstr ""
msgid "Services"
msgstr "Descubrimento de servizo"
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr ""
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr ""
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
@@ -3816,7 +3799,7 @@ msgid "This connection is not active."
msgstr ""
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr ""
@@ -3859,7 +3842,7 @@ msgid "Create Connection"
msgstr ""
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr ""
@@ -3879,13 +3862,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr ""
@@ -3906,7 +3889,7 @@ msgid "Computer"
msgstr ""
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr ""
@@ -3916,13 +3899,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr ""
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
@@ -4105,247 +4088,247 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr ""
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr ""
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
#, fuzzy
#| msgid "Manual"
msgid "manual"
msgstr "Manual"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr ""
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr ""
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr ""
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr ""
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr ""
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr ""
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr ""
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr ""
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr ""
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr ""
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr ""
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr ""
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr ""
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr ""
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr ""
@@ -4360,20 +4343,20 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4481,15 +4464,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr ""
@@ -4595,36 +4578,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -4641,7 +4624,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr ""
@@ -4649,7 +4632,7 @@ msgstr ""
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr ""
@@ -4720,15 +4703,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -4752,11 +4735,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr ""
@@ -4781,12 +4764,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -4876,7 +4859,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr ""
@@ -4912,16 +4895,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -4956,15 +4939,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr ""
@@ -5088,15 +5071,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr ""
@@ -5177,7 +5160,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr ""
@@ -5242,12 +5225,12 @@ msgstr ""
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr ""
@@ -5261,11 +5244,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5295,11 +5278,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5328,14 +5311,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr ""
@@ -5383,28 +5366,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -5450,7 +5433,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr ""
@@ -5544,7 +5527,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr ""
@@ -5592,55 +5575,55 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
#, fuzzy
#| msgid "Manual"
msgid "manually created"
msgstr "Manual"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -5652,7 +5635,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -5693,7 +5676,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -5713,104 +5696,104 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -5944,16 +5927,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -5973,40 +5956,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6112,7 +6095,7 @@ msgstr ""
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr ""
@@ -6158,7 +6141,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr ""
@@ -6183,11 +6166,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6208,35 +6191,35 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
#, fuzzy
#| msgid "FreedomBox"
msgid "FreedomBox Updated"
msgstr "FreedomBox"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6314,6 +6297,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6421,15 +6405,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -6996,12 +6980,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr ""
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr ""
@@ -7036,11 +7020,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7074,37 +7058,103 @@ msgstr ""
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Produciuse un erro ao instalar o aplicativo: {error}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+msgid "Installing app"
+msgstr ""
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Produciuse un erro ao instalar o aplicativo: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Produciuse un erro ao instalar o aplicativo: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Produciuse un erro ao instalar o aplicativo: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Produciuse un erro ao instalar o aplicativo: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Aplicativo instalado."
+
+#: plinth/setup.py:91
+msgid "App updated"
+msgstr ""
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -7392,6 +7442,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr ""
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Aplicativo instalado."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr ""
@@ -7401,52 +7455,28 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr ""
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr ""
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr ""
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/gu/LC_MESSAGES/django.po b/plinth/locale/gu/LC_MESSAGES/django.po
index b35cd6aa6..e0c43de54 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2021-01-18 12:32+0000\n"
"Last-Translator: ikmaak \n"
"Language-Team: Gujarati થી ઉપલબ્ધ થશે. તેનો પહેલાથી નક્કી પાસવર્ડ 'deluge' છે, પરંતુ આ સેવા સક્રિય "
"કાર્ય બાદ તુરંત જ આપે લોગ ઇન કરી ને તેને બદલી નાખવો જોઈએ."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "BitTorrent કાર્યક્રમોનો ઉપયોગ કરીને ફાઇલો ડાઉનલોડ કરો"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "અનરાધાર"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "બીટ ટોરેન્ટ વેબ ક્લાયન્ટ"
@@ -1449,56 +1435,56 @@ msgstr ""
"સીસ્ટમ તપાસ પરિક્ષણ આપની એપ્લીકેશન અને સેવાઓ નિર્ધારિત રીતે કામ કરે છે કે નહિ, તે ચકાસવા "
"આપની સીસ્ટમ પર અમુક પરીક્ષણો કરશે."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "તપાસ"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr ""
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr ""
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
"{memory_available_unit} free. {advice_message}"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr ""
@@ -1598,11 +1584,11 @@ msgstr ""
"net અથવા તમે મફત અપડેટ URL આધારિત સેવાઓને અહીંથી શોધી શકો છો freedns.afraid.org."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "ડાયનેમિક DNS ક્લાયન્ટ"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
#, fuzzy
#| msgid "Domain Name"
msgid "Dynamic Domain Name"
@@ -1733,9 +1719,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1829,12 +1817,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "ઈઝબેબર્ડ"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "ચેટ સર્વર"
@@ -1943,7 +1931,7 @@ msgstr "ડિનો"
msgid "Gajim"
msgstr "ગજિમ"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1991,23 +1979,23 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
#, fuzzy
#| msgid "Chat Server"
msgid "Email Server"
msgstr "ચેટ સર્વર"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
#, fuzzy
#| msgid "Documentation"
msgid "My Email Aliases"
msgstr "દસ્તાવેજીકરણ"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
#, fuzzy
#| msgid "Documentation"
msgid "Manage Aliases for Mailbox"
@@ -2045,7 +2033,7 @@ msgstr ""
msgid "Aliases"
msgstr "દસ્તાવેજીકરણ"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr ""
@@ -2133,7 +2121,7 @@ msgstr ""
"છે {box_name}. ફાયરવૉલ સક્ષમ અને યોગ્ય રીતે રૂપરેખાંકિત રાખીને ઇન્ટરનેટથી સુરક્ષાના ભયને "
"ઘટાડે છે."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "ફાયરવોલ"
@@ -2278,15 +2266,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2396,29 +2384,29 @@ msgstr ""
msgid "Delete this repository permanently?"
msgstr ""
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr ""
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
#, fuzzy
#| msgid "Documentation"
msgid "Edit repository"
msgstr "દસ્તાવેજીકરણ"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "દસ્તાવેજીકરણ"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
#, fuzzy
#| msgid "Manual"
@@ -2426,28 +2414,28 @@ msgctxt "User guide"
msgid "Manual"
msgstr "માર્ગદર્શિકા"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "વિશે"
@@ -2727,21 +2715,21 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
#, fuzzy
#| msgid "Enable application"
msgid "Manage I2P application"
msgstr "એપ્લીકેશનને પ્રસ્થાપિત કરો"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr ""
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr ""
@@ -2794,15 +2782,15 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr ""
@@ -2856,32 +2844,32 @@ msgid ""
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
@@ -2898,11 +2886,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr ""
@@ -2934,11 +2922,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -2958,11 +2946,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr ""
@@ -2984,15 +2972,15 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -3055,36 +3043,36 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, 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:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
@@ -3106,7 +3094,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr ""
@@ -3212,12 +3200,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3284,51 +3272,51 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
#, fuzzy
#| msgid "Application installed."
msgid "Public registrations enabled"
msgstr "એપ્લીકેશન પ્રસ્થાપિત થઇ ગઈ છે."
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
#, fuzzy
#| msgid "Application installed."
msgid "Public registrations disabled"
msgstr "એપ્લીકેશન પ્રસ્થાપિત થઇ ગઈ છે."
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
#, fuzzy
#| msgid "Application enabled"
msgid "Private mode enabled"
msgstr "એપ્લિકેશન સક્ષમ કરો"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
#, fuzzy
#| msgid "Application disabled"
msgid "Private mode disabled"
msgstr "એપ્લિકેશન અક્ષમ છે"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
#, fuzzy
#| msgid "Setting unchanged"
msgid "Default skin changed"
msgstr "સેટિંગ યથાવત"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Domain name set"
msgid "Domain name updated"
msgstr "ક્ષેત્રીય નામ સ્થાપિત કર્યું"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
#, fuzzy
#| msgid "Domain name set"
msgid "Site name updated"
@@ -3343,11 +3331,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr ""
@@ -3392,7 +3380,7 @@ msgstr ""
msgid "Address"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3403,15 +3391,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3464,11 +3452,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr ""
@@ -3512,17 +3500,17 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
#, fuzzy
#| msgid "Password"
msgid "Join password changed"
msgstr "પાસવર્ડ"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3535,7 +3523,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr ""
@@ -3557,27 +3545,22 @@ msgstr ""
msgid "Services"
msgstr "સેવા પ્રકાર"
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr ""
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr ""
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
@@ -4057,7 +4040,7 @@ msgid "This connection is not active."
msgstr ""
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr ""
@@ -4100,7 +4083,7 @@ msgid "Create Connection"
msgstr ""
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr ""
@@ -4120,13 +4103,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr ""
@@ -4147,7 +4130,7 @@ msgid "Computer"
msgstr ""
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr ""
@@ -4159,13 +4142,13 @@ msgstr "વાતચીત"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr ""
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
@@ -4351,257 +4334,257 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
#, fuzzy
#| msgid "Disabled"
msgid "disabled"
msgstr "અક્ષમ કરેલું"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr ""
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
#, fuzzy
#| msgid "Manual"
msgid "manual"
msgstr "માર્ગદર્શિકા"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr ""
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr ""
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr ""
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
#, fuzzy
#| msgid "Conversations"
msgid "connecting"
msgstr "વાતચીત"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "needs authentication"
msgstr "HTTP મૂળભૂત પ્રમાણીકરણનો ઉપયોગ કરો"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr ""
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr ""
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
#, fuzzy
#| msgid "Configuration updated"
msgid "configuration failed"
msgstr "રૂપરેખાંકન સુધારાયુ"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr ""
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
#, fuzzy
#| msgid "DNS server configuration updated"
msgid "shared connection service failed"
msgstr "DNS સર્વર ગોઠવણી સુધરી"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr ""
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr ""
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr ""
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr ""
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr ""
@@ -4616,22 +4599,22 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
#, fuzzy
#| msgid "Conversations"
msgid "Connect to VPN services"
msgstr "વાતચીત"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4739,15 +4722,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr ""
@@ -4853,36 +4836,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -4899,7 +4882,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
#, fuzzy
#| msgid "System Configuration"
msgid "System Monitoring"
@@ -4909,7 +4892,7 @@ msgstr "સિસ્ટમ રૂપરેખાંકન"
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr ""
@@ -4980,15 +4963,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -5012,11 +4995,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr ""
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr ""
@@ -5041,12 +5024,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -5136,7 +5119,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr ""
@@ -5176,16 +5159,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5220,15 +5203,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr ""
@@ -5354,15 +5337,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr ""
@@ -5443,7 +5426,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr ""
@@ -5508,12 +5491,12 @@ msgstr ""
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr ""
@@ -5527,11 +5510,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5561,11 +5544,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5594,14 +5577,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr ""
@@ -5649,28 +5632,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -5716,7 +5699,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr ""
@@ -5810,7 +5793,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr ""
@@ -5858,56 +5841,56 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
#, fuzzy
#| msgid "Last update"
msgid "manually created"
msgstr "છેલ્લો સુધારો"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
#, fuzzy
msgid "Storage snapshots configuration updated"
msgstr "DNSSEC ગોઠવણીને સુધારેલી શરુ કરો"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -5919,7 +5902,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -5964,7 +5947,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -5984,104 +5967,104 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6217,16 +6200,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -6246,40 +6229,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6387,7 +6370,7 @@ msgstr "ડાયનેમિક DNS સેવા"
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "સેટિંગ યથાવત"
@@ -6437,7 +6420,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr ""
@@ -6466,11 +6449,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6491,37 +6474,37 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
#, fuzzy
#| msgid "FreedomBox"
msgid "FreedomBox Updated"
msgstr "ફ્રિડમબોક્ષ"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
#, fuzzy
#| msgid "User registrations disabled"
msgid "Distribution update started"
msgstr "વપરાશકર્તા રજીસ્ટ્રેશન અક્ષમ છે"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6603,6 +6586,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6714,15 +6698,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -7315,12 +7299,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr ""
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr ""
@@ -7355,11 +7339,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7395,37 +7379,107 @@ msgstr ""
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "હોસ્ટનું નામ સ્થાપિત કરતાં ભૂલ થઇ: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "એપ્લિકેશન્સ ઇન્સ્ટોલ કરો"
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "એપ્લીકેશન પ્રસ્થાપિત કરતાં ભૂલ થઇ છે: {string}{details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "એપ્લીકેશન પ્રસ્થાપિત કરતાં ભૂલ થઇ છે: {string}{details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "એપ્લીકેશન પ્રસ્થાપિત કરતાં ભૂલ થઇ છે: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "એપ્લીકેશન પ્રસ્થાપિત કરતાં ભૂલ થઇ છે: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "એપ્લીકેશન પ્રસ્થાપિત થઇ ગઈ છે."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "છેલ્લો સુધારો"
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -7728,6 +7782,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr ""
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "એપ્લીકેશન પ્રસ્થાપિત થઇ ગઈ છે."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr ""
@@ -7737,52 +7795,28 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr ""
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr ""
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr ""
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/hi/LC_MESSAGES/django.po b/plinth/locale/hi/LC_MESSAGES/django.po
index 9b73446cc..b7c9474ee 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2021-01-18 12:32+0000\n"
"Last-Translator: ikmaak \n"
"Language-Team: Hindi कोई से एक {box_name} के सात पहुंच "
"सकते हैं. निजी जानकारी आैर सिस्टम बदलने का योग्यता सिर्फ व्यवस्थापक लोग के पास है."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "कॉकपिट"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "सर्वर एडमिनिस्ट्रेशन"
@@ -1238,18 +1224,18 @@ msgid ""
"name, webserver home page etc."
msgstr ""
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "सामान्य कॉन्फ़िगरेशन"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "कॉन्फ़िगर करें"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1426,11 +1412,11 @@ msgid ""
"be configured with the details provided here."
msgstr ""
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr ""
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr ""
@@ -1455,11 +1441,11 @@ msgid ""
msgstr ""
"नेटवर्क समय सर्वर एक प्रोग्रम है कि सिस्टम समय इंटरनेट सर्वरसॅ के सात में बनाए रखता है."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "तारीख और समय"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr ""
@@ -1506,17 +1492,17 @@ msgstr ""
"डिफ़ॉल्ट पासवर्ड 'डेलूज' है लेकिन आप डेलूज से सक्षम करके आपको लॉग ऑन करना चाहिये आैर इसको "
"बदलना चाहिये."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "बिटटोरेंट एप्लिकेशन उपयोग कर फ़ाइल डाउनलोड करें"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "डेलूज"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "बिटटोरेंट वेब ग्राहक"
@@ -1536,60 +1522,60 @@ msgstr ""
"पुष्टि करने के लिये कि एप्लिकेशन या सेवाएं अच्छेसे चल रहे है, सिस्टम निदान परिक्षा बहुत सारे "
"चेकों करोगे."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "निदानिकी"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
#, fuzzy
#| msgid "Quassel"
msgid "passed"
msgstr "क्वासेल"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
#, fuzzy
#| msgid "Setup failed."
msgid "failed"
msgstr "सेटअप विफल."
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr ""
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr ""
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
"{memory_available_unit} free. {advice_message}"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr ""
@@ -1689,11 +1675,11 @@ msgstr ""
"यहाँ मिलें freedns.afraid."
"org."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "डायनेमिक डिएनएस ग्राहक"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
#, fuzzy
#| msgid "Domain Name"
msgid "Dynamic Domain Name"
@@ -1825,9 +1811,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1928,12 +1916,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "एजाबेरड"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "चाट सर्वर"
@@ -2038,7 +2026,7 @@ msgstr "डिनो"
msgid "Gajim"
msgstr "गाजिम"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2086,23 +2074,23 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
#, fuzzy
#| msgid "Chat Server"
msgid "Email Server"
msgstr "चाट सर्वर"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
#, fuzzy
#| msgid "Create User"
msgid "My Email Aliases"
msgstr "यूसर बनाये"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
#, fuzzy
#| msgid "Create User"
msgid "Manage Aliases for Mailbox"
@@ -2142,7 +2130,7 @@ msgstr ""
msgid "Aliases"
msgstr "यूसर बनाये"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr "राउंडक्यूब"
@@ -2234,7 +2222,7 @@ msgstr ""
"को नियंत्रित करता है. फ़ायरवॉल सक्षम और ठीक से कॉंफ़िगर रखते हुए इंटरनेट से सुरक्षा खतरे का "
"जोखिम कम कर देता है."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "फ़ायरवॉल"
@@ -2386,15 +2374,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2519,31 +2507,31 @@ msgstr "विकी और ब्लॉग हटाईये %(name)sसंपादितकर सकते है. वह युज़र कॉन्फ़िगरेशन पर "
"आपको यह अनुमति बदल सकता और नया युज़रसॅ को जोडं सकता है."
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr "इकिविकि"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr "विकि और ब्लॉग"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr "विकी एप्लिकेशन को देखें और संपादित करें"
@@ -3041,33 +3029,33 @@ msgstr ""
"यह कार्य सब पोस्ट, पेज और टिप्पणियां निकाल देगी, संशोधन इतिहास भी. यह ब्लॉग और विकी "
"हमेशा से हटा करें?"
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "विकी बनाया है {name}."
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "विकी नहीं बना सकता है:{error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "ब्लॉग बनाया है {name}."
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "ब्लॉग नहीं बना सकता है: {error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, fuzzy, python-brace-format
#| msgid "{name} deleted."
msgid "{title} deleted."
msgstr "{name} हटा गया है."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, fuzzy, python-brace-format
#| msgid "Could not delete {name}: {error}"
msgid "Could not delete {title}: {error}"
@@ -3088,11 +3076,11 @@ msgstr ""
"डाउनलोड और इंस्टॉल करें. फिर गोबी शुरु करें, \"सर्वर से कनेक्ट\" चुनें और {box_name} "
"कर डोमेन नाम दर्ज करें."
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr "इन्फिनोटेड़"
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr "गोबी सर्वर"
@@ -3124,11 +3112,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -3150,11 +3138,11 @@ msgstr ""
"जेएसएक्ससि, एक्सएमपिपि को एक वेब क्लाइंट है. अाम तौर पर यह एक्सएमपिपि के सात उपयोग "
"किया जाता है."
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr "जेएसएक्ससि"
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr "चैट क्लाइंट"
@@ -3184,15 +3172,15 @@ msgstr ""
"\"https://letsencrypt.org/repository/\"> लेटस एंक्रिप्ट ग्राहक समझौते इस "
"सिरविस उपयोग करने से पहले."
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr "लेटस एंक्रिप्ट"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "प्रमाण पत्र"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -3260,7 +3248,7 @@ msgstr ""
"कोई डोमेन कॉंफ़िगर नहीं किया गया है. डोमेन कॉंफ़िगर करें उंहें के लिए प्रमाणपत्र प्राप्त करने के "
"लिये."
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
@@ -3269,29 +3257,29 @@ msgstr ""
"डोमेन पर प्रमाणपत्र कामयाबी सेवापस ले लिया गया{domain}. यह कुछ समय को प्रभावी करने के "
"लिए ले सकता है."
-#: plinth/modules/letsencrypt/views.py:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr "डोमेन के लिए प्रमाणपत्र कामयाबी से नहीं प्राप्त किया {domain}:{error}"
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr "डोमेन के लिए प्रमाणपत्र कामयाबी से हटाया गया {domain}"
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr "डोमेन के लिए प्रमाणपत्र नहीं हटाया गया {domain}:{error}"
@@ -3318,7 +3306,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr "मैट्रिक्स सिनापसॅ"
@@ -3447,12 +3435,12 @@ msgstr ""
"किसी के साथ लिंक है, वह इस विकी पढ़ सकते हैं. सिर्फ लॉगइन किए गए यूसरसॅ ही सामग्री में "
"परिवर्तन कर सकते हैं."
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr "मीडियाविकी"
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr "विकी"
@@ -3525,46 +3513,46 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "पासवर्ड अपडेट"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
#, fuzzy
#| msgid "Password used to encrypt data. Must match server password."
msgid "Password update failed. Please choose a stronger password"
msgstr ""
"डेटा एंक्रिप्ट करने के लिए पासवर्ड उपयोग किया गया . सर्वर पासवर्ड से मेल खाना चाहिए."
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr "सार्वजनिक रेगीसट्रेशिन सक्षम किया"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr "सार्वजनिक रेगीसट्रेशिन अक्षम किया"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr "निजी मोड सक्षम किया"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr "निजी मोड सक्षम किया"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
#, fuzzy
#| msgid "Setting unchanged"
msgid "Default skin changed"
msgstr "सेटिंग स्थिर है"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Domain name set"
msgid "Domain name updated"
msgstr "डोमेन नाम सेट हो गया है"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
#, fuzzy
#| msgid "Domain name set"
msgid "Site name updated"
@@ -3582,11 +3570,11 @@ msgstr ""
"{box_name} पर चल सकवाते है, डिफ़ॉल्ट पोर्ट (३००००) पर. सर्वर से कनेक्ट करने के लिए, एक "
"मैइनटेस्ट क्लायंटकी आवश्यकता है."
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr "मैइनटेस्ट"
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr "ब्लॉक सेंडबोक्स"
@@ -3633,7 +3621,7 @@ msgstr "अक्षम होने पर खिलाड़ियों न
msgid "Address"
msgstr "ऍड्रेस"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3644,15 +3632,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3713,11 +3701,11 @@ msgstr ""
"mumble.info\">Clients अापके डेस्कटॉप और एंड्रॉयड डिवाइस से ममबल से कनेक्ट होने के "
"लिए उपलब्ध हैं."
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr "ममबल"
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr "वॉयस चैट"
@@ -3767,19 +3755,19 @@ msgstr "ममबलफ्लाई"
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
#, fuzzy
#| msgid "Password changed successfully."
msgid "SuperUser password successfully updated."
msgstr "पासवर्ड सफलतापूर्वक बदल गया."
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
#, fuzzy
#| msgid "Upload password updated"
msgid "Join password changed"
msgstr "अपलोड पासवर्ड अद्यतन किया गया"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3792,7 +3780,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "नाम सरविस"
@@ -3814,27 +3802,22 @@ msgstr "सुरक्षित शेल"
msgid "Services"
msgstr "सर्विस"
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "नेटवर्क्स"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "DNSSEC आईपीवी पर उपयोग कर रहा है{kind}"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "कनेक्शन टाइप"
@@ -4334,7 +4317,7 @@ msgid "This connection is not active."
msgstr "यह कनेक्शन सक्रिय नहीं है."
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "सुरक्षा"
@@ -4383,7 +4366,7 @@ msgid "Create Connection"
msgstr "कनेक्शन बनाएँ"
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "कनेक्शन हटाएँ"
@@ -4403,13 +4386,13 @@ msgstr "स्पेसिंग"
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "इथरनेट"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "वाई-फ़ाई"
@@ -4430,7 +4413,7 @@ msgid "Computer"
msgstr "कंप्यूटर"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "कनेक्शन संपादित करें"
@@ -4442,13 +4425,13 @@ msgstr "कनेक्शन"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "पास के वाई-फाई नेटवर्क"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "कनेक्शन जोड़ें"
@@ -4637,299 +4620,299 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
#, fuzzy
#| msgid "Disabled"
msgid "disabled"
msgstr "अक्षम किया गया है"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
#, fuzzy
#| msgid "Automatic"
msgid "automatic"
msgstr "ऑटोमैटिक"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
#, fuzzy
#| msgid "Manual"
msgid "manual"
msgstr "मैन्युअल"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
#, fuzzy
#| msgid "Shared"
msgid "shared"
msgstr "साझा किया गया"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
#, fuzzy
#| msgid "Manage"
msgid "unmanaged"
msgstr "प्रबंध"
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
#, fuzzy
#| msgid "Available Domains"
msgid "unavailable"
msgstr "उपलब्ध वाले डोमेन्स"
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
#, fuzzy
#| msgid "cable is connected"
msgid "disconnected"
msgstr "केबल कनेक्ट हो गया"
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
#, fuzzy
#| msgid "Sharing"
msgid "preparing"
msgstr "शेयरिंग"
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
#, fuzzy
#| msgid "Connection"
msgid "connecting"
msgstr "कनेक्शन"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "needs authentication"
msgstr "एचटिटिपि बेसिकॅ प्रमाणीकरण उपयोग करें"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
#, fuzzy
#| msgid "Deactivate"
msgid "activated"
msgstr "निष्क्रिय"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
#, fuzzy
#| msgid "Deactivate"
msgid "deactivating"
msgstr "निष्क्रिय"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
#, fuzzy
#| msgid "State reason"
msgid "no reason"
msgstr "कारण कहो"
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
#, fuzzy
#| msgid "The device is not mounted."
msgid "device is now managed"
msgstr "यह डिवाइस नहीं माउंट किया गया."
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
#, fuzzy
#| msgid "The device is not mounted."
msgid "device is now unmanaged"
msgstr "यह डिवाइस नहीं माउंट किया गया."
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
#, fuzzy
#| msgid "configuration file: {file}"
msgid "configuration failed"
msgstr "कॉंफ़िगरेशन फ़ाइल: {file}"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
#, fuzzy
#| msgid "Archive deleted."
msgid "DHCP client failed"
msgstr "पुरालेख हटा गया है."
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
#, fuzzy
#| msgid "The operation failed."
msgid "shared connection service failed"
msgstr "ऑपरेशन अनुत्तीर्ण हो गया."
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
#, fuzzy
#| msgid "The device is already mounted."
msgid "device was removed"
msgstr "यह डिवाइस पहले से माउंट किया गया."
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
#, fuzzy
#| msgid "The device is mounted by another user."
msgid "device disconnected by user"
msgstr "किसी और यूसर ने डिवाइस माउंट किया गया है."
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr ""
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
#, fuzzy
#| msgid "The operation failed."
msgid "a secondary connection failed"
msgstr "ऑपरेशन अनुत्तीर्ण हो गया."
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
#, fuzzy
#| msgid "Generic"
msgid "generic"
msgstr "जेनेरिक"
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
#, fuzzy
#| msgid "Interface"
msgid "TUN or TAP interface"
msgstr "इंटरफ़ेस"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
#, fuzzy
#| msgid "Ad-hoc"
msgid "ad-hoc"
msgstr "एड-हॉक"
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
#, fuzzy
#| msgid "Infrastructure"
msgid "infrastructure"
msgstr "इंफ्रास्ट्रक्चर"
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
#, fuzzy
#| msgid "Access Point"
msgid "access point"
msgstr "अभिगम केंद्र"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
#, fuzzy
#| msgid "Access Point"
msgid "mesh point"
msgstr "अभिगम केंद्र"
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "नेटवर्क कनेक्शन्स"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr "कनेक्शन नहीं दिखा सकता: कनेक्शन से नहीं मिला."
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr "कनेक्शन के बारे में जानकारी"
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "कनेक्शन नहीं संपादित कर सकता: कनेक्शन से नहीं मिला."
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr "इस प्रकार का कनेक्शन अभी समझ में नहीं आता."
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr "कनेक्शन सक्रिय है {name}."
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr "कनेक्शन सक्रिय करने में विफल: कनेक्शन नहीं मिला."
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr "कनेक्शन सक्रिय करने में विफल {name}: कोई उपयुक्त डिवाइस उपलब्ध नहीं है."
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "निष्क्रिय कनेक्शन {name}."
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr "कनेक्शन को निष्क्रिय करने में विफल: कनेक्शन नहीं मिला."
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr "नया जेनेरिक कनेक्शन जोड़ रहा है"
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "नया ईथरनेट कनेक्शन जोड़ रहा है"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "नया PPPoE कनेक्शन जोड़ रहा है"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "नया वाई-फाई कनेक्शन जोड़ रहा है"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "कनेक्शन {name} हटाया गया."
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr "कनेक्शन हटाने में विफल: कनेक्शन नहीं मिला."
@@ -4949,22 +4932,22 @@ msgstr ""
"आंतरिक सर्विसस उपयोग करने के लिये. आप बाकी सब इंटरनेट {box_name} के जरिए उपयोग कर "
"सकते हैं अगर अापको और सुरक्षा और गुमनामी चाहिये."
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
#, fuzzy
#| msgid "Connection Type"
msgid "Connect to VPN services"
msgstr "कनेक्शन टाइप"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr "ओपन वीपीएन"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr "वर्चुअल प्राइवेट नेटवर्क"
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -5104,15 +5087,15 @@ msgstr ""
"pagekite.net. भविष्य में अापका दोस्त का "
"{box_name} इसके लिये उपयोग कर सकते हैं."
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr "पेजकइट"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr "सार्वजनिक विसिबिलिटी"
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
#, fuzzy
#| msgid "PageKite Account"
msgid "PageKite Domain"
@@ -5236,29 +5219,29 @@ msgstr ""
"पोर्ट संयोजन का समर्थन नहीं कर सकते है. उदाहरण के लिए, ४४३ के अलावा पोर्ट पर HTTPS "
"समस्याओं का कारण बनता है."
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr "वेब सर्वर (HTTP)"
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr "साइट http://{0} पर उपलब्ध होगा"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr "वेब सर्वर (HTTPS)"
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr "साइटhttps://{0}पर उपलब्ध होगा"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr "सुरक्षित शैल (SSH)"
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
@@ -5267,7 +5250,7 @@ msgstr ""
"\">instructions"
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -5284,7 +5267,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr ""
@@ -5292,7 +5275,7 @@ msgstr ""
msgid "Restart or shut down the system."
msgstr "सिस्टम को रीस्टार्ट करें या शट डाउन करें ."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "पावर"
@@ -5387,15 +5370,15 @@ msgstr ""
"कॉन्फ़िगरेशन विवरण और प्रलेखन यहां देख सकते हैं http://config.privoxy.org/ या http://p.p."
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr "प्रिवोक्सी"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr "वेब प्रॉक्सी"
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr "{url} ऐकसेस करें प्रॉक्सी लेकर {proxy} टीसीपी पर{kind}"
@@ -5428,11 +5411,11 @@ msgstr ""
"quasseldroid.iskrembilen.com/\"> मोबाइल से कनेक्ट होने के लिए क्लाइंट्स उपलब्ध "
"हैं."
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "क्वासेल"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr "आईआरसी क्लाइंट"
@@ -5466,12 +5449,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr "राडिकैल"
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr "कैलेंडर और पता पुस्तिका"
@@ -5604,7 +5587,7 @@ msgstr ""
"security/lesssecureapps\">https://www.google.com/settings/security/"
"lesssecureapps)."
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr "ईमेल क्लाइंट"
@@ -5647,16 +5630,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr "समाचार फ़ीड्स पढ़ें और सब्सक्राइब करें"
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5691,15 +5674,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
#, fuzzy
#| msgid "Distributed File Storage"
msgid "Network File Storage"
@@ -5851,15 +5834,15 @@ msgstr ""
"सिरएक्स खोज इंजन द्वारा ट्रैकिंग और प्रोफाइलिंग से बचने के लिए इस्तेमाल किया जा सकता है. "
"यह डिफ़ॉल्ट से कोई कुकीज़ स्टोर नहीं करता है."
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr "वेब सरच किजिये"
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr "सिरएक्स"
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr "वेब खोज"
@@ -5946,7 +5929,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
#, fuzzy
#| msgid "Security"
msgid "Security Report"
@@ -6025,12 +6008,12 @@ msgstr "कोई नहीं"
msgid "Not running"
msgstr "टोर चल रहा है"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "त्रुटि सेटिंग एक्सेस प्रतिबंधित: {exception}"
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr "सुरक्षा कॉंफ़िगरेशन अपडेट किया गया"
@@ -6052,11 +6035,11 @@ msgstr ""
"होगा. नोट करिये शारली सिर्फ एकल यूसर अकाउंट का समर्थन करता है जो आपको प्रारंभिक "
"यात्रा पर सेटअप करने की जरुरत होगा."
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "शारली"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr "बुकमार्क्स"
@@ -6095,11 +6078,11 @@ msgstr ""
"सेटअप के बाद शैडोवॉक्स का उपयोग करने के लिए,अपने डिवाइस, ब्राउज़र या एप्लिकेशन में सॉक्स5 "
"प्रॉक्सी यूआरएल पर सेट करें http://freedombox_address:1080/"
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr "शाडोसोक्स"
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr "सोक्स5 प्रॉक्सी"
@@ -6129,7 +6112,7 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr "एंक्रिप्शन मेथोड. सर्वर सेटिंग पर मेल खाना चाहिए."
-#: plinth/modules/sharing/__init__.py:20
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -6138,7 +6121,7 @@ msgstr ""
"शेयरिंग आपको अपने {box_name} पर फ़ाइलों और फ़ोल्डरों चुना गया यूसरस के साथ वेब पर साझा "
"करने की अनुमति देता है."
-#: plinth/modules/sharing/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr "शेयरिंग"
@@ -6196,28 +6179,28 @@ msgstr "इस नाम का एक शयर पहले से मौज
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr "शेयर जोड़ें"
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr "वर्तमान में कोई शेयर कॉन्फ़िगर नहीं किया गया है."
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr "डिस्क पाथ"
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr "शेयरड अोवर"
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr "समूहों के साथ"
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -6273,7 +6256,7 @@ msgstr ""
"स्नैपशॉट्स सिर्फ btrfs फाइल सिस्टम और रूट पार्टीशन पर काम करते हैं. स्नैपशॉट बैकअप के लिए "
"प्रतिस्थापन नहीं है क्योंकि वे उसी पार्टीशन पर संग्रहित होते हैं. "
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr "स्टोरेज स्नैपशॉटस"
@@ -6372,7 +6355,7 @@ msgstr "तिथि"
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr "स्नैपशॉटस हटाएँ"
@@ -6422,57 +6405,57 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr "स्नैपशॉट से रोलबैक करें #%(number)s"
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
#, fuzzy
#| msgid "Archive created."
msgid "manually created"
msgstr "पुरालेख बनाया गया."
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr "स्नैपशॉटस प्रबंधित करें"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr "स्नैपशॉट बनाया गया है."
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr "स्टोरेज स्नैपशॉट कॉंफ़िगरेशन अपडेट किया गया"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "क्रिया त्रुटि: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
#, fuzzy
#| msgid "Delete all the snapshots"
msgid "Deleted selected snapshots"
msgstr "सब स्नैपशॉटस हटाएँ"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "स्नैपशॉट #{number} पर वापस रोलबाक होगा."
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr "रोलबैक शुरु करने के लिए सिस्टम रीस्टार्ट करने का ज़रुरत है."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr "स्नैपशॉट को रोलबैक करें"
@@ -6487,7 +6470,7 @@ msgstr ""
"स्वीकार करने के लिये. एक अधिकार दिया गया रिमोट कंप्यूटर प्रशासन कार्य निष्पादित कर "
"सकता है, फ़ाइलों की कॉपी कर सकता है या ऐसे कनेक्शंस का उपयोग करके अंय सर्विसस चलाएे."
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr "सुरक्षित शैल (SSH) सर्वर"
@@ -6534,7 +6517,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr "एकल साइन-ऑन"
@@ -6556,91 +6539,91 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr "स्टोरेज"
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} बाइट्स"
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} किब"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} मेब"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} जिब"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} टीब"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr "ऑपरेशन अनुत्तीर्ण हो गया."
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr "ऑपरेशन रद्द किया गया."
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr "यह डिवाइस पहले से अनमाउट किया जा रहा है."
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr "यह ऑपरेशन अनुपलब्ध है क्यैकि ड्राइवर/उपकरण टूल समर्थित नहीं है."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr "ऑपरेशन टाइम आउट हो गया."
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr "यह ऑपरेशन गहरी नींद की स्थिति का डिस्क को जाग जाएगा."
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr "व्यस्त डिवाइस को अनमाउंट करने का प्रयास कर रहा है."
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr "ऑपरेशन पहले से रद्द किया गया."
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr "अनुरोधित ऑपरेशन करने के लिए अधिकृत नहीं है."
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr "यह डिवाइस पहले से माउंट किया गया."
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr "यह डिवाइस नहीं माउंट किया गया."
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr "अनुरोधित विकल्प का उपयोग करने की अनुमति नहीं है."
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr "किसी और यूसर ने डिवाइस माउंट किया गया है."
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, fuzzy, no-python-format, python-brace-format
#| msgid ""
#| "Warning: Low space on system partition ({percent_used}% used, "
@@ -6650,15 +6633,15 @@ msgstr ""
"वार्निंग: सिस्टम पार्टीशन पर कम जगह ({percent_used}% उपयोग किया गया, "
"{free_space} free)."
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6824,16 +6807,16 @@ msgstr ""
"सेट एक फ़ोल्डर्स का एक अलग सेट का उपयोग करके सिंक्रनाइज़ किया जा सकता है. {box_name} "
"पर वेब इंटरफेस सिर्फ \"एडमिन\" समूह के यूसकस के लिए उपलब्ध है."
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr "सिंकतिन्ग एप्लिकेशन का प्रशासन करें"
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr "सिंकतिन्ग"
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr "फ़ाइल सिंक्रनाइज़ेशन"
@@ -6858,42 +6841,42 @@ msgid ""
"TCP port 9050."
msgstr "एक टोर सॉक्स पोर्ट आपका %(box_name)s र उपलब्ध है, TCP पोर्ट ९०५० पर."
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr "टोर"
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
#, fuzzy
#| msgid "Tor Hidden Service"
msgid "Tor Onion Service"
msgstr "टोर हिडन सर्विस"
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr "टोर सोक्स प्रॉक्सी"
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr "टो ब्रिज रीले"
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr "टोर रीले पोर्ट उपलब्ध है"
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr "Obfs3 ट्रांसपोर्ट पंजीकृत"
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr "Obfs4 ट्रांसपोर्ट पंजीकृत"
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr "यूआरएल एक्सेस करें {url} टीसीपी पर {kind} टोर के माध्यम से"
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "टोर उपयोग की पुष्टि करें {url} पर टीसीपी पर {kind}"
@@ -7024,7 +7007,7 @@ msgstr "हिडन सर्विस"
msgid "Ports"
msgstr "पोर्टस"
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "सेटिंग स्थिर है"
@@ -7087,7 +7070,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr "हस्तांतरण"
@@ -7128,11 +7111,11 @@ msgstr ""
"टैनी टैनी आरएसएस का मोबाइल या डेस्कटॉप एप्लिकेशन उपयोग करते समय, यह यूआरएल/tt-rss-app कनेक्ट करने के लिए उपयोग करें."
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr "टिनी टिनी आरएसएस"
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr "समाचार फ़ीड रीडर"
@@ -7153,8 +7136,8 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
#, fuzzy
@@ -7162,30 +7145,30 @@ msgstr ""
msgid "Software Update"
msgstr "सॉफ्टवेयर अपग्रेडस"
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
#, fuzzy
#| msgid "FreedomBox Foundation"
msgid "FreedomBox Updated"
msgstr "फ्रीडमबाक्स फाउंडेशन"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
#, fuzzy
#| msgid "Automatic upgrades disabled"
msgid "Distribution update started"
msgstr "ऑटोमेटिक अपग्रेडस अक्षम किया गया"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -7280,6 +7263,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -7402,15 +7386,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr "यूसरस और समूह"
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr "सब सर्विसस और सिस्टम सेटिंग्स तक पहुंच"
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "एलडीएपी प्रविष्टि चेक करें \"{search_item}\""
@@ -8070,14 +8054,14 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
#, fuzzy
#| msgid "Address"
msgid "WordPress"
msgstr "ऍड्रेस"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
#, fuzzy
#| msgid "Wiki and Blog"
msgid "Website and Blog"
@@ -8116,11 +8100,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -8156,37 +8140,110 @@ msgstr "पीपीपीअोइ"
msgid "Generic"
msgstr "जेनेरिक"
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "{exception}: होस्ट नाम सेट करने में एरर"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, fuzzy, python-brace-format
+#| msgid "Service disabled: {name}"
+msgid "Finished: {name}"
+msgstr "सर्विस सक्षम किया गया:{name}"
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr "इंस्टालेशन करते समय पर त्रुटि"
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr "इंस्टॉलिंग"
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr "डाउनलोडिंग"
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr "मीडिया बदलाव"
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr "कॉंफ़िगरेशन फ़ाइल: {file}"
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "ऐप्लिकेशन इंस्टॉल करें"
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "एप्लिकेशन नहीं इंस्टॉल जा सकता : {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "एप्लिकेशन नहीं इंस्टॉल जा सकता : {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "एप्लिकेशन नहीं इंस्टॉल जा सकता: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "एप्लिकेशन नहीं इंस्टॉल जा सकता: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "एप्लिकेशन इंस्टॉल हो गया."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "अंतिम अपडेट"
+
+#: plinth/setup.py:411
+#, fuzzy
+#| msgid "Upgrade Packages"
+msgid "Updating app packages"
+msgstr "अपग्रेड पैकेजस"
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "४०३ निषिद्ध"
@@ -8513,6 +8570,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr "%(box_name)s सेटअप"
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "एप्लिकेशन इंस्टॉल हो गया."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr "यह एप्लिकेशन इंस्टॉल करें?"
@@ -8522,57 +8583,57 @@ msgid "This application needs an update. Update now?"
msgstr "इस ऐप्लिकेशन को अप्डेट चाहिये. अभी अप्डेट करें?"
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-"किसी इंस्टालेशन या अपग्रेड पहले से चल रहा है. कुछ समय प्रतीक्षा करें फिर कोशिश करने से पहले."
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr "यह एप्लिकेशन अभी अापका वितरण में उपलब्ध नहीं है."
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr "इंस्टॉल करें"
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr "अपडेट"
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr "प्री-इंस्टॉलेशन ऑपरेशन कर रहा है"
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr "पोस्ट-इंस्टॉलेशन ऑपरेशन कर रहा है"
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr "%(package_names)s:%(status)s इंस्टॉलेशन किया"
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "%(percentage)s%% पूर्ण"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "DNSSEC आईपीवी पर उपयोग कर रहा है{kind}"
+
+#~ msgid ""
+#~ "Another installation or upgrade is already running. Please wait for a few "
+#~ "moments before trying again."
+#~ msgstr ""
+#~ "किसी इंस्टालेशन या अपग्रेड पहले से चल रहा है. कुछ समय प्रतीक्षा करें फिर कोशिश करने से "
+#~ "पहले."
+
+#~ msgid "Performing pre-install operation"
+#~ msgstr "प्री-इंस्टॉलेशन ऑपरेशन कर रहा है"
+
+#~ msgid "Performing post-install operation"
+#~ msgstr "पोस्ट-इंस्टॉलेशन ऑपरेशन कर रहा है"
+
+#, python-format
+#~ msgid "Installing %(package_names)s: %(status)s"
+#~ msgstr "%(package_names)s:%(status)s इंस्टॉलेशन किया"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "%(percentage)s%% पूर्ण"
+
#, fuzzy
#~| msgid "Access Point"
#~ msgid "Access"
@@ -9487,9 +9548,6 @@ msgstr ""
#~ msgid "Service enabled: {name}"
#~ msgstr "सर्विस सक्षम किया गया:{name}"
-#~ msgid "Service disabled: {name}"
-#~ msgstr "सर्विस सक्षम किया गया:{name}"
-
#~ msgid "PageKite Account"
#~ msgstr "पेजकईट अकाउंट"
@@ -9941,9 +9999,6 @@ msgstr ""
#~ msgid "Automatic Upgrades"
#~ msgstr "ऑटोमेटिक अपग्रेडस"
-#~ msgid "Upgrade Packages"
-#~ msgstr "अपग्रेड पैकेजस"
-
#~ msgid "No such device - {device_path}"
#~ msgstr "ऐसा कोई डिवाइस नहीं - {device_path}"
diff --git a/plinth/locale/hu/LC_MESSAGES/django.po b/plinth/locale/hu/LC_MESSAGES/django.po
index cc7e7bce6..f27be377b 100644
--- a/plinth/locale/hu/LC_MESSAGES/django.po
+++ b/plinth/locale/hu/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2022-05-10 02:10+0000\n"
"Last-Translator: ikmaak \n"
"Language-Team: Hungarian felhasználója hozzáférhet."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Cockpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "Szerver adminisztráció"
@@ -1210,18 +1196,18 @@ msgstr ""
"Itt általános dolgokat állíthatsz be, például gazdagépnév, domainnév, "
"webszerver kezdőoldala stb."
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "Általános beállítások"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "Beállítások"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1399,11 +1385,11 @@ msgstr ""
"szervereket, mint a Matrix Synapse vagy az ejabberd, az itt megadott részletekkel kell konfigurálni."
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "Coturn"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr "VoIP-segéd"
@@ -1428,11 +1414,11 @@ msgstr ""
"A hálózati időszerver egy olyan program, amely az interneten található "
"szerverekkel szinkronban tartja a rendszeridőt."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "Dátum és idő"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "Az idő szinkronizálva van az NTP-szerverrel"
@@ -1473,17 +1459,17 @@ msgstr ""
"Az alapértelmezett jelszó 'deluge', de a szolgáltatás engedélyezése után "
"jelentkezz be és azonnal változtasd meg."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "Fájlok letöltése BitTorrent-alkalmazások használatával"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "Deluge"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "Webes BitTorrent-kliens"
@@ -1504,49 +1490,49 @@ msgstr ""
"annak megerősítésére, hogy az alkalmazások és szolgáltatások az elvárt módon "
"működnek."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "Hibaellenőrzés"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr "sikerült"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr "sikertelen"
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr "hiba"
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr "figyelmeztetés"
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr "MiB"
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr "GiB"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr "A memóriahasználat csökkentése érdekében tilts le néhány alkalmazást."
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr "Ne telepíts további alkalmazásokat erre a rendszerre."
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
@@ -1555,7 +1541,7 @@ msgstr ""
"A rendszerben kevés a memória: {percent_used}% használt, "
"{memory_available} {memory_available_unit} szabad. {advice_message}"
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr "Kevés a memória"
@@ -1652,11 +1638,11 @@ msgstr ""
"szolgáltatást a "
"freedns.afraid.org címen."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "Dinamikus DNS ügyfél"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr "Dinamikus domainnév"
@@ -1785,9 +1771,11 @@ msgid "This field is required."
msgstr "Ezt a mezőt ki kell tölteni."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1873,12 +1861,12 @@ msgstr ""
"videóhívásokhoz. Telepítsd a Coturn alkalmazást "
"vagy állíts be egy külső szervert."
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "ejabberd"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "Chat szerver"
@@ -1990,7 +1978,7 @@ msgstr "Dino"
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2051,19 +2039,19 @@ msgid ""
msgstr ""
"A telepítés során a rendszeren lévő összes egyéb e-mail-szerver törlődni fog."
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr "Postfix/Dovecot"
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr "E-mail-szerver"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr "E-mail álneveim"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr "A Mailbox álneveinek kezelése"
@@ -2099,7 +2087,7 @@ msgstr "Nem lehet szám"
msgid "Aliases"
msgstr "Álnevek"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr "Roundcube"
@@ -2185,7 +2173,7 @@ msgstr ""
"hálózati forgalmát felügyeli. A folyamatosan aktív és megfelelően beállított "
"tűzfal csökkenti az internetről leselkedő biztonsági fenyegetések kockázatát."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "Tűzfal"
@@ -2348,15 +2336,15 @@ msgstr ""
"href=\"https://git-scm.com/docs/gittutorial\">Git gyorstalpalót (angolul)"
"a>."
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr "Olvasási-írási hozzáférés a Git-tárolókhoz"
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr "Gitweb"
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr "Egyszerű Git-hoszting"
@@ -2455,54 +2443,54 @@ msgstr "%(name)s Git-tároló törlése"
msgid "Delete this repository permanently?"
msgstr "Véglegesen törlöd ezt a tárolót?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr "Tároló létrehozva."
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr "Hiba történt a tároló létrehozása közben."
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr "Tároló szerkesztve."
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr "Tároló szerkesztése"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "Dokumentáció"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr "Kézikönyv"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr "Támogatás kérése"
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr "Visszajelzés küldése"
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "Hozzájárulás"
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Névjegy"
@@ -2859,19 +2847,19 @@ msgstr ""
"Az első látogatás a megadott webes felületen elindítja a konfigurálási "
"folyamatot."
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr "I2P alkalmazás kezelése"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr "I2P"
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr "Anonim hálózat"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr "I2P proxy"
@@ -2940,15 +2928,15 @@ msgstr ""
"meglévőket. A Felhasználók beállítása oldalon "
"tudod módosítani ezeket a jogosultságokat vagy hozzáadni új felhasználókat."
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr "ikiwiki"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr "Wiki és blog"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr "Wiki alkalmazások megtekintése és szerkesztése"
@@ -3004,32 +2992,32 @@ msgstr ""
"Ez a művelet el fog távolítani minden bejegyzést, oldalt és kommentet "
"beleértve a verziótörténetet is. Véglegesen törlöd ezt a wikit vagy blogot?"
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "{name} wiki létrehozva."
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "Nem sikerült létrehozni a wikit: {error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "{name} blog létrehozva."
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "Nem sikerült létrehozni a blogot: {error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr "{title} törölve."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr "{title} nem törölhető: {error}"
@@ -3051,11 +3039,11 @@ msgstr ""
"\"Csatlakozás a szerverhez\" lehetőséget (\"Connect to Server\") és írd be a "
"{box_name} eszközöd domainnevét."
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr "infinoted"
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr "Gobby-szerver"
@@ -3089,11 +3077,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -3115,11 +3103,11 @@ msgstr ""
"JSXC egy webes kliens az XMPP-hez. Általában helyileg futtatott XMPP-"
"szerverrel használják."
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr "JSXC"
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr "Chat kliens"
@@ -3152,15 +3140,15 @@ msgstr ""
"letsencrypt.org/repository/\">Let's Encrypt aláírási megállapodását "
"mielőtt használnád ezt a szolgáltatást."
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr "Let's Encrypt"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "Tanúsítványok"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr "Sikertelen tesztelés: Nincsenek konfigurált domainek."
@@ -3225,7 +3213,7 @@ msgstr ""
"Nincsenek domainek beállítva. Előbb állítsd be a "
"domaineket ahhoz, hogy tanúsítványokat kaphass hozzájuk."
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
@@ -3234,29 +3222,29 @@ msgstr ""
"A {domain} domain tanúsítványa sikeresen visszavonva. Eltarthat néhány "
"pillanatig, mire életbe lép."
-#: plinth/modules/letsencrypt/views.py:47
+#: plinth/modules/letsencrypt/views.py:49
#, python-brace-format
msgid "Failed to revoke certificate for domain {domain}: {error}"
msgstr "A {domain} domain tanúsítványát nem sikerült visszavonni: {error}"
-#: plinth/modules/letsencrypt/views.py:60
-#: plinth/modules/letsencrypt/views.py:77
+#: plinth/modules/letsencrypt/views.py:62
+#: plinth/modules/letsencrypt/views.py:79
#, python-brace-format
msgid "Certificate successfully obtained for domain {domain}"
msgstr "A {domain} domain sikeresen megkapta a tanúsítványt"
-#: plinth/modules/letsencrypt/views.py:65
-#: plinth/modules/letsencrypt/views.py:82
+#: plinth/modules/letsencrypt/views.py:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr "A {domain} domain nem kapott tanúsítványt: {error}"
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr "{domain} domain tanúsítványa sikeresen törölve"
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr "{domain} domain tanúsítványát nem sikerült kitörölni: {error}"
@@ -3288,7 +3276,7 @@ msgstr ""
"videóhívásokhoz. Telepítsd a Coturn "
"alkalmazást, vagy konfigurálj egy külső szervert."
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr "Matrix Synapse"
@@ -3430,12 +3418,12 @@ msgstr ""
"Bárki elolvashatja, akinek van hozzáférése ehhez a wikihez, viszont csak a "
"bejelentkezett felhasználók módosíthatják a tartalmat."
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr "MediaWiki"
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr "Wiki"
@@ -3517,44 +3505,44 @@ msgstr ""
"Válassz alapértelmezett felszínt a MediaWiki telepítéséhez. A "
"felhasználóknak lehetőségük van kiválasztani a saját kedvelt felszínüket."
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "Jelszó frissítve"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
#, fuzzy
#| msgid "Password used to encrypt data. Must match server password."
msgid "Password update failed. Please choose a stronger password"
msgstr ""
"Az adattitkosításra használt jelszó. A szerver jelszavával meg kell egyeznie."
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr "Szabad regisztráció engedélyezve"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr "Szabad regisztráció letiltva"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr "Privát mód engedélyezve"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr "Privát mód letiltva"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr "Az alapértelmezett felszín megváltozott"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Domain name set"
msgid "Domain name updated"
msgstr "Domainnév beállítva"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
#, fuzzy
#| msgid "Domain name set"
msgid "Site name updated"
@@ -3574,11 +3562,11 @@ msgstr ""
"szerverre egy Minetest "
"kliensre is szükséged lesz."
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr "Minetest"
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr "Blokk sandbox"
@@ -3627,7 +3615,7 @@ msgstr "Ha le van tiltva, a játékosok nem fognak meghalni, ill. megsérülni."
msgid "Address"
msgstr "Cím"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3645,15 +3633,15 @@ msgstr ""
"médialejátszók, okostelefonok, televíziók és játékkonzolok (például "
"PlayStation és Xbox), vagy olyan alkalmazásokkal mint a totem és a Kodi."
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr "Média streaming szerver"
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr "MiniDLNA"
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr "Egyszerű médiaszerver"
@@ -3716,11 +3704,11 @@ msgstr ""
"kapcsolódhatsz. A Mumble-kliensek "
"elérhetők az asztali és mobil eszközökhöz."
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr "Mumble"
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr "Audiókonferencia"
@@ -3770,17 +3758,17 @@ msgstr "Mumblefly"
msgid "Mumla"
msgstr "Mumla"
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr "A SuperUser jelszava sikeresen frissítve."
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
#, fuzzy
#| msgid "Upload password updated"
msgid "Join password changed"
msgstr "Feltöltési jelszó frissítve"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3798,7 +3786,7 @@ msgstr ""
"engedélyezettek vagy tiltottak-e az adott néven keresztül bejövő kapcsolatok "
"számára."
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "Névszolgáltatások"
@@ -3818,7 +3806,7 @@ msgstr "Secure Shell (Biztonságos parancsértelmező)"
msgid "Services"
msgstr "Szolgáltatások"
-#: plinth/modules/networks/__init__.py:36
+#: 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."
@@ -3827,7 +3815,7 @@ msgstr ""
"vagy PPPoE segítségével. Oszd meg ezt a kapcsolatot a hálózaton lévő más "
"eszközökkel."
-#: plinth/modules/networks/__init__.py:38
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
@@ -3835,15 +3823,10 @@ msgstr ""
"Előfordulhat, hogy más módszerekkel felügyelt eszközök itt nem lesznek a "
"konfigurálhatók."
-#: plinth/modules/networks/__init__.py:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "Hálózatok"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "DNSSEC használata IPv{kind} felett"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "Kapcsolat típusa"
@@ -4410,7 +4393,7 @@ msgid "This connection is not active."
msgstr "Ez a kapcsolat nem aktív."
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "Biztonság"
@@ -4462,7 +4445,7 @@ msgid "Create Connection"
msgstr "Kapcsolat létrehozása"
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "Kapcsolat törlése"
@@ -4482,13 +4465,13 @@ msgstr "Térköz"
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "Ethernet"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "Wi-Fi"
@@ -4509,7 +4492,7 @@ msgid "Computer"
msgstr "Számítógép"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "Kapcsolat szerkesztése"
@@ -4519,13 +4502,13 @@ msgstr "Kapcsolatok"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "Wi-Fi hálózatok a közelben"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "Kapcsolat hozzáadása"
@@ -4750,247 +4733,247 @@ msgstr ""
"meg az interneten a router kézikönyvét. Ebben teljes körű utasításokat "
"találsz a feladat elvégzéséhez."
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr "letiltva"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr "automatikus"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr "kézi"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr "megosztott"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr "link-local"
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr "ismeretlen"
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr "nem-menedzselt"
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr "elérhetetlen"
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr "szétkapcsolva"
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr "előkészítés"
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr "kapcsolódás"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr "hitelesítést igényel"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr "cím lekérdezése"
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr "ellenőrzése"
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr "várakozás a másodlagos"
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr "aktiválva"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr "deaktiválás"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr "nincs ok"
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr "ismeretlen hiba"
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr "az eszköz most már menedzselt"
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr "az eszköz most már nem-menedzselt"
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr "konfiguráció sikertelen"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr "titkosítás szükséges"
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr "A DHCP-kliens nem indult el"
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr "DHCP-kliens error"
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr "DHCP kliens sikertelen"
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr "a megosztott kapcsolati szolgáltatás nem indult el"
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr "megosztott kapcsolatszolgáltatás sikertelen"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr "eszköz el lett távolítva"
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr "eszközt a felhasználó leválasztotta"
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr "a kapcsolat egyik függősége meghiúsult"
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr "Wi-Fi hálózat nem található"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr "másodlagos kapcsolat sikertelen"
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr "az új kapcsolat aktiválása várólistára került"
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr "kettős IP-cím észlelhető"
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr "a kiválasztott IP-módszer nem támogatott"
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr "általános"
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr "TUN- vagy TAP-interfész"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr "WireGuard"
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr "ad-hoc"
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr "infrastuktúra"
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr "hozzáférési pont"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr "mesh pont"
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "Hálózati kapcsolatok"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr "Nem jeleníthető meg a kapcsolat, mivel nem található."
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr "Információ a kapcsolatról"
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "A kapcsolat nem szerkeszthető, mivel nem található."
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr "Az ilyen típusú kapcsolat még nem ismert."
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr "{name} kapcsolat aktiválva."
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr "Kapcsolat aktiválása sikertelen: kapcsolat nem található."
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, 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/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "{name} kapcsolat deaktiválva."
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr "Kapcsolat deaktiválása sikertelen: kapcsolat nem található."
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr "Új általános kapcsolat hozzáadása"
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "Új Ethernet kapcsolat hozzáadása"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "Új PPPoE kapcsolat hozzáadása"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "Új Wi-Fi kapcsolat hozzáadása"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "Kapcsolat törölve: {name}."
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr "A kapcsolat törlése sikertelen, mivel nem található."
@@ -5012,20 +4995,20 @@ msgstr ""
"eszközödön keresztül elérheted az internetet is további biztonság és "
"anonimitás érdekében."
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr "Csatlakozás a VPN-szolgáltatásokhoz"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr "OpenVPN"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr "Virtuális magánhálózat"
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -5167,15 +5150,15 @@ 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:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr "PageKite"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr "Nyilvános láthatóság"
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr "PageKite domain"
@@ -5289,29 +5272,29 @@ msgstr ""
"HTTPS a 443-as porttól eltérő portokon történő használata közismerten "
"problémákat okoz."
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr "Webszerver (HTTP)"
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr "Az oldal itt lesz elérhető: http://{0}"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr "Webszerver (HTTPS)"
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr "Az oldal itt lesz elérhető: https://{0}"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr "Biztonságos parancsértelmező (SSH)"
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
@@ -5320,7 +5303,7 @@ msgstr ""
"Howto/SshOverPageKite/\">instrukciókat"
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr "Teljesítmény"
@@ -5343,7 +5326,7 @@ msgstr ""
"A teljesítménymutatókat a Teljesítmény segédprogram gyűjti össze, amelyek a "
"Cockpit alkalmazással tekinthetők meg."
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr "Rendszerfigyelés"
@@ -5351,7 +5334,7 @@ msgstr "Rendszerfigyelés"
msgid "Restart or shut down the system."
msgstr "Újraindítás vagy leállítás."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "Leállítás"
@@ -5447,15 +5430,15 @@ msgstr ""
"a címeken: http://config.privoxy.org/"
"a> és http://p.p."
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr "Privoxy"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr "Web proxy"
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -5490,11 +5473,11 @@ msgstr ""
"\">asztali és mobil "
"eszközökhöz is."
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr "IRC-kliens"
@@ -5528,12 +5511,12 @@ msgstr ""
"címjegyzékek létrehozását támogatja. Nem támogatja az események vagy "
"kapcsolatok hozzáadását, ezeket külön kliens segítségével kell elvégezni."
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr "Radicale"
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr "Naptár és címjegyzék"
@@ -5653,7 +5636,7 @@ msgstr ""
"lesssecureapps\">https://www.google.com/settings/security/lesssecureapps"
"a>)."
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr "E-mail kliens"
@@ -5698,16 +5681,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr "Hírcsatornák olvasása és feliratkozás"
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5752,15 +5735,15 @@ msgstr ""
"Otthoni megosztás - a freedombox-share csoport minden felhasználójának saját "
"privát tárhelye lehet."
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr "Hozzáférés a privát megosztásokhoz"
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr "Samba"
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr "Hálózati tárhely"
@@ -5895,15 +5878,15 @@ 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:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr "Keresés a weben"
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr "Searx"
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr "Webes keresés"
@@ -6001,7 +5984,7 @@ msgstr ""
"fenn őket."
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr "Biztonsági jelentés"
@@ -6080,12 +6063,12 @@ msgstr "Nem"
msgid "Not running"
msgstr "Nem fut"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, 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:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr "Biztonsági beállítás frissítve"
@@ -6101,11 +6084,11 @@ msgstr ""
"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/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "Shaarli"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr "Könyvjelzők"
@@ -6145,11 +6128,11 @@ msgstr ""
"címét a készülékeden, böngésződben vagy alkalmazásodban a http://"
"freedombox_eszkozod_cime:1080/ címre"
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr "Shadowsocks"
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr "Socks5 Proxy"
@@ -6179,7 +6162,7 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr "Titkosítási módszer. A szerver beállításával meg kell egyeznie."
-#: plinth/modules/sharing/__init__.py:20
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -6188,7 +6171,7 @@ 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 {box_name} eszközödön."
-#: plinth/modules/sharing/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr "Megosztás"
@@ -6246,28 +6229,28 @@ msgstr ""
"A megosztásnak nyilvánosnak vagy legalább egy csoporttal megosztottnak kell "
"lennie"
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr "Megosztás hozzáadása"
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr "Jelenleg nincs beállított megosztás."
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr "Lemez elérési útja"
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr "Megosztva ezen keresztül"
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr "Ezekkel a csoportokkal"
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr "nyilvános hozzáférés"
@@ -6324,7 +6307,7 @@ msgstr ""
"plinth/sys/backups\">Biztonsági mentéseket, mivel a pillanatképek csak "
"ugyanazon a partíción tárolhatók, mint amelyen készülnek. "
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr "Tárhelypillanatképek"
@@ -6427,7 +6410,7 @@ msgstr "Dátum"
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr "Pillanatképek törlése"
@@ -6481,55 +6464,55 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr "Visszaállítás erre a pillanatképre: %(number)s"
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr "kézzel létrehozva"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr "idővonal"
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr "apt"
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr "Pillanatképek kezelése"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr "Pillanatkép létrehozva."
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr "Tárhelypillanatképek konfigurációja frissítve"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Hiba a művelet közben: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr "Kiválasztott pillanatképek törölve"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
"A Tárhelypillanatképek funkció jelenleg is használatban van. Kérlek, próbáld "
"újra később."
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, 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:214
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:226
msgid "Rollback to Snapshot"
msgstr "Visszaállítás pillanatképre"
@@ -6545,7 +6528,7 @@ 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/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr "SSH-szerver"
@@ -6591,7 +6574,7 @@ msgstr "A jelszavas SSH-hitelesítés le van tiltva."
msgid "SSH authentication with password enabled."
msgstr "Jelszavas SSH-hitelesítés engedélyezve."
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr "Egyszeri bejelentkezés"
@@ -6615,108 +6598,108 @@ msgstr ""
"fel- és lecsatolhatsz cserélhető adathordozókat, kibővítheted a root "
"partíciót, stb."
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr "Tárhely"
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} byte"
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr "A művelet sikertelen."
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr "A művelet meg lett szakítva."
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr "Az eszköz leválasztása már folyamatban van."
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
"A művelet nem támogatott a hiányzó illesztőprogram/eszköz támogatása miatt."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr "A művelet túllépte az időkorlátot."
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
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:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr "Foglalt eszköz leválasztásának a kísérlete."
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr "A művelet már meg lett szakítva."
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr "Nem vagy jogosult végrehajtani a kért műveletet."
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr "Az eszköz már fel lett csatolva."
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr "Az eszköz nincs felcsatolva."
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr "Nem használhatod a kért lehetőséget."
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr "Az eszközt egy másik felhasználó felcsatolva."
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
"Kevés a szabad hely a rendszerpartíción: {percent_used}% felhasználva, "
"{free_space} szabad."
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr "Kevés tárhely"
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr "Lemezhiba várható"
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6872,16 +6855,16 @@ msgstr ""
"felület csak az \"admin\" vagy a \"syncthing-access\" csoporthoz tartozó "
"felhasználók számára hozzáférhető."
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr "A Syncthing alkalmazás beállítása"
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr "Syncthing"
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr "Fájlszinkronizáció"
@@ -6908,40 +6891,40 @@ msgid ""
msgstr ""
"Egy Tor SOCKS port elérhető a %(box_name)s eszközöd 9050-es TCP-portján."
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr "Tor"
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr "Tor Onion szolgáltatás"
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr "Tor Socks proxy"
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr "Tor híd relay"
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr "Tor relay port elérhető"
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr "Obfs3 átvitel regisztrálva"
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr "Obfs4 átvitel regisztrálva"
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, 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:221
+#: plinth/modules/tor/__init__.py:218
#, 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"
@@ -7070,7 +7053,7 @@ msgstr "Onion-szolgáltatás"
msgid "Ports"
msgstr "Portok"
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "A beállítás változatlan"
@@ -7124,7 +7107,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr "Transmission"
@@ -7161,11 +7144,11 @@ msgstr ""
"hez, használd a /tt-rss-app URL-t a "
"csatlakozáshoz."
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr "Tiny Tiny RSS"
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr "Hírcsatorna-olvasó"
@@ -7192,22 +7175,22 @@ msgstr ""
"újraindítása szükségesnek bizonyul, akkor a rendszer automatikusan 02:00-kor "
"újraindul, ami miatt az összes alkalmazás rövid ideig nem lesz elérhető."
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr "Szoftverfrissítések"
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr "FreedomBox frissítve"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr "A disztribúció frissítése nem tudott elindulni"
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
@@ -7218,11 +7201,11 @@ msgstr ""
"disztribúció frissítését a rendszer 24 óra múlva újrapróbálja, ha "
"engedélyezve van."
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr "A disztribúció frissítése elindult"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -7317,6 +7300,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr "Figyelmen kívül hagyás"
@@ -7438,15 +7422,15 @@ msgstr ""
"az admin csoport felhasználói módosíthatják az alkalmazásokat vagy "
"a rendszerbeállításokat."
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr "Felhasználók és csoportok"
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
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/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "LDAP-bejegyzés ellenőrzése: \"{search_item}\""
@@ -8082,12 +8066,12 @@ msgstr ""
"frissítését a rendszergazdai felületről. További bővítmények vagy témák "
"telepítése és frissítése saját felelősségre történhet."
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr "WordPress"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr "Weboldal és blog"
@@ -8138,11 +8122,11 @@ msgstr ""
"rendszerben is létre kell hozni egy-egy fiókot ugyanazzal a "
"felhasználónévvel."
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr "Zoph"
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr "Fotó szervező"
@@ -8180,37 +8164,112 @@ msgstr "PPPoE"
msgid "Generic"
msgstr "Általános"
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Hiba az állomásnév beállítása közben: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, fuzzy, python-brace-format
+#| msgid "Service disabled: {name}"
+msgid "Finished: {name}"
+msgstr "Szolgáltatás letiltva: {name}"
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr "A(z) {package_name} a legfrissebb verzió ({latest_version})"
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr "Hiba lépett fel a telepítés során"
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr "telepítés"
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr "letöltés"
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr "adathordozó csere"
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr "konfigurációs fájl: {file}"
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "Alkalmazások telepítése"
+
+#: plinth/setup.py:46
+#, fuzzy
+#| msgid "Updating..."
+msgid "Updating app"
+msgstr "Frissítés…"
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Hiba lépett fel az alkalmazás telepítésekor: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Hiba lépett fel az alkalmazás telepítésekor: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Hiba lépett fel az alkalmazás telepítésekor: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Hiba lépett fel az alkalmazás telepítésekor: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Alkalmazás telepítve."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "Legutolsó frissítés"
+
+#: plinth/setup.py:411
+#, fuzzy
+#| msgid "Upgrade Packages"
+msgid "Updating app packages"
+msgstr "Csomagok frissítése"
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Tiltott"
@@ -8531,6 +8590,10 @@ msgstr "Router/WAN-portokról"
msgid "To %(box_name)s Ports"
msgstr "A %(box_name)s portokhoz"
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Alkalmazás telepítve."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr "Alkalmazás telepítése?"
@@ -8540,22 +8603,14 @@ msgid "This application needs an update. Update now?"
msgstr "Ennek az alkalmazásnak frissítésre van szüksége. Frissítés most?"
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-"Egy másik telepítés vagy frissítés már folyamatban van. Kérlek, várj néhány "
-"pillanatot, mielőtt újra megpróbálnád."
-
-#: plinth/templates/setup.html:46
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:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr "Ellenörzés ismét"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
@@ -8565,36 +8620,43 @@ msgstr ""
"csomagok ütköznek ennek az alkalmazásnak a telepítésével. A következő "
"csomagok törlődnek, ha folytatod:"
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr "Telepítés"
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr "Frissítés"
-#: 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:88
-msgid "Performing post-install operation"
-msgstr "Telepítés utáni műveletek végrehajtása"
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr "%(package_names)s telepítése: %(status)s"
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "befejezettségi szint: %(percentage)s%%"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr "Gudzsaráti"
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "DNSSEC használata IPv{kind} felett"
+
+#~ msgid ""
+#~ "Another installation or upgrade is already running. Please wait for a few "
+#~ "moments before trying again."
+#~ msgstr ""
+#~ "Egy másik telepítés vagy frissítés már folyamatban van. Kérlek, várj "
+#~ "néhány pillanatot, mielőtt újra megpróbálnád."
+
+#~ msgid "Performing pre-install operation"
+#~ msgstr "Telepítés előtti műveletek végrehajtása"
+
+#~ msgid "Performing post-install operation"
+#~ msgstr "Telepítés utáni műveletek végrehajtása"
+
+#, python-format
+#~ msgid "Installing %(package_names)s: %(status)s"
+#~ msgstr "%(package_names)s telepítése: %(status)s"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "befejezettségi szint: %(percentage)s%%"
+
#~ 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."
@@ -9621,9 +9683,6 @@ msgstr "Gudzsaráti"
#~ msgid "Service enabled: {name}"
#~ msgstr "Szolgáltatás engedélyezve: {name}"
-#~ msgid "Service disabled: {name}"
-#~ msgstr "Szolgáltatás letiltva: {name}"
-
#~ msgid "PageKite Account"
#~ msgstr "PageKite fiók"
@@ -10011,9 +10070,6 @@ msgstr "Gudzsaráti"
#~ msgid "Automatic Upgrades"
#~ msgstr "Automatikus frissítések"
-#~ msgid "Upgrade Packages"
-#~ msgstr "Csomagok frissítése"
-
#~ msgid "No such device - {device_path}"
#~ msgstr "Nincs ilyen eszköz - {device_path}"
diff --git a/plinth/locale/id/LC_MESSAGES/django.po b/plinth/locale/id/LC_MESSAGES/django.po
index b3ee26085..16492d40d 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2021-06-24 00:42+0000\n"
"Last-Translator: Reza Almanda \n"
"Language-Team: Indonesian pengguna apa pun pada "
"{box_name} milik kelompok admin."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Kokpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "Administrasi Server"
@@ -1191,18 +1177,18 @@ msgstr ""
"Di sini Anda dapat mengatur beberapa opsi konfigurasi umum seperti nama "
"host, nama domain, halaman beranda server web dll."
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "Konfigurasi Umum"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "Konfigurasi"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1382,11 +1368,11 @@ msgstr ""
"\"{e_url}\">ejabberd memerlukan dikonfigurasi dengan rincian yang "
"disediakan disini."
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "Coturn"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr "Helper VoIP"
@@ -1410,11 +1396,11 @@ msgstr ""
"Network Time Server adalah program yang memelihara waktu sistem dalam "
"sinkronisasi dengan server di Internet."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "Tanggal & Hari"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "Waktu disinkronkan ke server NTP"
@@ -1455,17 +1441,17 @@ msgstr ""
"Kata sandi default adalah 'Deluge', tetapi Anda harus masuk dan mengubahnya "
"segera setelah mengaktifkan layanan ini."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "Unduh file menggunakan aplikasi BitTorrent"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "Membanjiri"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "Klien Web BitTorrent"
@@ -1485,51 +1471,51 @@ msgstr ""
"Tes diagnostik sistem akan menjalankan sejumlah cek pada sistem Anda untuk "
"mengonfirmasi bahwa aplikasi dan layanan berfungsi seperti yang diharapkan."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "Diagnosa"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr "LULUS"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr "gagal"
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr "kesalahan"
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr "peringatan"
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr "MIB"
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr "GIB"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
"Anda harus menonaktifkan beberapa aplikasi untuk mengurangi penggunaan "
"memori."
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr "Kamu seharusnya tidak menginstal aplikasi baru di sistem ini."
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
@@ -1538,7 +1524,7 @@ msgstr ""
"Sistem rendah pada memori: {percent_used}% digunakan, {memory_available} "
"{memory_available_unit} gratis. {advice_message}"
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr "Memori rendah"
@@ -1642,11 +1628,11 @@ msgstr ""
"URL pembaruan gratis di freedns.afraid.org."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "Klien DNS Dinamis"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr "Nama Domain Dinamis"
@@ -1781,9 +1767,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1882,12 +1870,12 @@ msgstr ""
"aplikasi Coturn atau konfigurasikan server "
"eksternal."
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "Ejabberd"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "Server obrolan"
@@ -1994,7 +1982,7 @@ msgstr "Dino"
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2042,23 +2030,23 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
#, fuzzy
#| msgid "Chat Server"
msgid "Email Server"
msgstr "Server obrolan"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
#, fuzzy
#| msgid "Manage Libraries"
msgid "My Email Aliases"
msgstr "Kelola Perpustakaan"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
#, fuzzy
#| msgid "Manage Libraries"
msgid "Manage Aliases for Mailbox"
@@ -2098,7 +2086,7 @@ msgstr ""
msgid "Aliases"
msgstr "Kelola Perpustakaan"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr "Roundcube"
@@ -2190,7 +2178,7 @@ msgstr ""
"masuk dan keluar pada {box_name} Anda. Menjaga firewall diaktifkan dan "
"dikonfigurasi dengan benar mengurangi risiko ancaman keamanan dari Internet."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "Firewall"
@@ -2351,15 +2339,15 @@ msgstr ""
"Untuk mempelajari lebih lanjut tentang cara menggunakan git kunjungi tutorial git ."
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr "Akses baca-tulis ke repositori git"
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr "Gitweb"
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr "Hosting Git Sederhana"
@@ -2455,54 +2443,54 @@ msgstr "Hapus git repositori %(name)s "
msgid "Delete this repository permanently?"
msgstr "Hapus repositori ini secara permanen?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr "Repositori dibuat."
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr "Terjadi kesalahan saat membuat repositori."
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr "Diedit repositori."
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr "Edit Repositori"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "Dokumentasi"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr "Manual"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr "Dapatkan Dukungan"
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr "Berikan umpan balik"
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "Kontribusi"
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Tentang"
@@ -2854,19 +2842,19 @@ msgstr ""
"Kunjungan pertama ke antarmuka web yang disediakan akan memulai proses "
"konfigurasi."
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr "Kelola aplikasi I2P"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr "I2p"
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr "Jaringan Anonimitas"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr "I2p proxy"
@@ -2940,15 +2928,15 @@ msgstr ""
"\"{users_url}\">Konfigurasi Pengguna, Anda dapat mengubah izin ini atau "
"menambahkan pengguna baru."
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr "Ikiwiki"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr "Wiki dan Blog"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr "Lihat dan edit aplikasi Wiki"
@@ -3004,32 +2992,32 @@ msgstr ""
"Tindakan ini akan menghapus semua posting, halaman, dan komentar termasuk "
"riwayat revisi. Hapus wiki atau blog ini secara permanen?"
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "Membuat wiki {name}."
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "Tidak dapat membuat wiki: {error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "membuat blog {name}."
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "Tidak dapat membuat blog: {error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr "{title} dihapus."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr "Tidak dapat menghapus {title}: {error}"
@@ -3049,11 +3037,11 @@ msgstr ""
"a>, desktop client dan instal. Kemudian mulai gobby dan pilih \"Hubungkan ke "
"Server\" dan masukkan nama domain {box_name}."
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr "Menginfisi"
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr "Server Gobby"
@@ -3087,11 +3075,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -3113,11 +3101,11 @@ msgstr ""
"JSXC adalah klien web untuk XMPP. Biasanya digunakan dengan server XMPP yang "
"berjalan secara lokal."
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr "Jsxc"
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr "Obrolan Klien"
@@ -3150,15 +3138,15 @@ msgstr ""
"repository/\">Perjanjian Pelanggan Let's Encrypt sebelum menggunakan "
"layanan ini."
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr "Let's Encrypt"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "Sertifikat"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr "Tidak dapat menguji: Tidak ada domain yang dikonfigurasi."
@@ -3223,7 +3211,7 @@ msgstr ""
"Tidak ada domain yang dikonfigurasi. "
"mengkonfigurasi domain untuk dapat memperoleh sertifikat untuk mereka."
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
@@ -3232,29 +3220,29 @@ msgstr ""
"Sertifikat berhasil dicabut untuk domain {domain}. Ini mungkin memakan waktu "
"beberapa saat untuk mulai berlaku."
-#: plinth/modules/letsencrypt/views.py:47
+#: plinth/modules/letsencrypt/views.py:49
#, python-brace-format
msgid "Failed to revoke certificate for domain {domain}: {error}"
msgstr "Gagal mencabut sertifikat untuk domain {domain}: {error}"
-#: plinth/modules/letsencrypt/views.py:60
-#: plinth/modules/letsencrypt/views.py:77
+#: plinth/modules/letsencrypt/views.py:62
+#: plinth/modules/letsencrypt/views.py:79
#, python-brace-format
msgid "Certificate successfully obtained for domain {domain}"
msgstr "Sertifikat berhasil diperoleh untuk domain {domain}"
-#: plinth/modules/letsencrypt/views.py:65
-#: plinth/modules/letsencrypt/views.py:82
+#: plinth/modules/letsencrypt/views.py:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr "Gagal memperoleh sertifikat untuk domain {domain}: {error}"
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr "Sertifikat berhasil dihapus untuk domain {domain}"
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr "Gagal menghapus sertifikat untuk domain {domain}: {error}"
@@ -3286,7 +3274,7 @@ msgstr ""
"Pasang aplikasi Coturn atau konfigurasikan "
"server eksternal."
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr "Sinaps Matrix"
@@ -3396,12 +3384,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr "MediaWiki"
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr "Wiki"
@@ -3464,11 +3452,11 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "Kata sandi diperbarui"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
#, fuzzy
#| msgid "Password used to encrypt data. Must match server password."
msgid "Password update failed. Please choose a stronger password"
@@ -3476,33 +3464,33 @@ msgstr ""
"Kata sandi yang digunakan untuk mengenkripsi data. Harus mencocokkan kata "
"sandi server."
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr "Pendaftaran publik diaktifkan"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr "Pendaftaran publik dinonaktifkan"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr "Mode privat diaktifkan"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr "Mode privat dinonaktifkan"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Domain name set"
msgid "Domain name updated"
msgstr "Set nama domain"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
#, fuzzy
#| msgid "Domain name set"
msgid "Site name updated"
@@ -3517,11 +3505,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr "Minetest"
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr ""
@@ -3566,7 +3554,7 @@ msgstr ""
msgid "Address"
msgstr "Address"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3577,15 +3565,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3638,11 +3626,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr "Mumble"
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr "Pesan Suara"
@@ -3684,17 +3672,17 @@ msgstr "Mumblefly"
msgid "Mumla"
msgstr "Mumla"
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
#, fuzzy
#| msgid "Password"
msgid "Join password changed"
msgstr "Kata Sandi"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3707,7 +3695,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "Nama Layanan"
@@ -3727,27 +3715,22 @@ msgstr "Secure Shell"
msgid "Services"
msgstr "Layanan"
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "Jaringan"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "Gunakan DNSSEC pada IPv{kind}"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "Tipe Koneksi"
@@ -4224,7 +4207,7 @@ msgid "This connection is not active."
msgstr ""
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr ""
@@ -4267,7 +4250,7 @@ msgid "Create Connection"
msgstr ""
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "Hapus Koneksi"
@@ -4287,13 +4270,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "Ethernet"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "Wi-Fi"
@@ -4314,7 +4297,7 @@ msgid "Computer"
msgstr "Komputer"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "Sunting Koneksi"
@@ -4324,13 +4307,13 @@ msgstr "Koneksi"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "Jaringan Wi-Fi terdekat"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "Tambah Koneksi"
@@ -4513,245 +4496,245 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr "dinonaktifkan"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr "otomatis"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr "panduan"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr "bersama"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr "tidak dikelola"
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr "tidak tersedia"
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr "Tidak terhubung"
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr "mempersiapkan"
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr "menghubungkan"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr "butuh autentikasi"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr "meminta alamat"
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr "memeriksa"
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr "diaktifkan"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr "menonaktifkan"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr "konfigurasi gagal"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr "Gagal memulai klien DHCP"
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr "Galat klien DHCP"
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr "Klien DHCP gagal"
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr "layanan koneksi bersama gagal"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr ""
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr ""
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr "generik"
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr "Antarmuka TUN atau TAP"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr "WireGuard"
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr "ad-hoc"
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr "infrastruktur"
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr "access point"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr "mesh point"
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "Koneksi Jaringan"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr "Menambah koneksi generik baru"
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "Menambah koneksi ethernet baru"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "Menambah koneksi PPPoE baru"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "Menambah koneksi Wi-Fi baru"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "Koneksi {name} dihapus."
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr ""
@@ -4766,20 +4749,20 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr "Sambungkan ke layanan VPN"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr "OpenVPN"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr "Jaringan Privat Virtual"
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4887,15 +4870,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr "PageKite"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr "Visibilitas Publik"
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr "Domain PageKite"
@@ -5003,36 +4986,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr "Server Web (HTTP)"
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr "Situs akan tersedia di http://{0}"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr "Web Server (HTTPS)"
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr "Secure Shell (SSH)"
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr "Performa"
@@ -5049,7 +5032,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
#, fuzzy
#| msgid "System Configuration"
msgid "System Monitoring"
@@ -5059,7 +5042,7 @@ msgstr "Pengaturan Sistem"
msgid "Restart or shut down the system."
msgstr "Jalankan ulang atau matikan sistem."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "Nyalakan"
@@ -5130,15 +5113,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr "Privoxy"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr "Proksi Web"
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr "Akses {url} dengan proksi {proxy} pada tcp{kind}"
@@ -5162,11 +5145,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr "Klien IRC"
@@ -5191,12 +5174,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr "Radicale"
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -5286,7 +5269,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr "Klien Email"
@@ -5327,16 +5310,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5371,15 +5354,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr "Samba"
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr "Penyimpanan Berkas Jaringan"
@@ -5511,15 +5494,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr "Jelajahi web"
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr "Searx"
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr "Pencarian Web"
@@ -5600,7 +5583,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr "Laporan Keamanan"
@@ -5665,12 +5648,12 @@ msgstr "Tidak"
msgid "Not running"
msgstr "Tidak berjalan"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr "Konfigurasi keamanan diperbarui"
@@ -5686,11 +5669,11 @@ msgstr ""
"Catatan Shaarli hanya mendukung satu akun pengguna, yang perlu Anda siapkan "
"pada kunjungan awal."
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "Shaarli"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr "Bookmark"
@@ -5722,11 +5705,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr "Shadowsocks"
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr "Proksi Socks5"
@@ -5757,14 +5740,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr "Metode enkripsi. Harus mencocokkan setelan pada peladen."
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr "Berbagi"
@@ -5812,28 +5795,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr "Tambah berbagi"
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr "Tidak ada pembagian yang saat ini dikonfigurasi."
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr "Jalur Disk"
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr "Dibagikan"
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr "Dengan Grup"
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr "akses publik"
@@ -5879,7 +5862,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr "Penyimpanan Snapshot"
@@ -5981,7 +5964,7 @@ msgstr "Tanggal"
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr "Hapus Snapshot"
@@ -6029,53 +6012,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr "dibuat manual"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr "linimasa"
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr "apt"
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr "Kelola Snapshot"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr "Snapshot yang dibuat."
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr "Konfigurasi snapshot penyimpanan diperbarui"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Galat {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr "Menghapus snapshot yang dipilih"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr "Snapshot sedang digunakan. Silakan coba lagi nanti."
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr "Sistem harus dimulai ulang untuk menyelesaikan rollback."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr "Rollback ke Snapshot"
@@ -6087,7 +6070,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr "Server Secure Shell (SSH)"
@@ -6132,7 +6115,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -6152,104 +6135,104 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr "Penyimpanan"
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} bytes"
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr "Operasi gagal."
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr "Operasi telah dibatalkan."
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr "Perangkat belum terpasang."
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6383,16 +6366,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr "Syncthing"
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -6412,40 +6395,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr "Tor"
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6555,7 +6538,7 @@ msgstr "Layanan"
msgid "Ports"
msgstr "Port"
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr ""
@@ -6606,7 +6589,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr "Transmission"
@@ -6636,11 +6619,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6662,8 +6645,8 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
#, fuzzy
@@ -6671,28 +6654,28 @@ msgstr ""
msgid "Software Update"
msgstr "URL Server diperbarui"
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
#, fuzzy
#| msgid "FreedomBox"
msgid "FreedomBox Updated"
msgstr "FreedomBox"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr "Pembaruan distribusi dimulai"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6778,6 +6761,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6885,15 +6869,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -7482,14 +7466,14 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
#, fuzzy
#| msgid "Address"
msgid "WordPress"
msgstr "Address"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
#, fuzzy
#| msgid "Wiki and Blog"
msgid "Website and Blog"
@@ -7528,11 +7512,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7566,37 +7550,107 @@ msgstr "PPPoE"
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Kesalahan pengaturan hostname: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr "Galat saat pemasangan"
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr "memasang"
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr "mengunduh"
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "Instal aplikasi"
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Kesalahan Pemasangan aplikasi: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Kesalahan Pemasangan aplikasi: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Kesalahan pemasangan aplikasi: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Kesalahan pemasangan aplikasi: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Aplikasi telah terpasang."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "Pembaharuan Terakhir"
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Forbidden"
@@ -7891,6 +7945,10 @@ msgstr "Dari port Router/WAN"
msgid "To %(box_name)s Ports"
msgstr "Ke %(box_name)s Port"
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Aplikasi telah terpasang."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr "Pasang aplikasi ini?"
@@ -7900,58 +7958,57 @@ msgid "This application needs an update. Update now?"
msgstr "Aplikasi perlu pembaruan. Perbarui sekarang?"
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-"Penginstalan atau pemutakhiran lain sedang berjalan. Silakan tunggu beberapa "
-"saat sebelum mencoba lagi."
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr "Aplikasi ini belum tersedia dalam distribusi Anda."
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr "Periksa kembali"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr "Pasang"
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr "Memperbarui"
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr "Melakukan operasi pra-pemasangan"
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr "Melakukan operasi pasca pemasangan"
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr "Memasang %(package_names)s: %(status)s"
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "%(percentage)s %% selesai"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr "Bahasa Gujarat"
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "Gunakan DNSSEC pada IPv{kind}"
+
+#~ msgid ""
+#~ "Another installation or upgrade is already running. Please wait for a few "
+#~ "moments before trying again."
+#~ msgstr ""
+#~ "Penginstalan atau pemutakhiran lain sedang berjalan. Silakan tunggu "
+#~ "beberapa saat sebelum mencoba lagi."
+
+#~ msgid "Performing pre-install operation"
+#~ msgstr "Melakukan operasi pra-pemasangan"
+
+#~ msgid "Performing post-install operation"
+#~ msgstr "Melakukan operasi pasca pemasangan"
+
+#, python-format
+#~ msgid "Installing %(package_names)s: %(status)s"
+#~ msgstr "Memasang %(package_names)s: %(status)s"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "%(percentage)s %% selesai"
+
#~ 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."
diff --git a/plinth/locale/it/LC_MESSAGES/django.po b/plinth/locale/it/LC_MESSAGES/django.po
index d496217c8..0aac75313 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2022-01-06 22:41+0000\n"
"Last-Translator: Dietmar \n"
"Language-Team: Italian qualsiasi utente su {box_name} "
"appartenente al gruppo admin."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Cockpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "Amministrazione Server"
@@ -1174,18 +1160,18 @@ msgstr ""
"Qui si possono impostare alcune opzioni di configurazione generali come "
"hostname, nome di dominio, home page del webserver ecc."
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "Configurazione Generale"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "Configura"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1365,11 +1351,11 @@ msgid ""
"be configured with the details provided here."
msgstr ""
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "Coturn"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr ""
@@ -1393,11 +1379,11 @@ msgstr ""
"Network time server è un programma che mantiene l'ora del sistema in "
"sincronizzazione con i server in Internet."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "Data & Ora"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "Tempo sincronizzato al server NTP"
@@ -1439,17 +1425,17 @@ msgstr ""
"La password di default è 'deluge', ma è consigliabile effettuare il login e "
"cambiarla subito dopo aver abilitato questo servizio."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "Scarica file usando applicazioni BitTorrent"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "Deluge"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "Web Client BitTorrent"
@@ -1471,56 +1457,56 @@ msgstr ""
"La diagnostica di sistema eseguirà una serie di controlli per verificare che "
"le applicazioni e i servizi stiano funzionino correttamente."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "Diagnostica"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr "superato"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr "fallito"
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr ""
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr ""
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr "GiB"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
"{memory_available_unit} free. {advice_message}"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr ""
@@ -1622,11 +1608,11 @@ msgstr ""
"su URL d'aggiornamento su freedns.afraid.org."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "Client DNS Dinamico"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr "Nome Dominio Dinamico"
@@ -1755,9 +1741,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1855,12 +1843,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "ejabberd"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "Server Chat"
@@ -1968,7 +1956,7 @@ msgstr "Dino"
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2017,21 +2005,21 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr "Server e-mail"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
#, fuzzy
#| msgid "Manage Aliases"
msgid "My Email Aliases"
msgstr "Gestire gli alias"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
#, fuzzy
#| msgid "Manage Aliases"
msgid "Manage Aliases for Mailbox"
@@ -2067,7 +2055,7 @@ msgstr ""
msgid "Aliases"
msgstr "Alias"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr "Roundcube"
@@ -2152,7 +2140,7 @@ msgstr ""
"adeguatamente configurato riduce i rischi di attacchi informatici dalla rete "
"Internet."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "Firewall"
@@ -2312,15 +2300,15 @@ msgstr ""
"Per saperne di più su come usare Git visita Git tutorial."
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr "Accesso in lettura e scrittura ai repository Git"
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr "Gitweb"
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr "Semplice Git Hosting"
@@ -2420,27 +2408,27 @@ msgstr "Cancellare Git Repository %(name)s"
msgid "Delete this repository permanently?"
msgstr "Cancellare questo repository in modo permanente?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr "Repository creato."
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr "Si è verificato un errore durante la creazione del repository."
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr "Repository modificato."
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr "Modifica repository"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "Documentazione"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
#, fuzzy
#| msgid "Manual"
@@ -2448,28 +2436,28 @@ msgctxt "User guide"
msgid "Manual"
msgstr "Manuale"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr "Richiedi assistenza"
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr "Invia feedback"
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "Contribuire"
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Su"
@@ -2832,20 +2820,20 @@ msgstr ""
"La prima visita all'interfaccia web fornita inizierà il processo di "
"configurazione."
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr "Gestione dell'applicazione I2P"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr "I2P"
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
#, fuzzy
msgid "Anonymity Network"
msgstr "Rete di anonimato"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr "Proxy I2P"
@@ -2917,15 +2905,15 @@ msgstr ""
"\"{users_url}\">Configurazione Utente è possibile cambiare questi "
"permessi o aggiungere nuovi utenti."
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr "ikiwiki"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr "Wiki e Blog"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr "Vedi e modifica le applicazioni wiki"
@@ -2981,32 +2969,32 @@ msgstr ""
"Quest'azione cancellerà tutti i post, le pagine e i commenti, incluse le "
"revisione storiche. Cancellare questo wiki o blog permanentente?"
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "Creato wiki {name}."
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "Non è stato possibile creare l'wiki: {error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "Creato blog {name}."
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "Non è stato possibile creare il blog: {error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr "{title} cancellato."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr "Non è stato possibile cancellare {title}: {error}"
@@ -3027,11 +3015,11 @@ msgstr ""
"desktop e installarlo. Dopo avviare Hobby e seleziona \"Connect to Server\" "
"e entrare nel tuo nome di dominio {box_name}."
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr "infinoted"
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr "Gobby Server"
@@ -3065,11 +3053,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -3091,11 +3079,11 @@ msgstr ""
"JSXC è un client web per XMPP. Tipicamente viene usato con un server XMPP in "
"esecuzione nella rete locale."
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr "JSXC"
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr "Client"
@@ -3127,15 +3115,15 @@ msgstr ""
"letsencrypt.org/repository/\"> i termini dell'accordo dell'abbonato Let's "
"Encrypt prima utilizzare questo servizio."
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr "Let's Encrypt"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "Certificati"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -3200,7 +3188,7 @@ msgstr ""
"Non sono stati configurati domini. Configurare i "
"domini per poter ottenere i certificati per essi."
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
@@ -3209,29 +3197,29 @@ msgstr ""
"Certificato revocato correttamente per il dominio {domain}. Ciò può "
"richiedere alcuni minuti per avere effetto."
-#: plinth/modules/letsencrypt/views.py:47
+#: plinth/modules/letsencrypt/views.py:49
#, python-brace-format
msgid "Failed to revoke certificate for domain {domain}: {error}"
msgstr "Revoca certificato fallita per il dominio {domain}: {error}"
-#: plinth/modules/letsencrypt/views.py:60
-#: plinth/modules/letsencrypt/views.py:77
+#: plinth/modules/letsencrypt/views.py:62
+#: plinth/modules/letsencrypt/views.py:79
#, python-brace-format
msgid "Certificate successfully obtained for domain {domain}"
msgstr "Certificato correttamente ottenuto per il dominio {domain}"
-#: plinth/modules/letsencrypt/views.py:65
-#: plinth/modules/letsencrypt/views.py:82
+#: plinth/modules/letsencrypt/views.py:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr "Rilascio certificato fallito per il dominio {domain}:{error}"
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr "Certificato cancellato correttamente per il dominio {domain}"
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr "Cancellazione certificato fallita per il dominio {domain}:{error}"
@@ -3260,7 +3248,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr "Matrix Synapse"
@@ -3398,12 +3386,12 @@ msgstr ""
"Chiunque con un collegamento a questo wiki può leggerlo. Solo gli utenti "
"autenticati possono apportare modifiche ai contenuti."
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr "MediaWiki"
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr "Wiki"
@@ -3477,42 +3465,42 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "Password aggiornata"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr "Registrazioni pubbliche abilitate"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr "Registrazioni pubbliche disabilitate"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
#, fuzzy
msgid "Private mode enabled"
msgstr "Modo privato abilitato"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
#, fuzzy
msgid "Private mode disabled"
msgstr "Modo privato disabilitato"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr "Tema predefinito modificato"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
msgid "Domain name updated"
msgstr "Imposta nome di dominio"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
#, fuzzy
msgid "Site name updated"
msgstr "Imposta nome di dominio"
@@ -3530,11 +3518,11 @@ msgstr ""
"porta predefinita (30000). Per connettersi al server, è necessario un client Minetest."
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr "Minetest"
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr "Block Sandbox"
@@ -3588,7 +3576,7 @@ msgstr ""
msgid "Address"
msgstr "Indirizzo"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3599,15 +3587,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr "MiniDLNA"
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3670,11 +3658,11 @@ msgstr ""
"64738 Sono disponibili dei client da "
"connettere a Mumble dai tuoi dispositivi desktop e android."
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr "Mumble"
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr "Voice Chat"
@@ -3722,17 +3710,17 @@ msgstr "Mumblefly"
msgid "Mumla"
msgstr "Mumla"
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
#, fuzzy
#| msgid "Upload password updated"
msgid "Join password changed"
msgstr "Password upload aggiornata"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3745,7 +3733,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "Name Services"
@@ -3765,27 +3753,22 @@ msgstr "Secure Shell"
msgid "Services"
msgstr "Servizi"
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "Reti"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "Utilizzo DNSSEC su IPv{kind}"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "Tipo Connessione"
@@ -4287,7 +4270,7 @@ msgid "This connection is not active."
msgstr "Questa connessione non è attiva."
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "Sicurezza"
@@ -4337,7 +4320,7 @@ msgid "Create Connection"
msgstr "Crea Connessione"
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "Cancella Connessione"
@@ -4357,13 +4340,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "Ethernet"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "Wi-Fi"
@@ -4384,7 +4367,7 @@ msgid "Computer"
msgstr "Computer"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "Modifica Concessione"
@@ -4394,13 +4377,13 @@ msgstr "Connessioni"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "Reti WiFi vicine"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "Aggiungi Connessione"
@@ -4583,247 +4566,247 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr "disabilitato"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr "automatica"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr "manuale"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr "condiviso"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr ""
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr ""
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr ""
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr ""
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr ""
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr "disattiva"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr ""
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr "Client DHCP fallito"
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr ""
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr "dispositivo è stato rimosso"
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr ""
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr ""
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr "WireGuard"
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr "infrastruttura"
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr ""
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "Connessione di rete"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr "Non è possibile mostrare la connessione: Connessione non trovata."
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr "Informazioni Connessione"
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "Impossibile modificare la connessione: connessione non trovata."
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr "Questo tipo di connessione non è ancora riconosciuto."
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr "Attivata connessione {name}."
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr "Attivazione connessione fallita: connessione non trovata."
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, 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/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "Disattivata connessione {name}."
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr "Disattivazione connessione fallita: connessione non trovata."
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr "Aggiungendo Nuova Connessione Generica"
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "Aggiungendo Nuova Connessione Ethernet"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "Aggiungendo Nuova Connessione PPPoE"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "Aggiungendo Nuova Connessione WiFi"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "Connessione {name} cancellata."
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr "Cancellazione connessione fallita: connessione non trovata."
@@ -4844,20 +4827,20 @@ msgstr ""
"accedere al resto della rete Internet via {box_name} per una maggiore "
"sicurezza e anonimità."
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr "OpenVPN"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr "Rete virtuale privata"
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4986,15 +4969,15 @@ msgstr ""
"futuro potrebbe essere possibile usare la {box_name} del tuo amico per "
"questo."
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr "PageKite"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr "Visibilità Pubblica"
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr "Dominio PageKite"
@@ -5108,29 +5091,29 @@ msgstr ""
"Per esempio, è noto che HTTPS, in porte diverse dalla 443, può causare "
"problemi."
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr "Server Web (HTTP)"
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr "Il sito sarà disponibile su http{0}"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr "Server Web (HTTPS)"
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr "Il sito sarà disponibile au HTTPS://{0}{0}"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr "Secure Shell (SSH)"
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
@@ -5139,7 +5122,7 @@ msgstr ""
"\">istruzioni della configurazione del client SSH"
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -5156,7 +5139,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr "Monitoraggio del sistema"
@@ -5164,7 +5147,7 @@ msgstr "Monitoraggio del sistema"
msgid "Restart or shut down the system."
msgstr "Riavvia o spegni il sistema."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "Alimentazione"
@@ -5262,15 +5245,15 @@ msgstr ""
"documentazione su http://config."
"Privoxy.org/ o http://p.p."
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr "Privoxy"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr "Web Proxy"
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr "Accesso {url} con proxy {proxy} su tcp{kind}"
@@ -5304,11 +5287,11 @@ msgstr ""
"org/downloads\">desktop e mobile."
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr "Client IRC"
@@ -5338,12 +5321,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr "Radicale"
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr "Calendario e Rubrica"
@@ -5442,7 +5425,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr ""
@@ -5483,16 +5466,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5527,15 +5510,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr "Samba"
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr "Stoccaggio dei file di rete"
@@ -5655,15 +5638,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr "Searx"
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr ""
@@ -5744,7 +5727,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr "Rapporto sulla sicurezza"
@@ -5809,12 +5792,12 @@ msgstr "No"
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr ""
@@ -5828,11 +5811,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "Shaarli"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5864,11 +5847,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr "Shadowsocks"
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5897,14 +5880,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr ""
@@ -5952,28 +5935,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -6019,7 +6002,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr ""
@@ -6113,7 +6096,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr ""
@@ -6161,54 +6144,54 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr "creato manualmente"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr "apt"
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
#, fuzzy
msgid "Deleted selected snapshots"
msgstr "Istantanee selezionate cancellate"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -6220,7 +6203,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -6261,7 +6244,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -6281,105 +6264,105 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
#, fuzzy
msgid "The device is already unmounting."
msgstr "Il dispositivo sta già smontando."
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr "Il dispositivo è già montato."
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6513,16 +6496,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr "Syncthing"
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -6542,40 +6525,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr "Tor"
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6681,7 +6664,7 @@ msgstr "Servizio Onion"
msgid "Ports"
msgstr "Ports"
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "Impostazioni invariate"
@@ -6732,7 +6715,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr "Transmission"
@@ -6762,11 +6745,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr "Tiny Tiny RSS"
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6787,33 +6770,33 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr "Aggiornamento software"
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr "FreedomBox aggiornato"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6894,6 +6877,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6997,15 +6981,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -7570,12 +7554,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr "WordPress"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr "Sito web e blog"
@@ -7610,11 +7594,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr "Zoph"
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7648,37 +7632,108 @@ msgstr "PPPoE"
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Errore impostazione hostname: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, fuzzy, python-brace-format
+#| msgid "Service disabled: {name}"
+msgid "Finished: {name}"
+msgstr "Servizio disabilitato: {name}"
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "Installa App"
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Errore installazione applicazione: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Errore installazione applicazione: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Errore durante l'installazione dell'applicazione: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Errore durante l'installazione dell'applicazione: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Applicazione installata."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "Ultimo aggiornamento"
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -7973,6 +8028,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr "Alle porte %(box_name)s"
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Applicazione installata."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr ""
@@ -7982,56 +8041,40 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr ""
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr ""
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "%(percentage)s%% completata"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr "Gujarati"
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "Utilizzo DNSSEC su IPv{kind}"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "%(percentage)s%% completata"
+
#~ 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."
@@ -8767,9 +8810,6 @@ msgstr "Gujarati"
#~ msgid "Service enabled: {name}"
#~ msgstr "Servizio abilitato: {name}"
-#~ msgid "Service disabled: {name}"
-#~ msgstr "Servizio disabilitato: {name}"
-
#~ msgid "PageKite Account"
#~ msgstr "Profilo PageKite"
diff --git a/plinth/locale/ja/LC_MESSAGES/django.po b/plinth/locale/ja/LC_MESSAGES/django.po
index 603f7b01e..436acb365 100644
--- a/plinth/locale/ja/LC_MESSAGES/django.po
+++ b/plinth/locale/ja/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2021-05-20 12:32+0000\n"
"Last-Translator: Jacque Fresco \n"
"Language-Team: Japanese freedns.afraid.org."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr ""
@@ -1593,9 +1579,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1671,12 +1659,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr ""
@@ -1769,7 +1757,7 @@ msgstr ""
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1814,19 +1802,19 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr ""
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr ""
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr ""
@@ -1860,7 +1848,7 @@ msgstr ""
msgid "Aliases"
msgstr ""
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr ""
@@ -1941,7 +1929,7 @@ msgid ""
"configured reduces risk of security threat from the Internet."
msgstr ""
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr ""
@@ -2078,15 +2066,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2182,54 +2170,54 @@ msgstr ""
msgid "Delete this repository permanently?"
msgstr ""
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr ""
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr ""
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr ""
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr ""
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
@@ -2507,19 +2495,19 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr ""
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr "I2P"
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr ""
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr ""
@@ -2572,15 +2560,15 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr ""
@@ -2634,32 +2622,32 @@ msgid ""
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
@@ -2676,11 +2664,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr ""
@@ -2712,11 +2700,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -2736,11 +2724,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr ""
@@ -2762,15 +2750,15 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -2833,36 +2821,36 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, 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:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
@@ -2884,7 +2872,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr ""
@@ -2988,12 +2976,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3054,39 +3042,39 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
msgid "Site name updated"
msgstr ""
@@ -3099,11 +3087,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr ""
@@ -3148,7 +3136,7 @@ msgstr ""
msgid "Address"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3159,15 +3147,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3220,11 +3208,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr ""
@@ -3266,15 +3254,15 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr ""
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3287,7 +3275,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr ""
@@ -3307,27 +3295,22 @@ msgstr ""
msgid "Services"
msgstr ""
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr ""
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr ""
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
@@ -3804,7 +3787,7 @@ msgid "This connection is not active."
msgstr ""
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr ""
@@ -3847,7 +3830,7 @@ msgid "Create Connection"
msgstr ""
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr ""
@@ -3867,13 +3850,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr ""
@@ -3894,7 +3877,7 @@ msgid "Computer"
msgstr ""
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr ""
@@ -3904,13 +3887,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr ""
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
@@ -4093,245 +4076,245 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr ""
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr ""
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr ""
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr ""
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr ""
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr ""
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr ""
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr ""
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr ""
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr ""
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr ""
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr ""
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr ""
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr ""
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr ""
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr ""
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr ""
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr ""
@@ -4346,20 +4329,20 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4467,15 +4450,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr ""
@@ -4581,36 +4564,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -4627,7 +4610,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr ""
@@ -4635,7 +4618,7 @@ msgstr ""
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr ""
@@ -4706,15 +4689,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -4738,11 +4721,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr ""
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr ""
@@ -4767,12 +4750,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -4862,7 +4845,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr ""
@@ -4898,16 +4881,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -4942,15 +4925,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr ""
@@ -5070,15 +5053,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr ""
@@ -5159,7 +5142,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr ""
@@ -5224,12 +5207,12 @@ msgstr ""
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr ""
@@ -5243,11 +5226,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5277,11 +5260,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5310,14 +5293,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr ""
@@ -5365,28 +5348,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -5432,7 +5415,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr ""
@@ -5526,7 +5509,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr ""
@@ -5574,53 +5557,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr ""
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -5632,7 +5615,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -5673,7 +5656,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -5693,104 +5676,104 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -5924,16 +5907,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -5953,40 +5936,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6092,7 +6075,7 @@ msgstr ""
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr ""
@@ -6138,7 +6121,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr ""
@@ -6163,11 +6146,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6188,33 +6171,33 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6292,6 +6275,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6395,15 +6379,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -6968,12 +6952,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr ""
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr ""
@@ -7008,11 +6992,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7046,37 +7030,96 @@ msgstr ""
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, python-brace-format
+msgid "Error: {name}: {exception_message}"
+msgstr ""
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+msgid "Installing app"
+msgstr ""
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, python-brace-format
+msgid "Error installing app: {string} {details}"
+msgstr ""
+
+#: plinth/setup.py:76
+#, python-brace-format
+msgid "Error updating app: {string} {details}"
+msgstr ""
+
+#: plinth/setup.py:82
+#, python-brace-format
+msgid "Error installing app: {error}"
+msgstr ""
+
+#: plinth/setup.py:85
+#, python-brace-format
+msgid "Error updating app: {error}"
+msgstr ""
+
+#: plinth/setup.py:89
+msgid "App installed."
+msgstr ""
+
+#: plinth/setup.py:91
+msgid "App updated"
+msgstr ""
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -7362,6 +7405,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr ""
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr ""
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr ""
@@ -7371,52 +7418,28 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr ""
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr ""
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr ""
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/kn/LC_MESSAGES/django.po b/plinth/locale/kn/LC_MESSAGES/django.po
index c530a13f2..98d455e63 100644
--- a/plinth/locale/kn/LC_MESSAGES/django.po
+++ b/plinth/locale/kn/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2020-07-16 16:41+0000\n"
"Last-Translator: Yogesh \n"
"Language-Team: Kannada freedns.afraid.org."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr ""
@@ -1593,9 +1579,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1671,12 +1659,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr ""
@@ -1769,7 +1757,7 @@ msgstr ""
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1814,19 +1802,19 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr ""
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr ""
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr ""
@@ -1860,7 +1848,7 @@ msgstr ""
msgid "Aliases"
msgstr ""
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr ""
@@ -1941,7 +1929,7 @@ msgid ""
"configured reduces risk of security threat from the Internet."
msgstr ""
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr ""
@@ -2078,15 +2066,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2182,54 +2170,54 @@ msgstr ""
msgid "Delete this repository permanently?"
msgstr ""
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr ""
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr ""
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr ""
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr ""
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "ಬಗ್ಗೆ"
@@ -2507,19 +2495,19 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr ""
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr ""
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr ""
@@ -2572,15 +2560,15 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr ""
@@ -2634,32 +2622,32 @@ msgid ""
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
@@ -2676,11 +2664,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr ""
@@ -2712,11 +2700,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -2736,11 +2724,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr ""
@@ -2762,15 +2750,15 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -2833,36 +2821,36 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, 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:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
@@ -2884,7 +2872,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr ""
@@ -2988,12 +2976,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3054,39 +3042,39 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
msgid "Site name updated"
msgstr ""
@@ -3099,11 +3087,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr ""
@@ -3148,7 +3136,7 @@ msgstr ""
msgid "Address"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3159,15 +3147,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3220,11 +3208,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr ""
@@ -3266,15 +3254,15 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr ""
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3287,7 +3275,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr ""
@@ -3307,27 +3295,22 @@ msgstr ""
msgid "Services"
msgstr ""
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr ""
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr ""
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
@@ -3804,7 +3787,7 @@ msgid "This connection is not active."
msgstr ""
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr ""
@@ -3847,7 +3830,7 @@ msgid "Create Connection"
msgstr ""
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr ""
@@ -3867,13 +3850,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr ""
@@ -3894,7 +3877,7 @@ msgid "Computer"
msgstr ""
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr ""
@@ -3904,13 +3887,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr ""
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
@@ -4093,245 +4076,245 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr ""
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr ""
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr ""
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr ""
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr ""
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr ""
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr ""
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr ""
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr ""
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr ""
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr ""
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr ""
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr ""
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr ""
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr ""
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr ""
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr ""
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr ""
@@ -4346,20 +4329,20 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4467,15 +4450,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr ""
@@ -4581,36 +4564,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -4627,7 +4610,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr ""
@@ -4635,7 +4618,7 @@ msgstr ""
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr ""
@@ -4706,15 +4689,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -4738,11 +4721,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr ""
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr ""
@@ -4767,12 +4750,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -4862,7 +4845,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr ""
@@ -4898,16 +4881,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -4942,15 +4925,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr ""
@@ -5072,15 +5055,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr ""
@@ -5161,7 +5144,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr ""
@@ -5226,12 +5209,12 @@ msgstr ""
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr ""
@@ -5245,11 +5228,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5279,11 +5262,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5312,14 +5295,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr ""
@@ -5367,28 +5350,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -5434,7 +5417,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr ""
@@ -5528,7 +5511,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr ""
@@ -5576,53 +5559,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr ""
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -5634,7 +5617,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -5675,7 +5658,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -5695,104 +5678,104 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -5926,16 +5909,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -5955,40 +5938,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6094,7 +6077,7 @@ msgstr ""
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr ""
@@ -6140,7 +6123,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr ""
@@ -6165,11 +6148,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6190,33 +6173,33 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6294,6 +6277,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6397,15 +6381,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -6970,12 +6954,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr ""
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr ""
@@ -7010,11 +6994,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7048,37 +7032,96 @@ msgstr ""
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, python-brace-format
+msgid "Error: {name}: {exception_message}"
+msgstr ""
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+msgid "Installing app"
+msgstr ""
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, python-brace-format
+msgid "Error installing app: {string} {details}"
+msgstr ""
+
+#: plinth/setup.py:76
+#, python-brace-format
+msgid "Error updating app: {string} {details}"
+msgstr ""
+
+#: plinth/setup.py:82
+#, python-brace-format
+msgid "Error installing app: {error}"
+msgstr ""
+
+#: plinth/setup.py:85
+#, python-brace-format
+msgid "Error updating app: {error}"
+msgstr ""
+
+#: plinth/setup.py:89
+msgid "App installed."
+msgstr ""
+
+#: plinth/setup.py:91
+msgid "App updated"
+msgstr ""
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -7364,6 +7407,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr ""
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr ""
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr ""
@@ -7373,52 +7420,28 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr ""
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr ""
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr ""
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/lt/LC_MESSAGES/django.po b/plinth/locale/lt/LC_MESSAGES/django.po
index f4de31170..0d66d4dee 100644
--- a/plinth/locale/lt/LC_MESSAGES/django.po
+++ b/plinth/locale/lt/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2021-02-22 10:50+0000\n"
"Last-Translator: Kornelijus Tvarijanavičius \n"
"Language-Team: Lithuanian freedns.afraid.org."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr ""
@@ -1594,9 +1580,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1672,12 +1660,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr ""
@@ -1770,7 +1758,7 @@ msgstr ""
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1815,19 +1803,19 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr ""
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr ""
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr ""
@@ -1861,7 +1849,7 @@ msgstr ""
msgid "Aliases"
msgstr ""
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr ""
@@ -1942,7 +1930,7 @@ msgid ""
"configured reduces risk of security threat from the Internet."
msgstr ""
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr ""
@@ -2079,15 +2067,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2183,54 +2171,54 @@ msgstr ""
msgid "Delete this repository permanently?"
msgstr ""
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr ""
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr ""
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr ""
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr ""
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Apie"
@@ -2508,19 +2496,19 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr ""
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr ""
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr ""
@@ -2573,15 +2561,15 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr ""
@@ -2635,32 +2623,32 @@ msgid ""
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
@@ -2677,11 +2665,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr ""
@@ -2713,11 +2701,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -2737,11 +2725,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr ""
@@ -2763,15 +2751,15 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -2834,36 +2822,36 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, 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:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
@@ -2885,7 +2873,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr ""
@@ -2989,12 +2977,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3055,39 +3043,39 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
msgid "Site name updated"
msgstr ""
@@ -3100,11 +3088,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr ""
@@ -3149,7 +3137,7 @@ msgstr ""
msgid "Address"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3160,15 +3148,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3221,11 +3209,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr ""
@@ -3267,15 +3255,15 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr ""
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3288,7 +3276,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr ""
@@ -3308,27 +3296,22 @@ msgstr ""
msgid "Services"
msgstr ""
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr ""
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr ""
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
@@ -3805,7 +3788,7 @@ msgid "This connection is not active."
msgstr ""
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr ""
@@ -3848,7 +3831,7 @@ msgid "Create Connection"
msgstr ""
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr ""
@@ -3868,13 +3851,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr ""
@@ -3895,7 +3878,7 @@ msgid "Computer"
msgstr ""
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr ""
@@ -3905,13 +3888,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr ""
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
@@ -4094,245 +4077,245 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr ""
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr ""
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr ""
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr ""
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr ""
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr ""
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr ""
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr ""
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr ""
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr ""
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr ""
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr ""
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr ""
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr ""
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr ""
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr ""
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr ""
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr ""
@@ -4347,20 +4330,20 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4468,15 +4451,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr ""
@@ -4582,36 +4565,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -4628,7 +4611,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr ""
@@ -4636,7 +4619,7 @@ msgstr ""
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr ""
@@ -4707,15 +4690,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -4739,11 +4722,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr ""
@@ -4768,12 +4751,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -4863,7 +4846,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr ""
@@ -4899,16 +4882,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -4943,15 +4926,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr ""
@@ -5071,15 +5054,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr ""
@@ -5160,7 +5143,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr ""
@@ -5225,12 +5208,12 @@ msgstr ""
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr ""
@@ -5244,11 +5227,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5278,11 +5261,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5311,14 +5294,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr ""
@@ -5366,28 +5349,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -5433,7 +5416,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr ""
@@ -5527,7 +5510,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr ""
@@ -5575,53 +5558,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr ""
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -5633,7 +5616,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -5674,7 +5657,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -5694,104 +5677,104 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -5925,16 +5908,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -5954,40 +5937,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6093,7 +6076,7 @@ msgstr ""
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr ""
@@ -6139,7 +6122,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr ""
@@ -6164,11 +6147,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6189,33 +6172,33 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6293,6 +6276,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6396,15 +6380,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -6969,12 +6953,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr ""
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr ""
@@ -7009,11 +6993,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7047,37 +7031,96 @@ msgstr ""
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, python-brace-format
+msgid "Error: {name}: {exception_message}"
+msgstr ""
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+msgid "Installing app"
+msgstr ""
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, python-brace-format
+msgid "Error installing app: {string} {details}"
+msgstr ""
+
+#: plinth/setup.py:76
+#, python-brace-format
+msgid "Error updating app: {string} {details}"
+msgstr ""
+
+#: plinth/setup.py:82
+#, python-brace-format
+msgid "Error installing app: {error}"
+msgstr ""
+
+#: plinth/setup.py:85
+#, python-brace-format
+msgid "Error updating app: {error}"
+msgstr ""
+
+#: plinth/setup.py:89
+msgid "App installed."
+msgstr ""
+
+#: plinth/setup.py:91
+msgid "App updated"
+msgstr ""
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -7363,6 +7406,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr ""
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr ""
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr ""
@@ -7372,52 +7419,28 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr ""
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr ""
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr ""
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/lv/LC_MESSAGES/django.po b/plinth/locale/lv/LC_MESSAGES/django.po
index 635fcd1ab..88fd4871f 100644
--- a/plinth/locale/lv/LC_MESSAGES/django.po
+++ b/plinth/locale/lv/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: Automatically generated\n"
"Language-Team: none\n"
@@ -20,7 +20,7 @@ msgstr ""
msgid "Page source"
msgstr ""
-#: plinth/context_processors.py:23 plinth/views.py:84
+#: plinth/context_processors.py:23 plinth/views.py:82
msgid "FreedomBox"
msgstr ""
@@ -83,29 +83,15 @@ msgstr ""
msgid "Use the language preference set in the browser"
msgstr ""
-#: plinth/middleware.py:38 plinth/templates/setup.html:18
-msgid "Application installed."
-msgstr ""
-
-#: plinth/middleware.py:43
-#, python-brace-format
-msgid "Error installing application: {string} {details}"
-msgstr ""
-
-#: plinth/middleware.py:47
-#, python-brace-format
-msgid "Error installing application: {error}"
-msgstr ""
-
-#: plinth/modules/apache/__init__.py:33
+#: plinth/modules/apache/__init__.py:31
msgid "Apache HTTP Server"
msgstr ""
-#: plinth/modules/apache/__init__.py:41
+#: plinth/modules/apache/__init__.py:39
msgid "Web Server"
msgstr ""
-#: plinth/modules/apache/__init__.py:47
+#: plinth/modules/apache/__init__.py:45
#, python-brace-format
msgid "{box_name} Web Interface (Plinth)"
msgstr ""
@@ -131,11 +117,11 @@ msgid ""
"network."
msgstr ""
-#: plinth/modules/avahi/__init__.py:51
+#: plinth/modules/avahi/__init__.py:49
msgid "Service Discovery"
msgstr ""
-#: plinth/modules/avahi/__init__.py:64
+#: plinth/modules/avahi/__init__.py:62
msgid "Local Network Domain"
msgstr ""
@@ -143,36 +129,36 @@ msgstr ""
msgid "Backups allows creating and managing backup archives."
msgstr ""
-#: plinth/modules/backups/__init__.py:50 plinth/modules/backups/__init__.py:202
-#: plinth/modules/backups/__init__.py:247
+#: plinth/modules/backups/__init__.py:48 plinth/modules/backups/__init__.py:199
+#: plinth/modules/backups/__init__.py:244
msgid "Backups"
msgstr ""
-#: plinth/modules/backups/__init__.py:199
+#: plinth/modules/backups/__init__.py:196
msgid ""
"Enable an automatic backup schedule for data safety. Prefer an encrypted "
"remote backup location or an extra attached disk."
msgstr ""
-#: plinth/modules/backups/__init__.py:205
+#: plinth/modules/backups/__init__.py:202
msgid "Enable a Backup Schedule"
msgstr ""
-#: plinth/modules/backups/__init__.py:209
-#: plinth/modules/backups/__init__.py:256
-#: plinth/modules/storage/__init__.py:329
+#: plinth/modules/backups/__init__.py:206
+#: plinth/modules/backups/__init__.py:253
+#: plinth/modules/storage/__init__.py:326
#, python-brace-format
msgid "Go to {app_name}"
msgstr ""
-#: plinth/modules/backups/__init__.py:244
+#: plinth/modules/backups/__init__.py:241
#, python-brace-format
msgid ""
"A scheduled backup failed. Past {error_count} attempts for backup did not "
"succeed. The latest error is: {error_message}"
msgstr ""
-#: plinth/modules/backups/__init__.py:252
+#: plinth/modules/backups/__init__.py:249
msgid "Error During Backup"
msgstr ""
@@ -247,7 +233,7 @@ msgstr ""
#: plinth/modules/ikiwiki/forms.py:15
#: plinth/modules/networks/templates/connection_show.html:71
#: plinth/modules/samba/templates/samba.html:66
-#: plinth/modules/sharing/templates/sharing.html:33
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "Name"
msgstr ""
@@ -404,7 +390,7 @@ msgid "{box_name} storage"
msgstr ""
#: plinth/modules/backups/templates/backups.html:17
-#: plinth/modules/backups/views.py:111
+#: plinth/modules/backups/views.py:112
msgid "Create a new backup"
msgstr ""
@@ -453,7 +439,7 @@ msgid "Create Location"
msgstr ""
#: plinth/modules/backups/templates/backups_add_repository.html:19
-#: plinth/modules/gitweb/views.py:50
+#: plinth/modules/gitweb/views.py:52
msgid "Create Repository"
msgstr ""
@@ -509,7 +495,7 @@ msgstr ""
#: plinth/modules/backups/templates/backups_repository.html:87
#: plinth/modules/backups/templates/backups_restore.html:27
-#: plinth/modules/backups/views.py:206
+#: plinth/modules/backups/views.py:207
msgid "Restore"
msgstr ""
@@ -593,99 +579,99 @@ msgstr ""
msgid "Verify Host"
msgstr ""
-#: plinth/modules/backups/views.py:55
+#: plinth/modules/backups/views.py:56
msgid "Backup schedule updated."
msgstr ""
-#: plinth/modules/backups/views.py:74
+#: plinth/modules/backups/views.py:75
msgid "Schedule Backups"
msgstr ""
-#: plinth/modules/backups/views.py:106
+#: plinth/modules/backups/views.py:107
msgid "Archive created."
msgstr ""
-#: plinth/modules/backups/views.py:134
+#: plinth/modules/backups/views.py:135
msgid "Delete Archive"
msgstr ""
-#: plinth/modules/backups/views.py:146
+#: plinth/modules/backups/views.py:147
msgid "Archive deleted."
msgstr ""
-#: plinth/modules/backups/views.py:159
+#: plinth/modules/backups/views.py:160
msgid "Upload and restore a backup"
msgstr ""
-#: plinth/modules/backups/views.py:194
+#: plinth/modules/backups/views.py:195
msgid "Restored files from backup."
msgstr ""
-#: plinth/modules/backups/views.py:222
+#: plinth/modules/backups/views.py:223
msgid "No backup file found."
msgstr ""
-#: plinth/modules/backups/views.py:230
+#: plinth/modules/backups/views.py:231
msgid "Restore from uploaded file"
msgstr ""
-#: plinth/modules/backups/views.py:289
+#: plinth/modules/backups/views.py:290
msgid "No additional disks available to add a repository."
msgstr ""
-#: plinth/modules/backups/views.py:297
+#: plinth/modules/backups/views.py:298
msgid "Create backup repository"
msgstr ""
-#: plinth/modules/backups/views.py:324
+#: plinth/modules/backups/views.py:325
msgid "Create remote backup repository"
msgstr ""
-#: plinth/modules/backups/views.py:344
+#: plinth/modules/backups/views.py:345
msgid "Added new remote SSH repository."
msgstr ""
-#: plinth/modules/backups/views.py:366
+#: plinth/modules/backups/views.py:367
msgid "Verify SSH hostkey"
msgstr ""
-#: plinth/modules/backups/views.py:392
+#: plinth/modules/backups/views.py:393
msgid "SSH host already verified."
msgstr ""
-#: plinth/modules/backups/views.py:402
+#: plinth/modules/backups/views.py:403
msgid "SSH host verified."
msgstr ""
-#: plinth/modules/backups/views.py:417
+#: plinth/modules/backups/views.py:418
msgid "SSH host public key could not be verified."
msgstr ""
-#: plinth/modules/backups/views.py:419
+#: plinth/modules/backups/views.py:420
msgid "Authentication to remote server failed."
msgstr ""
-#: plinth/modules/backups/views.py:421
+#: plinth/modules/backups/views.py:422
msgid "Error establishing connection to server: {}"
msgstr ""
-#: plinth/modules/backups/views.py:432
+#: plinth/modules/backups/views.py:433
msgid "Repository removed."
msgstr ""
-#: plinth/modules/backups/views.py:446
+#: plinth/modules/backups/views.py:447
msgid "Remove Repository"
msgstr ""
-#: plinth/modules/backups/views.py:455
+#: plinth/modules/backups/views.py:456
msgid "Repository removed. Backups were not deleted."
msgstr ""
-#: plinth/modules/backups/views.py:465
+#: plinth/modules/backups/views.py:466
msgid "Unmounting failed!"
msgstr ""
-#: plinth/modules/backups/views.py:480 plinth/modules/backups/views.py:484
+#: plinth/modules/backups/views.py:481 plinth/modules/backups/views.py:485
msgid "Mounting failed"
msgstr ""
@@ -713,39 +699,39 @@ msgid ""
"the list."
msgstr ""
-#: plinth/modules/bepasty/__init__.py:38 plinth/modules/bepasty/__init__.py:47
+#: plinth/modules/bepasty/__init__.py:36 plinth/modules/bepasty/__init__.py:45
msgid "Read a file, if a web link to the file is available"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:39
+#: plinth/modules/bepasty/__init__.py:37
msgid "Create or upload files"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:40
+#: plinth/modules/bepasty/__init__.py:38
msgid "List all files and their web links"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:41
+#: plinth/modules/bepasty/__init__.py:39
msgid "Delete files"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:42
+#: plinth/modules/bepasty/__init__.py:40
msgid "Administer files: lock/unlock files"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:46
+#: plinth/modules/bepasty/__init__.py:44
msgid "None, password is always required"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:48
+#: plinth/modules/bepasty/__init__.py:46
msgid "List and read all files"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:63 plinth/modules/bepasty/manifest.py:6
+#: plinth/modules/bepasty/__init__.py:61 plinth/modules/bepasty/manifest.py:6
msgid "bepasty"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:65
+#: plinth/modules/bepasty/__init__.py:63
msgid "File & Snippet Sharing"
msgstr ""
@@ -836,16 +822,16 @@ msgstr ""
msgid "Admin"
msgstr ""
-#: plinth/modules/bepasty/views.py:90 plinth/modules/searx/views.py:38
-#: plinth/modules/searx/views.py:49 plinth/modules/tor/views.py:132
-#: plinth/modules/tor/views.py:159 plinth/modules/zoph/views.py:69
+#: plinth/modules/bepasty/views.py:90 plinth/modules/searx/views.py:40
+#: plinth/modules/searx/views.py:51 plinth/modules/tor/views.py:135
+#: plinth/modules/tor/views.py:162 plinth/modules/zoph/views.py:71
msgid "Configuration updated."
msgstr ""
#: plinth/modules/bepasty/views.py:93 plinth/modules/email/views.py:48
-#: plinth/modules/gitweb/views.py:117 plinth/modules/searx/views.py:41
-#: plinth/modules/searx/views.py:52 plinth/modules/tor/views.py:161
-#: plinth/modules/zoph/views.py:72
+#: plinth/modules/gitweb/views.py:119 plinth/modules/searx/views.py:43
+#: plinth/modules/searx/views.py:54 plinth/modules/tor/views.py:164
+#: plinth/modules/zoph/views.py:74
msgid "An error occurred during configuration."
msgstr ""
@@ -875,11 +861,11 @@ msgid ""
"connection from {box_name}."
msgstr ""
-#: plinth/modules/bind/__init__.py:76
+#: plinth/modules/bind/__init__.py:74
msgid "BIND"
msgstr ""
-#: plinth/modules/bind/__init__.py:77
+#: plinth/modules/bind/__init__.py:75
msgid "Domain Name Server"
msgstr ""
@@ -932,11 +918,11 @@ msgid "Refresh IP address and domains"
msgstr ""
#: plinth/modules/bind/views.py:71 plinth/modules/config/views.py:99
-#: plinth/modules/coturn/views.py:39 plinth/modules/deluge/views.py:42
+#: plinth/modules/coturn/views.py:41 plinth/modules/deluge/views.py:42
#: plinth/modules/dynamicdns/views.py:78 plinth/modules/ejabberd/views.py:96
-#: plinth/modules/email/views.py:45 plinth/modules/matrixsynapse/views.py:124
-#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:35
-#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
+#: plinth/modules/email/views.py:45 plinth/modules/matrixsynapse/views.py:126
+#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:37
+#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:29
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:43 plinth/modules/ttrss/views.py:26
#: plinth/modules/wordpress/views.py:37
@@ -966,15 +952,15 @@ msgid ""
"app. All users with access can use all the libraries."
msgstr ""
-#: plinth/modules/calibre/__init__.py:57
+#: plinth/modules/calibre/__init__.py:55
msgid "Use calibre e-book libraries"
msgstr ""
-#: plinth/modules/calibre/__init__.py:60 plinth/modules/calibre/manifest.py:6
+#: plinth/modules/calibre/__init__.py:58 plinth/modules/calibre/manifest.py:6
msgid "calibre"
msgstr ""
-#: plinth/modules/calibre/__init__.py:61
+#: plinth/modules/calibre/__init__.py:59
msgid "E-book Library"
msgstr ""
@@ -1034,20 +1020,20 @@ msgstr ""
msgid "Delete library %(library)s"
msgstr ""
-#: plinth/modules/calibre/views.py:39
+#: plinth/modules/calibre/views.py:41
msgid "Library created."
msgstr ""
-#: plinth/modules/calibre/views.py:50
+#: plinth/modules/calibre/views.py:52
msgid "An error occurred while creating the library."
msgstr ""
-#: plinth/modules/calibre/views.py:64 plinth/modules/gitweb/views.py:138
+#: plinth/modules/calibre/views.py:66 plinth/modules/gitweb/views.py:141
#, python-brace-format
msgid "{name} deleted."
msgstr ""
-#: plinth/modules/calibre/views.py:68 plinth/modules/gitweb/views.py:142
+#: plinth/modules/calibre/views.py:70 plinth/modules/gitweb/views.py:145
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr ""
@@ -1076,12 +1062,12 @@ msgid ""
"belonging to the admin group."
msgstr ""
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr ""
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr ""
@@ -1091,18 +1077,18 @@ msgid ""
"name, webserver home page etc."
msgstr ""
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr ""
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr ""
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1254,11 +1240,11 @@ msgid ""
"be configured with the details provided here."
msgstr ""
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr ""
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr ""
@@ -1280,11 +1266,11 @@ msgid ""
"synchronization with servers on the Internet."
msgstr ""
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr ""
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr ""
@@ -1321,17 +1307,17 @@ msgid ""
"immediately after enabling this service."
msgstr ""
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr ""
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr ""
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr ""
@@ -1349,56 +1335,56 @@ msgid ""
"confirm that applications and services are working as expected."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr ""
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr ""
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
"{memory_available_unit} free. {advice_message}"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr ""
@@ -1476,11 +1462,11 @@ msgid ""
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr ""
@@ -1590,9 +1576,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1668,12 +1656,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr ""
@@ -1766,7 +1754,7 @@ msgstr ""
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1811,19 +1799,19 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr ""
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr ""
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr ""
@@ -1857,7 +1845,7 @@ msgstr ""
msgid "Aliases"
msgstr ""
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr ""
@@ -1938,7 +1926,7 @@ msgid ""
"configured reduces risk of security threat from the Internet."
msgstr ""
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr ""
@@ -2075,15 +2063,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2179,54 +2167,54 @@ msgstr ""
msgid "Delete this repository permanently?"
msgstr ""
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr ""
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr ""
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr ""
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr ""
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
@@ -2504,19 +2492,19 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr ""
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr ""
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr ""
@@ -2569,15 +2557,15 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr ""
@@ -2631,32 +2619,32 @@ msgid ""
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
@@ -2673,11 +2661,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr ""
@@ -2709,11 +2697,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -2733,11 +2721,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr ""
@@ -2759,15 +2747,15 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -2830,36 +2818,36 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, 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:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
@@ -2881,7 +2869,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr ""
@@ -2985,12 +2973,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3051,39 +3039,39 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
msgid "Site name updated"
msgstr ""
@@ -3096,11 +3084,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr ""
@@ -3145,7 +3133,7 @@ msgstr ""
msgid "Address"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3156,15 +3144,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3217,11 +3205,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr ""
@@ -3263,15 +3251,15 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr ""
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3284,7 +3272,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr ""
@@ -3304,27 +3292,22 @@ msgstr ""
msgid "Services"
msgstr ""
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr ""
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr ""
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
@@ -3801,7 +3784,7 @@ msgid "This connection is not active."
msgstr ""
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr ""
@@ -3844,7 +3827,7 @@ msgid "Create Connection"
msgstr ""
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr ""
@@ -3864,13 +3847,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr ""
@@ -3891,7 +3874,7 @@ msgid "Computer"
msgstr ""
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr ""
@@ -3901,13 +3884,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr ""
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
@@ -4090,245 +4073,245 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr ""
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr ""
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr ""
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr ""
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr ""
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr ""
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr ""
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr ""
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr ""
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr ""
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr ""
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr ""
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr ""
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr ""
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr ""
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr ""
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr ""
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr ""
@@ -4343,20 +4326,20 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4464,15 +4447,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr ""
@@ -4578,36 +4561,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -4624,7 +4607,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr ""
@@ -4632,7 +4615,7 @@ msgstr ""
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr ""
@@ -4703,15 +4686,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -4735,11 +4718,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr ""
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr ""
@@ -4764,12 +4747,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -4859,7 +4842,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr ""
@@ -4895,16 +4878,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -4939,15 +4922,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr ""
@@ -5067,15 +5050,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr ""
@@ -5156,7 +5139,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr ""
@@ -5221,12 +5204,12 @@ msgstr ""
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr ""
@@ -5240,11 +5223,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5274,11 +5257,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5307,14 +5290,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr ""
@@ -5362,28 +5345,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -5429,7 +5412,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr ""
@@ -5523,7 +5506,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr ""
@@ -5571,53 +5554,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr ""
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -5629,7 +5612,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -5670,7 +5653,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -5690,104 +5673,104 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -5921,16 +5904,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -5950,40 +5933,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6089,7 +6072,7 @@ msgstr ""
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr ""
@@ -6135,7 +6118,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr ""
@@ -6160,11 +6143,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6185,33 +6168,33 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6289,6 +6272,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6392,15 +6376,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -6965,12 +6949,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr ""
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr ""
@@ -7005,11 +6989,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7043,37 +7027,96 @@ msgstr ""
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, python-brace-format
+msgid "Error: {name}: {exception_message}"
+msgstr ""
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+msgid "Installing app"
+msgstr ""
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, python-brace-format
+msgid "Error installing app: {string} {details}"
+msgstr ""
+
+#: plinth/setup.py:76
+#, python-brace-format
+msgid "Error updating app: {string} {details}"
+msgstr ""
+
+#: plinth/setup.py:82
+#, python-brace-format
+msgid "Error installing app: {error}"
+msgstr ""
+
+#: plinth/setup.py:85
+#, python-brace-format
+msgid "Error updating app: {error}"
+msgstr ""
+
+#: plinth/setup.py:89
+msgid "App installed."
+msgstr ""
+
+#: plinth/setup.py:91
+msgid "App updated"
+msgstr ""
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -7359,6 +7402,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr ""
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr ""
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr ""
@@ -7368,52 +7415,28 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr ""
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr ""
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr ""
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/nb/LC_MESSAGES/django.po b/plinth/locale/nb/LC_MESSAGES/django.po
index 04ce7c188..6f26b65ef 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2022-05-16 14:14+0000\n"
"Last-Translator: Petter Reinholdtsen \n"
"Language-Team: Norwegian Bokmål calibre-gruppen vil ha tilgang til "
"programmet. Alle brukere med tilgang kan bruke alle bibliotekene."
-#: plinth/modules/calibre/__init__.py:57
+#: plinth/modules/calibre/__init__.py:55
msgid "Use calibre e-book libraries"
msgstr "Bruk calibre ebokbibliotek"
-#: plinth/modules/calibre/__init__.py:60 plinth/modules/calibre/manifest.py:6
+#: plinth/modules/calibre/__init__.py:58 plinth/modules/calibre/manifest.py:6
msgid "calibre"
msgstr "calibre"
-#: plinth/modules/calibre/__init__.py:61
+#: plinth/modules/calibre/__init__.py:59
msgid "E-book Library"
msgstr "E-bok-bibliotek"
@@ -1142,22 +1128,22 @@ msgstr "Gå til biblioteket %(library)s"
msgid "Delete library %(library)s"
msgstr "Slett biblioteket %(library)s"
-#: plinth/modules/calibre/views.py:39
+#: plinth/modules/calibre/views.py:41
msgid "Library created."
msgstr "Bibliotek opprettet."
-#: plinth/modules/calibre/views.py:50
+#: plinth/modules/calibre/views.py:52
#, fuzzy
#| msgid "An error occurred during configuration."
msgid "An error occurred while creating the library."
msgstr "En feil oppsto under konfigureringen."
-#: plinth/modules/calibre/views.py:64 plinth/modules/gitweb/views.py:138
+#: plinth/modules/calibre/views.py:66 plinth/modules/gitweb/views.py:141
#, python-brace-format
msgid "{name} deleted."
msgstr "Slettet {name}."
-#: plinth/modules/calibre/views.py:68 plinth/modules/gitweb/views.py:142
+#: plinth/modules/calibre/views.py:70 plinth/modules/gitweb/views.py:145
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr "Kunne ikke slette {name}: {error}"
@@ -1196,12 +1182,12 @@ msgstr ""
"Den kan brukes av enhver bruker på {box_name} "
"som er medlem i admin-gruppen."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Styrhus"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "Tjeneradministrasjon"
@@ -1213,18 +1199,18 @@ msgstr ""
"Her kan du sette noen generelle oppsettsvalg som vertsnavn, domenenavn, "
"vevtjener-hjemmeside, etc."
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "Generelt oppsett"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "Oppsett"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1400,11 +1386,11 @@ msgstr ""
"\"{ms_url}\">Matrix Synapse eller ejabberd må "
"settes opp med detaljene herfra."
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "Coturn"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr "VoIP-hjelper"
@@ -1430,11 +1416,11 @@ msgstr ""
"Nettverkstidstjeneren er et program som synkroniserer systemets klokke med "
"tjenere på Internettet."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "Dato og tid"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "Tid synkronisert til NTP-tjener"
@@ -1475,17 +1461,17 @@ msgstr ""
"Standardpassordet er «deluge», men du bør logge inn og endre det umiddelbart "
"etter at denne tjenesten er aktivert."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "Last ned filer ved bruk av BitTorrent-programmer"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "Deluge"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "BitTorrent nett-klient"
@@ -1505,60 +1491,60 @@ msgstr ""
"Systemets diagnostikktest vil kjøre en rekke kontroller på systemet for å få "
"bekreftet at programmer og tjenester fungerer som forventet."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "Diagnostikk"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
#, fuzzy
#| msgid "Quassel"
msgid "passed"
msgstr "Quassel"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr "feilet"
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr "feil"
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr ""
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr "MiB"
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
#, fuzzy
#| msgid "Git"
msgid "GiB"
msgstr "Git"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr "Du bør skru av noen programmer for å redusere minnebruken."
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr "Du bør ikke installere noen nye programmer på dette systemet."
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
"{memory_available_unit} free. {advice_message}"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr "Lite minne"
@@ -1662,11 +1648,11 @@ msgstr ""
"baserte oppdateringstjenester her freedns.afraid.org ."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "Dynamisk DNS-klient"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr "Dynamisk domenenavn"
@@ -1800,9 +1786,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1899,12 +1887,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "ejabberd"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "Nettprat-tjener"
@@ -2011,7 +1999,7 @@ msgstr "Dino"
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2059,23 +2047,23 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
#, fuzzy
#| msgid "Chat Server"
msgid "Email Server"
msgstr "Nettprat-tjener"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
#, fuzzy
#| msgid "Manage Libraries"
msgid "My Email Aliases"
msgstr "Håndter biblioteker"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
#, fuzzy
#| msgid "Manage Libraries"
msgid "Manage Aliases for Mailbox"
@@ -2115,7 +2103,7 @@ msgstr ""
msgid "Aliases"
msgstr "Håndter biblioteker"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr "Roundcube"
@@ -2207,7 +2195,7 @@ msgstr ""
"utgående nettverkstrafikk på din {box_name}. Å holde en brannmur aktivert og "
"riktig konfigurert, reduserer risikoen for sikkerhetstrusler fra Internett."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "Brannmur"
@@ -2367,16 +2355,16 @@ msgstr ""
"For å lære mer om bruk av Git, besøk Git-veiledningen."
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
#, fuzzy
msgid "Read-write access to Git repositories"
msgstr "Lese- og skrivetilgang til Git-kodelagre"
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr "Gitweb"
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr "Enkelt Git-vertsskap"
@@ -2488,29 +2476,29 @@ msgstr "Slett Git-kodelager %(name)s"
msgid "Delete this repository permanently?"
msgstr "Slett dette kodelageret for godt?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr "Kodelager opprettet."
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
#, fuzzy
#| msgid "An error occurred during configuration."
msgid "An error occurred while creating the repository."
msgstr "En feil oppsto under konfigureringen."
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr "Kodelager redigert.."
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr "Rediger kodelager"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "Dokumentasjon"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
#, fuzzy
#| msgid "Manual"
@@ -2518,28 +2506,28 @@ msgctxt "User guide"
msgid "Manual"
msgstr "Manual"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr "Få støtte"
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr "Send inn tilbakemeldinger"
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "Bidra"
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Om"
@@ -2897,19 +2885,19 @@ msgstr ""
"Den første til å besøke det oppsatte nettgrensesnittet vil igangsette "
"oppsettsprosessen."
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr "Håndter I2P-program"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr "I2P"
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr "Anonymitetsnettverk"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr "I2P-mellomtjener"
@@ -2984,15 +2972,15 @@ msgstr ""
"\"{users_url}\">brukeroppsettet kan du endre disse tilgangene eller "
"legge til nye brukere."
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr "ikiwiki"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr "Wiki og Blogg"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr "Vis og rediger wiki-programmer"
@@ -3048,32 +3036,32 @@ msgstr ""
"Denne handlingen vil fjerne alle poster, sider og kommentarer inkludert "
"revisjonshistorien. Skal denne wiki-en eller bloggen slettes for godt?"
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "Opprettet wiki {name}."
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "Kunne ikke opprette wiki: {error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "Opprettet blogg {name}."
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "Kunne ikke lage blogg: {error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr "{title} slettet."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr "Kunne ikke slette {title}: {error}"
@@ -3093,11 +3081,11 @@ msgstr ""
"skrivebordsklient og installer den. Deretter starter du Gobby og velger "
"«Koble til tjener», og skriver inn domenenavnet til din {box_name} ."
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr "infinoted"
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr "Gobby-tjener"
@@ -3131,11 +3119,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -3157,11 +3145,11 @@ msgstr ""
"JSXC er en nettleserklient for XMPP. Typisk brukes den med en XMPP-tjener "
"som kjører lokalt."
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr "JSXC"
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr "Nettpratklient"
@@ -3192,15 +3180,15 @@ msgstr ""
"les og aksepter Let's "
"Encrypt Subscriber Agreement før tjenesten brukes."
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr "Let's Encrypt"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "Sertifikater"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -3265,7 +3253,7 @@ msgstr ""
"Ingen domener er satt opp. Sett opp domener "
"for å kunne skaffe sertifikater for dem."
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
@@ -3274,29 +3262,29 @@ msgstr ""
"Sertifikat tilbakekalt for domenet {domain}. Det kan ta en liten stund før "
"dette tar effekt."
-#: plinth/modules/letsencrypt/views.py:47
+#: plinth/modules/letsencrypt/views.py:49
#, python-brace-format
msgid "Failed to revoke certificate for domain {domain}: {error}"
msgstr "Klarte ikke å inndra sertifikatet for domenet {domain}: {error}"
-#: plinth/modules/letsencrypt/views.py:60
-#: plinth/modules/letsencrypt/views.py:77
+#: plinth/modules/letsencrypt/views.py:62
+#: plinth/modules/letsencrypt/views.py:79
#, python-brace-format
msgid "Certificate successfully obtained for domain {domain}"
msgstr "Sertifikat vellykket innhentet til domene {domain}"
-#: plinth/modules/letsencrypt/views.py:65
-#: plinth/modules/letsencrypt/views.py:82
+#: plinth/modules/letsencrypt/views.py:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr "Klarte ikke å oppnå sertifikat til domene {domain}: {error}"
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr "Vellykket sletting av sertifikatet for domenet {domain}"
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr "Klarte ikke å slette sertifikatet for domenet {domain}: {error}"
@@ -3324,7 +3312,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr "Matrix Synapse"
@@ -3461,12 +3449,12 @@ msgstr ""
"Alle med en lenke til denne wiki-en kan lese den. Kun innloggede brukere kan "
"endre innholdet."
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr "MediaWiki"
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr "Wiki"
@@ -3541,41 +3529,41 @@ msgstr ""
"Velg forvalgsdrakt for din MediaWiki-installasjon. Brukere kan velge egen "
"drakt."
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "Passord oppdatert"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr "Passordoppdatering feilet. Vennligst bruk ett sterkere passord"
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr "Offentlig registrering aktivert"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr "Offentlig registrering avskrudd"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr "Privat modus påskrudd"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr "Privat modus avskrudd"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr "Forvalgt drakt endret"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Domain name set"
msgid "Domain name updated"
msgstr "Domenenavn satt"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
#, fuzzy
#| msgid "Domain name set"
msgid "Site name updated"
@@ -3594,11 +3582,11 @@ msgstr ""
"porten (30000). For å koble til tjeneren trengs en Minetest-klient."
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr "Minetest"
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr "Block-sandkassen"
@@ -3648,7 +3636,7 @@ msgstr ""
msgid "Address"
msgstr "Adresse"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3666,15 +3654,15 @@ msgstr ""
"smartelefoner, fjernsynsapparater, og spillkonsoller (som PS3 og Xbox 360) "
"eller programmer som totem og Kodi."
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr "Media-strømmetjener"
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr "MiniDLNA"
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
#, fuzzy
msgid "Simple Media Server"
msgstr "Enkel mediatjener"
@@ -3742,11 +3730,11 @@ msgstr ""
"\"http://mumble.info\">Klienter for å koble til Mumble når skrivebordet "
"og/eller Android-enheter er tilgjengelige."
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr "Mumble"
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr "Talenettprat"
@@ -3799,19 +3787,19 @@ msgstr "Mumblefly"
msgid "Mumla"
msgstr "Mumla"
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
#, fuzzy
#| msgid "Password changed successfully."
msgid "SuperUser password successfully updated."
msgstr "Vellykket passordbytte."
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
#, fuzzy
#| msgid "Upload password updated"
msgid "Join password changed"
msgstr "Oppdaterte opplastingspassord"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3834,7 +3822,7 @@ msgstr ""
"vises det om HTTP, HTTPS, og SSH-tjenester er på- eller avskrudd for "
"innkommende tilkoblinger gjennom gitt navn."
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "Navnetjenester"
@@ -3856,7 +3844,7 @@ msgstr "Secure Shell (SSH)"
msgid "Services"
msgstr "Tjeneste"
-#: plinth/modules/networks/__init__.py:36
+#: 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."
@@ -3864,7 +3852,7 @@ msgstr ""
"Sett opp nettverksenheter. Sett opp Internett via Ethernet, Wi-Fi eller "
"PPPoE. Del den tilkoblingen med andre enheter på nettverket."
-#: plinth/modules/networks/__init__.py:38
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
@@ -3872,15 +3860,10 @@ msgstr ""
"Enheter administrert gjennom andre metoder kan være utilgjengelige for "
"oppsett her."
-#: plinth/modules/networks/__init__.py:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "Nettverk"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "Bruker DNSSEC på IPv{kind}"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "Oppkoblingstype"
@@ -4394,7 +4377,7 @@ msgid "This connection is not active."
msgstr "Denne forbindelsen er ikke aktiv."
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "Sikkerhet"
@@ -4444,7 +4427,7 @@ msgid "Create Connection"
msgstr "Lage forbindelse"
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "Slett tilkobling"
@@ -4464,13 +4447,13 @@ msgstr "Lage mellomrom"
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "Ethernet"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "Wi-Fi"
@@ -4491,7 +4474,7 @@ msgid "Computer"
msgstr "Datamaskin"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "Endre oppkobling"
@@ -4503,13 +4486,13 @@ msgstr "Tilkobling"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "Wi-Fi-nettverk i nærheten"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "Legg til tilkobling"
@@ -4712,289 +4695,289 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
#, fuzzy
#| msgid "Disabled"
msgid "disabled"
msgstr "Deaktivert"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
#, fuzzy
#| msgid "Automatic"
msgid "automatic"
msgstr "Automatisk"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
#, fuzzy
#| msgid "Manual"
msgid "manual"
msgstr "Manual"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
#, fuzzy
#| msgid "Shared"
msgid "shared"
msgstr "Delt"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr "ukjent"
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
#, fuzzy
#| msgid "Manage"
msgid "unmanaged"
msgstr "Håndtere"
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
#, fuzzy
#| msgid "Available Domains"
msgid "unavailable"
msgstr "Tilgjengelige domener"
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
#, fuzzy
#| msgid "cable is connected"
msgid "disconnected"
msgstr "kabel er tilknyttet"
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
#, fuzzy
#| msgid "Sharing"
msgid "preparing"
msgstr "Deling"
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
#, fuzzy
#| msgid "Connection"
msgid "connecting"
msgstr "Tilkobling"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "needs authentication"
msgstr "Bruk HTTP-basisgodkjenning"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr "sjekker"
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
#, fuzzy
#| msgid "Deactivate"
msgid "activated"
msgstr "Deaktivere"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
#, fuzzy
#| msgid "Deactivate"
msgid "deactivating"
msgstr "Deaktivere"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
#, fuzzy
#| msgid "State reason"
msgid "no reason"
msgstr "Grunn til tilstand"
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr "Enheten er nå håndtert"
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr "Enheten er nå ikke håndtert"
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
#, fuzzy
#| msgid "configuration file: {file}"
msgid "configuration failed"
msgstr "oppsettsfil: {file}"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr "DHCP-klientfeil"
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr "DHCP-klient feilet"
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr "delt forbindelsestjeneste feilet"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr "enhet ble fjernet"
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr "enhet frakoblet av bruker"
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
#, fuzzy
#| msgid "Client not found"
msgid "Wi-Fi network not found"
msgstr "Finner ikke klient"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
#, fuzzy
#| msgid "Generic"
msgid "generic"
msgstr "Generisk"
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
#, fuzzy
#| msgid "Network Interface"
msgid "TUN or TAP interface"
msgstr "Nettverksgrensesnitt"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr "WireGuard"
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
#, fuzzy
#| msgid "Ad-hoc"
msgid "ad-hoc"
msgstr "Ad-hoc"
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
#, fuzzy
#| msgid "Infrastructure"
msgid "infrastructure"
msgstr "Infrastruktur"
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
#, fuzzy
#| msgid "Access Point"
msgid "access point"
msgstr "Aksesspunkt"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
#, fuzzy
#| msgid "Access Point"
msgid "mesh point"
msgstr "Aksesspunkt"
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "Nettverksoppkoblinger"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr "Kan ikke vise tilkobling: Tilkobling ikke funnet."
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr "Oppkoblingsinformasjon"
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "Kan ikke redigere tilkobling: Tilkobling ikke funnet."
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr "Denne typen tilkobling er ennå ikke forstått."
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr "Aktiverte tilkobling {name}."
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr "Kunne ikke aktivere tilkobling: Tilkobling ikke funnet."
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, 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/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "Deaktivert tilkobling {name}."
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr "Kunne ikke deaktivere tilkobling: Tilkobling ikke funnet."
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr "Legger til ny generell tilkobling"
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "Legge til ny Ethernet-tilkobling"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "Legge til ny PPPoE-tilkobling"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "Legge til ny Wi-Fi-tilkobling"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "Tilkobling {name} slettet."
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr "Kunne ikke slette tilkobling: Tilkobling ikke funnet."
@@ -5015,22 +4998,22 @@ msgstr ""
"Du kan også få tilgang til resten av Internettet via {box_name} med utvidet "
"sikkerhet og anonymitet."
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
#, fuzzy
#| msgid "Connection Type"
msgid "Connect to VPN services"
msgstr "Oppkoblingstype"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr "OpenVPN"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr "Virtuelt privat nettverk"
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -5166,15 +5149,15 @@ msgstr ""
"\"https://pagekite.net\">pagekite.net. I fremtiden kan det bli mulig å "
"bruke kameratens {box_name} til dette."
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr "PageKite"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr "Offentlig synlighet"
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr "PageKite-domene"
@@ -5297,31 +5280,31 @@ msgstr ""
"alle protokoll-/portkombinasjoner som du kan definere her. For eksempel, "
"HTTPS på andre ting enn 443 er kjent for å forårsake problemer."
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr "Web-tjener (HTTP)"
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
"Nettstedet vil være tilgjengelig på http://{0}"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr "Web-tjener (HTTPS)"
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
"Nettstedet vil bli tilgjengelig på https://{0}"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr "Secure Shell (SSH)"
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
@@ -5330,7 +5313,7 @@ msgstr ""
"SshOverPageKite/\">instructions (instruksjoner)"
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr "Ytelse"
@@ -5347,7 +5330,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
#, fuzzy
#| msgid "System Configuration"
msgid "System Monitoring"
@@ -5357,7 +5340,7 @@ msgstr "Systemoppsett"
msgid "Restart or shut down the system."
msgstr "Start om igjen, eller slå av systemet."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "Strøm"
@@ -5455,15 +5438,15 @@ msgstr ""
"\"http://config.privoxy.org\">http://config.privoxy.org/ eller http://p.p."
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr "Privoxy"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr "Mellomtjener for nettet"
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr "Tilgang {url} med mellomtjener {proxy} på tcp{kind}"
@@ -5497,11 +5480,11 @@ msgstr ""
"downloads\"> desktop , og mobile enheter er tilgjengelig."
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr "IRC-klient"
@@ -5538,12 +5521,12 @@ msgstr ""
"kalendre og adressebøker. Den tilbyr ikke å legge inn nye hendelser eller "
"kontakter, det må gjøres med en egen klient."
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr "Radicale"
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr "Kalender og adressebok"
@@ -5664,7 +5647,7 @@ msgstr ""
"lesssecureapps\">https://www.google.com/settings/security/lesssecureapps"
"a>)."
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr "E-postklient"
@@ -5705,18 +5688,18 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr "Les og abonner på nyhetsstrømmer"
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
#, fuzzy
#| msgid "Bridge"
msgid "RSS-Bridge"
msgstr "Bro"
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5751,15 +5734,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr "Tilgang til private delinger"
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr "Samba"
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
#, fuzzy
#| msgid "Distributed File Storage"
msgid "Network File Storage"
@@ -5902,15 +5885,15 @@ msgstr ""
"Searx kan brukes for å unngå sporing og profilbygging av søkemotorer. Den "
"lagrer ingen kaker som forvalg."
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr "Søk på nettet"
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr "Searx"
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr "Nettsøk"
@@ -6002,7 +5985,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
#, fuzzy
#| msgid "Security Notice"
msgid "Security Report"
@@ -6086,12 +6069,12 @@ msgstr "Nei"
msgid "Not running"
msgstr "Kjører ikke"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Feil ved oppsetting av begrenset tilgang: {exception}"
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr "Oppdaterte sikkerhetsoppsett"
@@ -6107,11 +6090,11 @@ msgstr ""
"Merk at Shaarli kun støtter en enkelt brukerkonto, som du må sette opp ved "
"det første besøket."
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "Shaarli"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr "Bokmerker"
@@ -6152,11 +6135,11 @@ msgstr ""
"For å bruke Shadowsocks etter oppsett, legg SOCKS5-mellomtjenernettadresen "
"på din enhet, nettleser, eller program til http://freedombox_address:1080/"
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr "Shadowsocks"
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr "SOCKS5-mellomtjener"
@@ -6185,7 +6168,7 @@ msgstr "Passord brukt for å kryptere data. Må samsvare med tjenerpassord."
msgid "Encryption method. Must match setting on server."
msgstr "Krypteringsmetode. Må samsvare med den brukt på tjeneren."
-#: plinth/modules/sharing/__init__.py:20
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -6194,7 +6177,7 @@ msgstr ""
"Deling lar deg dele filer og mapper på din {box_name} over nettet, med en "
"utvalgt gruppe brukere."
-#: plinth/modules/sharing/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr "Deling"
@@ -6246,28 +6229,28 @@ msgstr "En deling ved dette navnet finnes allerede."
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:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr "Legg til deling"
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr "Ingen delte områder er satt opp foreløpig."
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr "Disksti"
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr "Delt over"
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr "Med Grupper"
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr "Offentlig tilgang"
@@ -6323,7 +6306,7 @@ msgstr ""
"partisjoner. Avbildninger er ikke en erstatning for sikkerhetskopier i og med at de er lagret på samme partisjon. "
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr "Lagrings-avbildninger"
@@ -6430,7 +6413,7 @@ msgstr "Dato"
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr "Slett avbildninger"
@@ -6489,53 +6472,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr "Rull tilbake til øyeblikksbilde #%(number)s"
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr "manuelt opprettet"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr "tidslinje"
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr "apt"
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr "Behandle avbildninger"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr "Opprett øyeblikksbilde."
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr "Oppsett for lagringsavbildninger oppdatert"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Handlingsfeil: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr "Slettet alle valgte avbildninger"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
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:211
#, 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:214
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:226
msgid "Rollback to Snapshot"
msgstr "Rull tilbake til øyeblikksbilde"
@@ -6551,7 +6534,7 @@ msgstr ""
"annensteds hen kan utføre administrasjonsoppgaver, kopiere filer eller kjøre "
"andre tjenester ved bruk av slike tilkoblinger."
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr "Secure Shell (SSH) tjener"
@@ -6602,7 +6585,7 @@ msgstr "SSH-identitetsbekreftelse med passord avskrudd."
msgid "SSH authentication with password enabled."
msgstr "SSH-autentisering med passord aktivert."
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr "Engangspålogging"
@@ -6627,92 +6610,92 @@ msgstr ""
"kan vise lagringsmedia som er i bruk, montere og avmontere flyttbare medium, "
"utvide rotpartisjonen, osv."
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr "Lager"
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} byte"
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr "Operasjonen mislyktes."
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr "Operasjonen ble avbrutt."
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr "Enheten avmonteres allerede."
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
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:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr "Tidsavbrudd for operasjon."
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
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:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr "Prøver å avmontere en opptatt enhet."
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr "Operasjonen har allerede blitt avbrutt."
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr "Mangler rettigheter til utførelse av forespurt operasjon."
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr "Denne enheten er allerede montert."
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr "Enheten er ikke montert."
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr "Mangler rettigheter til bruk av forespurt valg."
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr "Enheten er montert av en annen bruker."
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, fuzzy, no-python-format, python-brace-format
#| msgid ""
#| "Warning: Low space on system partition ({percent_used}% used, "
@@ -6722,15 +6705,15 @@ msgstr ""
"Advarsel: Lite plass igjen på systempartisjon ({percent_used}% brukt, "
"{free_space} ledig)."
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr "Lite ledig diskplass"
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr "Diskfeil nært forestående"
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6888,16 +6871,16 @@ 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:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr "Administrer Syncthing-programmet"
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr "Syncthing"
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr "Filsynkronisering"
@@ -6924,40 +6907,40 @@ msgid ""
msgstr ""
"En Tor SOCKS-port er tilgjengelig på din %(box_name)s på TCP port 9050."
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr "Tor"
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr "Tor-løktjeneste"
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr "Tor Socks-mellomtjener"
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr "Tor bro-stafettvideresendingsoppsett"
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr "Tor relay-port tilgjengelig"
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr "Obfs3-transport registrert"
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr "Obfs4-transport registrert"
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, 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:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Bekreft Tor-bruk på {url} via tcp{kind}"
@@ -7085,7 +7068,7 @@ msgstr "Løktjeneste"
msgid "Ports"
msgstr "Porter"
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "Oppsett uendret"
@@ -7138,7 +7121,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr "Transmission"
@@ -7177,11 +7160,11 @@ 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:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr "Tiny Tiny RSS"
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr "Nyhetstrøm-leser"
@@ -7202,8 +7185,8 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
#, fuzzy
@@ -7211,30 +7194,30 @@ msgstr ""
msgid "Software Update"
msgstr "Programvare-oppgraderinger"
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
#, fuzzy
#| msgid "FreedomBox Foundation"
msgid "FreedomBox Updated"
msgstr "FreedomBox Foundation"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
#, fuzzy
#| msgid "Automatic upgrades disabled"
msgid "Distribution update started"
msgstr "Automatiske oppgraderinger avslått (deaktivert)"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -7333,6 +7316,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr "Avslå"
@@ -7461,15 +7445,15 @@ 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:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr "Brukere og grupper"
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr "Tilgang til alle tjenester og systeminnstillinger"
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Sjekk LDAP-oppføring «{search_item}»"
@@ -8104,14 +8088,14 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
#, fuzzy
#| msgid "Address"
msgid "WordPress"
msgstr "Adresse"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
#, fuzzy
#| msgid "Wiki and Blog"
msgid "Website and Blog"
@@ -8151,11 +8135,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr "Zoph"
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr "Foto-organiserer"
@@ -8193,37 +8177,112 @@ msgstr "PPPoE"
msgid "Generic"
msgstr "Generisk"
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Feil ved setting av vertsnavn: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, fuzzy, python-brace-format
+#| msgid "Service disabled: {name}"
+msgid "Finished: {name}"
+msgstr "Tjeneste deaktivert: {name}"
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr "Pakke {expression} er ikke tilgjengelig for installasjon"
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr "Pakke {package_name} er siste versjon ({latest_version})"
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr "Feil under installasjon"
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr "installering"
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr "laster ned"
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr "mediaendring"
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr "oppsettsfil: {file}"
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "Installer App-er"
+
+#: plinth/setup.py:46
+#, fuzzy
+#| msgid "Updating..."
+msgid "Updating app"
+msgstr "Oppdaterer…"
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Feil ved programinstallering: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Feil ved programinstallering: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Feil ved programinstallering: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Feil ved programinstallering: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Program installert."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "Siste oppdatering"
+
+#: plinth/setup.py:411
+#, fuzzy
+#| msgid "Upgrade Packages"
+msgid "Updating app packages"
+msgstr "Oppgrader pakker"
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Forbudt"
@@ -8542,6 +8601,10 @@ msgstr "Fra ruter/WAN-porter"
msgid "To %(box_name)s Ports"
msgstr "Til portene for %(box_name)s"
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Program installert."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr "Installere dette programmet?"
@@ -8551,22 +8614,14 @@ msgid "This application needs an update. Update now?"
msgstr "Dette programmet trenger en oppdatering. Oppdatere nå?"
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-"En annen installasjon eller oppgradering kjører allerede. Vent litt før du "
-"prøver igjen."
-
-#: plinth/templates/setup.html:46
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:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr "Sjekk på nytt"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
@@ -8576,36 +8631,43 @@ msgstr ""
"systemet er i konflikt med installasjon av dette programmet. Følgende pakker "
"vil bli fjernet om du fortsetter:"
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr "Installer"
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr "Oppdater"
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr "Utfører en forhåndsinstallasjon"
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr "Utfører en etterinstallasjon"
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr "Installere %(package_names)s: %(status)s"
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "%(percentage)s%% fullført"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr "Gujarati"
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "Bruker DNSSEC på IPv{kind}"
+
+#~ msgid ""
+#~ "Another installation or upgrade is already running. Please wait for a few "
+#~ "moments before trying again."
+#~ msgstr ""
+#~ "En annen installasjon eller oppgradering kjører allerede. Vent litt før "
+#~ "du prøver igjen."
+
+#~ msgid "Performing pre-install operation"
+#~ msgstr "Utfører en forhåndsinstallasjon"
+
+#~ msgid "Performing post-install operation"
+#~ msgstr "Utfører en etterinstallasjon"
+
+#, python-format
+#~ msgid "Installing %(package_names)s: %(status)s"
+#~ msgstr "Installere %(package_names)s: %(status)s"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "%(percentage)s%% fullført"
+
#~ 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."
@@ -9612,9 +9674,6 @@ msgstr "Gujarati"
#~ msgid "Service enabled: {name}"
#~ msgstr "Tjeneste aktivert: {name}"
-#~ msgid "Service disabled: {name}"
-#~ msgstr "Tjeneste deaktivert: {name}"
-
#~ msgid "PageKite Account"
#~ msgstr "PageKite-konto"
@@ -10042,9 +10101,6 @@ msgstr "Gujarati"
#~ msgid "Automatic Upgrades"
#~ msgstr "Automatiske oppgraderinger"
-#~ msgid "Upgrade Packages"
-#~ msgstr "Oppgrader pakker"
-
#~ msgid "No such device - {device_path}"
#~ msgstr "Ingen slik enhet - {device_path}"
diff --git a/plinth/locale/nl/LC_MESSAGES/django.po b/plinth/locale/nl/LC_MESSAGES/django.po
index 82fdafb1f..ca26fd5ee 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2022-08-03 22:17+0000\n"
"Last-Translator: ikmaak \n"
"Language-Team: Dutch iedere gebruiker"
"a> op {box_name} die lid is van de systeembeheerdergroep (admin)."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Cockpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "Serverbeheer"
@@ -1207,18 +1193,18 @@ msgstr ""
"Hier kunnen een aantal algemene configuratieopties worden ingesteld, zoals "
"hostname, domeinnaam, startpagina etc."
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "Algemene Instellingen"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "Configureer"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1398,11 +1384,11 @@ msgstr ""
"href=\"{ms_url}\">Matrix Synapse of ejabberd"
"a>moeten worden geconfigureerd met de hier verstrekte details."
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "Coturn"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr "VoIP helper"
@@ -1426,11 +1412,11 @@ msgstr ""
"Netwerk Tijd Server is een programma dat de systeemtijd synchroniseert met "
"servers op internet."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "Datum en Tijd"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "Tijd gesynchroniseerd met NTP-server"
@@ -1471,17 +1457,17 @@ msgstr ""
"Het standaardwachtwoord is 'deluge', maar dit moet zo snel mogelijk na "
"activering gewijzigd worden."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "Download bestanden met BitTorrent toepassingen"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "Deluge"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "BitTorrent-webclient"
@@ -1501,50 +1487,50 @@ msgstr ""
"De systeemdiagnose zal een aantal tests op dit systeem uitvoeren om te "
"bevestigen dat de toepassingen en diensten zoals verwacht functioneren."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "Diagnose"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr "geslaagd"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr "mislukt"
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr "fout"
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr "waarschuwing"
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr "MiB"
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr "GiB"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
"Door toepassingen uit te schakelen kan het geheugengebruik worden verminderd."
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr "Extra toepassingen installeren wordt afgeraden."
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
@@ -1553,7 +1539,7 @@ msgstr ""
"Systeem heeft weinig geheugen beschikbaar: {percent_used}% gebruikt, "
"{memory_available} {memory_available_unit} vrij. {advice_message}"
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr "Geheugengebrek"
@@ -1650,11 +1636,11 @@ msgstr ""
"diensten van freedns.afraid.org."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "Dynamic DNS Cliënt"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr "Dynamische domeinnaam"
@@ -1781,9 +1767,11 @@ msgid "This field is required."
msgstr "Dit veld is vereist."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1869,12 +1857,12 @@ msgstr ""
"Installeer de Coturn toepassing of configureer "
"een externe server."
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "ejabberd"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "Chatserver"
@@ -1986,7 +1974,7 @@ msgstr "Dino"
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2050,19 +2038,19 @@ msgstr ""
"Tijdens de installatie worden alle andere e-mailservers in het systeem "
"verwijderd."
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr "Postfix/Dovecot"
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr "E-mailserver"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr "Mijn e-mail aliassen"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr "Aliassen voor postvak beheren"
@@ -2098,7 +2086,7 @@ msgstr "Kan geen getal zijn"
msgid "Aliases"
msgstr "Aliassen"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr "Roundcube"
@@ -2184,7 +2172,7 @@ msgstr ""
"datastromen van {box_name} stuurt. Een geactiveerde en goed ingestelde "
"firewall vermindert het risico op beveiligingsrisico's vanuit internet."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "Firewall"
@@ -2345,15 +2333,15 @@ msgstr ""
"Bezoek Git tutorial "
"voor meer informatie over het gebruik van Git."
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr "Lees- en schrijftoegang tot Git-repositories"
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr "Gitweb"
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr "Eenvoudige Git Hosting"
@@ -2453,54 +2441,54 @@ msgstr "Verwijder Git Repository %(name)s"
msgid "Delete this repository permanently?"
msgstr "Deze repository permanent verwijderen?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr "Repository aangemaakt."
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr "Er is een fout opgetreden bij het aanmaken van de repository."
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr "Repository gewijzigd."
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr "Wijzig repository"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "Documentatie"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr "Handleiding"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr "Help"
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr "Feedback indienen"
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "Bijdragen"
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Over ons"
@@ -2861,19 +2849,19 @@ msgstr ""
"Bij het eerste bezoek aan de meegeleverde webinterface wordt het "
"configuratieproces gestart."
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr "I2P-toepassing beheren"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr "I2P"
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr "Anonimiteitsnetwerk"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr "I2P proxy"
@@ -2943,15 +2931,15 @@ msgstr ""
"Configuratie kan je deze instellingen wijzigen en nieuwe gebruikers "
"registreren."
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr "ikiwiki"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr "Wiki en Blog"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr "Bekijken en bewerken van wiki toepassingen"
@@ -3007,32 +2995,32 @@ msgstr ""
"Deze actie zal alle bijdragen, pagina's, en commentaar inclusief revisie-"
"historie. Deze wiki of blog permanent verwijderen?"
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "Wiki {name} gemaakt."
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "Kan wiki niet aanmaken: {error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "Blog {name} gemaakt."
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "Kan blog niet aanmaken: {error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr "{title} verwijderd."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr "Verwijderen van {title} mislukt: {error}"
@@ -3054,11 +3042,11 @@ msgstr ""
"a> desktop-client en installeer deze. Start Gobby en selecteer vervolgens "
"\"Verbinden met Server\" en voer de {box_name} domeinnaam in."
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr "infinoted"
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr "Gobby Server"
@@ -3092,11 +3080,11 @@ msgstr "Er is ook een eenvoudige videoconferentieruimte."
msgid "Coturn is required to use Janus."
msgstr "Om Janus te gebruiken is Coturn nodig."
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr "Janus"
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr "Video Ruimte"
@@ -3118,11 +3106,11 @@ msgstr ""
"JSXC is een webclient voor XMPP. Het wordt meestal gebruikt met een XMPP-"
"server die lokaal wordt uitgevoerd."
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr "JSXC"
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr "Chat Cliënt"
@@ -3155,15 +3143,15 @@ msgstr ""
"\"https://letsencrypt.org/repository/\">Let's Encrypt Subscriber Agreement"
"a> vóór het gebruik van deze dienst."
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr "Let's Encrypt"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "Certificaten"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr "Kan niet testen: Er zijn geen domeinen ingesteld."
@@ -3228,7 +3216,7 @@ msgstr ""
"Er zijn geen geconfigureerde domeinen. Stel "
"domeinen in om certificaten ervoor te kunnen uitgeven."
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
@@ -3237,29 +3225,29 @@ msgstr ""
"Certificaat met succes ingetrokken voor domein {domain}. Het kan enige tijd "
"duren voordat het effect heeft."
-#: plinth/modules/letsencrypt/views.py:47
+#: plinth/modules/letsencrypt/views.py:49
#, python-brace-format
msgid "Failed to revoke certificate for domain {domain}: {error}"
msgstr "Intrekken certificaat voor domein {domain} mislukt: {error}"
-#: plinth/modules/letsencrypt/views.py:60
-#: plinth/modules/letsencrypt/views.py:77
+#: plinth/modules/letsencrypt/views.py:62
+#: plinth/modules/letsencrypt/views.py:79
#, python-brace-format
msgid "Certificate successfully obtained for domain {domain}"
msgstr "Certificaat voor domein {domain} met succes verkregen"
-#: plinth/modules/letsencrypt/views.py:65
-#: plinth/modules/letsencrypt/views.py:82
+#: plinth/modules/letsencrypt/views.py:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr "Verkrijgen van certificaat voor domein {domain} is mislukt: {error}"
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr "Certificaat met succes verwijderd voor domein {domain}"
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr "Verwijderen certificaat voor domein {domain} mislukt: {error}"
@@ -3291,7 +3279,7 @@ msgstr ""
"videogesprekken. Installeer de Coturn "
"toepassing of configureer een externe server."
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr "Matrix Synapse"
@@ -3434,12 +3422,12 @@ msgstr ""
"Iedereen met een link naar deze wiki kan hem lezen. Alleen ingelogde "
"gebruikers kunnen wijzigingen aanbrengen in de inhoud."
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr "MediaWiki"
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr "Wiki"
@@ -3513,39 +3501,39 @@ msgstr ""
"Kies een standaard uiterlijk voor de MediaWiki-installatie. Gebruikers "
"hebben de mogelijkheid om hun favoriete uiterlijk te kiezen."
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "Wachtwoord bijgewerkt"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr "Wachtwoordupdate mislukt. Kies een sterker wachtwoord"
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr "Openbare registraties ingeschakeld"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr "Openbare registraties uitgeschakeld"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr "Privé-modus ingeschakeld"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr "Privé-modus uitgeschakeld"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr "Standaard uiterlijk veranderd"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr "Domeinnaam bijgewerkt"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
msgid "Site name updated"
msgstr "Sitenaam bijgewerkt"
@@ -3562,11 +3550,11 @@ msgstr ""
"standaardpoort (30000). Voor de verbinding met de server is een Minetest client nodig."
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr "Minetest"
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr "Block Sandbox"
@@ -3618,7 +3606,7 @@ msgstr "Indien uitgeschakeld, kunnen spelers niet sterven of schade oplopen."
msgid "Address"
msgstr "Adres"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3636,15 +3624,15 @@ msgstr ""
"mediaspelers, smartphones, televisies en spelsystemen (zoals PS3 en Xbox "
"360) of programma's zoals totem en Kodi."
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr "Mediastreaming server"
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr "MiniDLNA"
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr "Simple Media Server"
@@ -3708,11 +3696,11 @@ msgstr ""
"programma's waarmee de Mumble dienst gebruikt kan worden. Er zijn "
"programma's voor zowel desktop en mobiele apparaten."
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr "Mumble"
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr "Voice Chat"
@@ -3760,15 +3748,15 @@ msgstr "Mumblefly"
msgid "Mumla"
msgstr "Mumla"
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr "Wachtwoord van de SuperGebruiker succesvol gewijzigd."
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr "Deelnamewachtwoord gewijzigd"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr "De naam van het hoofdkanaal is gewijzigd."
@@ -3786,7 +3774,7 @@ msgstr ""
"services zijn ingeschakeld of uitgeschakeld voor binnenkomende verbindingen "
"via de opgegeven naam."
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "Domeinnamen"
@@ -3806,7 +3794,7 @@ msgstr "Secure Shell"
msgid "Services"
msgstr "Diensten"
-#: plinth/modules/networks/__init__.py:36
+#: 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."
@@ -3814,7 +3802,7 @@ msgstr ""
"Stel netwerkapparaten in. Maak verbinding met internet via Ethernet, Wi-Fi "
"of PPPoE. Deel die verbinding met andere apparaten op het netwerk."
-#: plinth/modules/networks/__init__.py:38
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
@@ -3822,15 +3810,10 @@ msgstr ""
"Apparaten die via andere methoden worden beheerd, zijn hier mogelijk niet "
"beschikbaar voor configuratie."
-#: plinth/modules/networks/__init__.py:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "Netwerken"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "Gebruikt DNSSEC op IPv{kind}"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "Verbindingssoort"
@@ -4398,7 +4381,7 @@ msgid "This connection is not active."
msgstr "Deze verbinding is niet actief."
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "Security"
@@ -4450,7 +4433,7 @@ msgid "Create Connection"
msgstr "Maak Verbinding"
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "Verwijder verbinding"
@@ -4470,13 +4453,13 @@ msgstr "Verbinding"
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "Ethernet"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "Wi-Fi"
@@ -4497,7 +4480,7 @@ msgid "Computer"
msgstr "Computer"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "Wijzig verbinding"
@@ -4507,13 +4490,13 @@ msgstr "Verbindingen"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "Wi-Fi Netwerken dichtbij"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "Verbinding toevoegen"
@@ -4737,245 +4720,245 @@ msgstr ""
"handleiding van de router. Daarin wordt de juiste methode van instellen "
"beschreven."
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr "uitgeschakeld"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr "automatisch"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr "handleiding"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr "gedeeld"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr "link-local"
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr "onbekend"
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr "niet ingesteld"
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr "niet beschikbaar"
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr "ontkoppeld"
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr "voorbereiden"
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr "verbinden"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr "heeft verificatie nodig"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr "adres wordt aangevraagd"
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr "controleren"
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr "wachten op secundaire"
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr "geactiveerd"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr "deactiveren"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr "Geen reden"
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr "Onbekende fout"
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr "Het apparaat wordt nu beheerd"
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr "Het apparaat wordt niet meer beheerd"
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr "configuratie mislukt"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr "geheim vereist"
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr "DHCP-client kan niet worden gestart"
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr "DHCP-clientfout"
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr "DHCP client mislukt"
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr "gedeelde verbindingsservice kan niet worden gestart"
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr "gedeelde verbindings-service mislukt"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr "Het apparaat werd verwijderd"
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr "apparaat verwijderd door gebruiker"
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr "een afhankelijkheid van de verbinding is mislukt"
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr "Wifi netwerk niet gevonden"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr "een secundaire verbinding is mislukt"
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr "het activeren van de nieuwe verbindings is in de wachtrij gezet"
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr "er is een dubbel IP-adres ontdekt"
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr "de geselecteerde IP-methode wordt niet ondersteund"
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr "generiek"
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr "TUN of TAP interface"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr "WireGuard"
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr "ad hoc"
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr "infrastructuur"
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr "Access Point"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr "mesh punt"
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "Netwerkverbindingen"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr "Kan verbinding niet weergeven: Verbinding niet gevonden."
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr "Verbindingsgegevens"
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "Kan verbinding niet wijzigen: Verbinding niet gevonden."
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr "Deze verbindingsmethode is (nog) niet bekend."
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr "Geactiveerde verbinding {name}."
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr "Kan verbinding niet inschakelen: Verbinding niet gevonden."
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, 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/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "Verbinding {name} uitgeschakeld."
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr "Kan verbinding niet uitschakelen: Verbinding niet gevonden."
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr "Toevoegen nieuwe Verbinding"
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "Toevoegen nieuwe Ethernetverbinding"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "Toevoegen nieuwe PPPoE verbinding"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "Toevoegen nieuwe W-Fi verbinding"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "Verbinding {name} verwijderd."
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr "Kan verbinding niet verwijderen: Verbinding niet gevonden."
@@ -4997,20 +4980,20 @@ msgstr ""
"mogelijk om de rest van het internetgebruik via {box_name} te leiden, voor "
"meer veiligheid en anonimiteit."
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr "Verbinding maken met VPN-dienst"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr "OpenVPN"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr "Virtual Private Network"
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -5150,15 +5133,15 @@ 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:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr "PageKite"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr "Openbare zichtbaarheid"
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr "PageKite domein"
@@ -5272,31 +5255,31 @@ msgstr ""
"bijvoorbeeld bekend dat HTTPS servers die niet op poort 443 worden ingesteld "
"problemen opleveren."
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr "Webserver (HTTP)"
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
"De website zal beschikbaar zijn op http://{0}"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr "Webserver (HTTPS)"
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
"De website zal beschikbaar zijn op https://{0}"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr "Secure Shell (SSH)"
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
@@ -5305,7 +5288,7 @@ msgstr ""
"SshOverPageKite/\">instructies (Engelstalig)"
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr "Prestaties"
@@ -5328,7 +5311,7 @@ msgstr ""
"Prestatiestatistieken worden verzameld door Performance Co-Pilot en kunnen "
"worden bekeken via de Cockpit-app."
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr "Systeembewaking"
@@ -5336,7 +5319,7 @@ msgstr "Systeembewaking"
msgid "Restart or shut down the system."
msgstr "Herstarten of uitschakelen van het systeem."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "Power"
@@ -5426,15 +5409,15 @@ msgstr ""
"href=\"http://config.privoxy.org\">http://config.privoxy.org/ of http://p.p."
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr "Privoxy"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr "Web Proxy"
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr "Gebruik {url} via proxy {proxy} op tcp{kind}"
@@ -5469,11 +5452,11 @@ msgstr ""
"\"http://quassel-irc.org/downloads\">desktop en mobiele apparaten."
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr "IRC Cliënt"
@@ -5507,12 +5490,12 @@ msgstr ""
"gebeurtenissen of contactpersonen, die moeten worden gedaan met behulp van "
"een aparte client."
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr "Radicale"
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr "Agenda en Adresboek"
@@ -5631,7 +5614,7 @@ msgstr ""
"(https://"
"www.google.com/settings/security/lesssecureapps)."
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr "Email Cliënt"
@@ -5677,16 +5660,16 @@ msgstr ""
"verschillende websites te volgen. Schakel bij het toevoegen van een feed "
"authenticatie in en gebruik de {box_name}-inloggegevens."
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr "Lezen en abonneren op nieuwsfeeds"
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr "RSS-Bridge"
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr "RSS Feed Generator"
@@ -5732,15 +5715,15 @@ msgstr ""
"Prive-deelmap - - iedere gebruiker in de freedombox-share-groep kan zijn "
"eigen privéruimte hebben."
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr "Toegang tot de privéshares"
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr "Samba"
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr "Netwerk bestandenopslag"
@@ -5875,15 +5858,15 @@ msgstr ""
"Searx kan worden gebruikt om tracking en profilering door zoekmachines te "
"voorkomen. Het slaat standaard geen cookies op."
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr "Zoeken op internet"
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr "Searx"
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr "Zoeken op het Internet"
@@ -5978,7 +5961,7 @@ msgstr ""
"door medewerkers van Debian en de %(box_name)s -community."
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr "Beveiligingsrapport"
@@ -6055,12 +6038,12 @@ msgstr "Nee"
msgid "Not running"
msgstr "Inaktief"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Fout bij beperkte toegang instellen: {exception}"
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr "Bijgewerkte Beveiligingsconfiguratie"
@@ -6076,11 +6059,11 @@ msgstr ""
"Houd er rekening mee dat Shaarli maar een gebruiker ondersteunt, die moet "
"worden ingesteld bij het eerste gebruik."
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "Shaarli"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr "Bladwijzers"
@@ -6120,11 +6103,11 @@ msgstr ""
"proxy in op het apparaat, webbrowser of toepassing naar http://"
"adres_van_de_freedombox:1080/"
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr "Shadowsocks"
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr "Socks5 Proxy"
@@ -6155,7 +6138,7 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr "Encryptie methode. Moet overeenkomen met de instelling van de server."
-#: plinth/modules/sharing/__init__.py:20
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -6164,7 +6147,7 @@ msgstr ""
"Delen maakt het mogelijk om bestanden en mappen op {box_name} te delen via "
"het Internet met door jou bepaalde gebruikers."
-#: plinth/modules/sharing/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr "Delen"
@@ -6216,28 +6199,28 @@ msgstr "Er bestaat reeds een gedeelde map met deze naam."
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:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr "Gedeelde map toevoegen"
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr "Er zijn momenteel geen bestandsdelingen geconfigureerd."
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr "Schijf pad"
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr "Gedeeld Via"
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr "Met Groepen"
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr "openbare toegang"
@@ -6293,7 +6276,7 @@ msgstr ""
"backups\">backups aangezien ze op dezelfde partitie als hun bron worden "
"bewaard. "
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr "Opslag Snapshots"
@@ -6396,7 +6379,7 @@ msgstr "Datum"
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr "Snapshots verwijderen"
@@ -6450,54 +6433,54 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr "Terugdraaien tot Snapshot #%(number)s"
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr "handmatig gemaakt"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr "tijdlijn"
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr "apt"
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr "Beheren van Snapshots"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr "Gemaakte snapshot."
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr "Opslag van Snapshots configuratie is bijgewerkt"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Actiefout: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr "Verwijderde geselecteerde snapshots"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr "Snapshot is momenteel in gebruik. Probeer het later nog eens."
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, 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:214
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:226
msgid "Rollback to Snapshot"
msgstr "Terugdraaien naar Snapshot"
@@ -6513,7 +6496,7 @@ msgstr ""
"andere locatie die daarvoor geautoriseerd is, kan beheerdertaken uitvoeren, "
"bestanden kopiëren en andere taken verrichten door zulk een verbinding."
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr "Secure Shell (SSH) Server"
@@ -6559,7 +6542,7 @@ msgstr "SSH-authenticatie met wachtwoord uitgeschakeld."
msgid "SSH authentication with password enabled."
msgstr "SSH-authenticatie met wachtwoord ingeschakeld."
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr "Eenmalige aanmelding"
@@ -6583,109 +6566,109 @@ msgstr ""
"bekijken, verwijderbare media koppelen en ontkoppelen, de rootpartitie "
"uitbreiden enz."
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr "Storage"
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} bytes"
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr "De bewerking is mislukt."
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr "De bewerking is afgebroken."
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr "Het apparaat is al aan het ontkoppelen."
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
"De bewerking wordt niet ondersteund vanwege ontbrekende driver / programma-"
"ondersteuning."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr "Er is een time-out opgetreden voor deze bewerking."
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
"De operatie zou een schijf wakker maken die in \"diepe slaap\" stand is."
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
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:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr "De bewerking is al geannuleerd."
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr "Niet gemachtigd om deze handeling uit te voeren."
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr "Het apparaat is al gekoppeld."
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr "Het apparaat is niet ge-mount."
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr "Het is niet toegestaan de gevraagde optie te gebruiken."
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr "Het apparaat is door een andere gebruiker aangekoppeld."
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
"Weinig ruimte op de systeempartitie: {percent_used} % gebruikt, {free_space} "
"vrij."
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr "Weinig schijfruimte"
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr "Schijffout dreigt"
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6840,16 +6823,16 @@ msgstr ""
"{box_name} is alleen beschikbaar voor gebruikers die tot de \"admin\"- of de "
"\"syncthing-access\"-groep behoren."
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr "Beheer Syncthing toepassing"
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr "Syncthing"
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr "Bestandssynchronisatie"
@@ -6876,40 +6859,40 @@ msgstr ""
"Een Tor SOCKS poort is beschikbaar op {box_name} voor interne netwerken op "
"TCP poort 9050."
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr "Tor"
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr "Tor-Onion Dienst"
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr "Tor Socks Proxy"
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr "Tor Bridge Relay"
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr "Tor relay poort beschikbaar"
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr "Obfs3 transport geregistreerd"
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr "Obfs4 transport geregistreerd"
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, 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:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Bevestig Tor gebruik met {url} via tcp{kind}"
@@ -7040,7 +7023,7 @@ msgstr "Onion Service"
msgid "Ports"
msgstr "Poorten"
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "Instelling onveranderd"
@@ -7096,7 +7079,7 @@ msgstr ""
"Nadat een download is voltooid, is toegang tot de bestanden ook mogelijk met "
"behulp van de app Sharing."
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr "Transmission"
@@ -7128,11 +7111,11 @@ msgstr ""
"Gebruik de URL /tt-rss-app in om te verbinden "
"met een mobiele- of desktoptoepassing voor Tiny Tiny RSS."
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr "Tiny Tiny RSS"
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr "News Feed Reader"
@@ -7159,22 +7142,22 @@ msgstr ""
"het systeem opnieuw moet worden opgestart, gebeurt dit automatisch om 02:00 "
"uur, waardoor alle toepassingen even niet beschikbaar zijn."
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr "Software bijwerken"
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr "FreedomBox geaktualiseerd"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr "Kan distributie-update niet starten"
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
@@ -7184,11 +7167,11 @@ msgstr ""
"te starten. Zorg ervoor dat ten minste 5 GB ruimte vrij is. Als "
"ingeschakeld, wordt de distributie-update na 24 uur opnieuw geprobeerd."
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr "Distributie-update gestart"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr "Update naar volgende stabiele release gestart. Dit kan lang duren."
@@ -7283,6 +7266,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr "Negeren"
@@ -7405,15 +7389,15 @@ msgstr ""
"die lid zijn van de admin -groep mogen toepassings- of "
"systeeminstellingen wijzigen."
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr "Gebruikers en Groepen"
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr "Toegang tot alle diensten en systeeminstellingen"
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Zoek LDAP item \"{search_item}\""
@@ -8048,12 +8032,12 @@ msgstr ""
"vanuit de beheerdersinterface. Extra plug-ins of thema's kunnen op eigen "
"risico worden geïnstalleerd en geüpgraded."
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr "WordPress"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr "Website en Blog"
@@ -8103,11 +8087,11 @@ msgstr ""
"Zoph. Voor extra gebruikers moeten zowel in {box_name} als in Zoph accounts "
"worden aangemaakt met dezelfde gebruikersnaam."
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr "Zoph"
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr "Foto Organisator"
@@ -8146,37 +8130,112 @@ msgstr "PPPoE"
msgid "Generic"
msgstr "Generiek"
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Hostnaam instellen mislukt: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, fuzzy, python-brace-format
+#| msgid "Service disabled: {name}"
+msgid "Finished: {name}"
+msgstr "Dienst uitgeschakeld: {name}"
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr "Pakket {expression} is niet beschikbaar voor installatie"
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr "Pakket {package_name} is de nieuwste versie ({latest_version})"
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr "Fout tijdens installatie"
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr "installeren"
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr "downloaden"
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr "media wijzigen"
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr "configuratiebestand: {file}"
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "Installeer Toepassingen"
+
+#: plinth/setup.py:46
+#, fuzzy
+#| msgid "Updating..."
+msgid "Updating app"
+msgstr "Bezig met bijwerken…"
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Fout bij het installeren van de toepassing: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Fout bij het installeren van de toepassing: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Fout bij het installeren van de toepassing: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Fout bij het installeren van de toepassing: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "De toepassing is geïnstalleerd."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "Laatste bijwerking"
+
+#: plinth/setup.py:411
+#, fuzzy
+#| msgid "Upgrade Packages"
+msgid "Updating app packages"
+msgstr "Pakketten Bijwerken"
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Verboden"
@@ -8495,6 +8554,10 @@ msgstr "Van router/WAN-poorten"
msgid "To %(box_name)s Ports"
msgstr "Naar %(box_name)s poorten"
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "De toepassing is geïnstalleerd."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr "Deze toepassing installeren?"
@@ -8504,22 +8567,14 @@ msgid "This application needs an update. Update now?"
msgstr "Deze toepassing heeft een update nodig. Nu bijwerken?"
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-"Er wordt al een andere installatie of upgrade uitgevoerd. Wacht even voor je "
-"het opnieuw probeert."
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr "Deze toepassing is momenteel niet beschikbaar in jouw distributie."
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr "Controleer opnieuw"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
@@ -8529,36 +8584,43 @@ msgstr ""
"systeem geïnstalleerd zijn conflicteren met de installatie van deze app. De "
"volgende pakketten zullen worden verwijderd als deze app wordt geïnstalleerd:"
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr "Installeer"
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr "Update"
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr "Pre-Install bewerkingen worden uitvoerd"
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr "Post-install bewerkingen worden uitgevoerd"
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr "Installeren van %(package_names)s: %(status)s"
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "%(percentage)s%% voltooid"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr "Gujarati"
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "Gebruikt DNSSEC op IPv{kind}"
+
+#~ msgid ""
+#~ "Another installation or upgrade is already running. Please wait for a few "
+#~ "moments before trying again."
+#~ msgstr ""
+#~ "Er wordt al een andere installatie of upgrade uitgevoerd. Wacht even voor "
+#~ "je het opnieuw probeert."
+
+#~ msgid "Performing pre-install operation"
+#~ msgstr "Pre-Install bewerkingen worden uitvoerd"
+
+#~ msgid "Performing post-install operation"
+#~ msgstr "Post-install bewerkingen worden uitgevoerd"
+
+#, python-format
+#~ msgid "Installing %(package_names)s: %(status)s"
+#~ msgstr "Installeren van %(package_names)s: %(status)s"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "%(percentage)s%% voltooid"
+
#~ 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."
@@ -9553,9 +9615,6 @@ msgstr "Gujarati"
#~ msgid "Service enabled: {name}"
#~ msgstr "Dienst ingeschakeld: {name}"
-#~ msgid "Service disabled: {name}"
-#~ msgstr "Dienst uitgeschakeld: {name}"
-
#~ msgid "PageKite Account"
#~ msgstr "PageKite Account"
@@ -10040,9 +10099,6 @@ msgstr "Gujarati"
#~ msgid "Automatic Upgrades"
#~ msgstr "Automatisch bijwerken"
-#~ msgid "Upgrade Packages"
-#~ msgstr "Pakketten Bijwerken"
-
#~ msgid "Path"
#~ msgstr "Pad"
diff --git a/plinth/locale/pl/LC_MESSAGES/django.po b/plinth/locale/pl/LC_MESSAGES/django.po
index e9df56d68..be3995d67 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2022-05-10 02:10+0000\n"
"Last-Translator: ikmaak \n"
"Language-Team: Polish użytkownicy {box_name} z do "
"grupy administratorów."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Cockpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "Administracja serwera"
@@ -1199,18 +1185,18 @@ msgstr ""
"Tutaj możesz ustawić kilka ogólnych opcji konfiguracji, takich jak nazwa "
"hosta, nazwa domeny, strona główna serwera www itp."
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "Ustawienia główne"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "Konfiguruj"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1376,11 +1362,11 @@ msgid ""
"be configured with the details provided here."
msgstr ""
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "Coturn"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr "Asystent VoIP"
@@ -1407,11 +1393,11 @@ msgstr ""
"Serwer czasu jest programem, który utrzymuje czas systemowy w synchronizacji "
"z serwerami w Internecie."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "Czas i data"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "Zsynchronizowano czas z serwerem NTP"
@@ -1452,17 +1438,17 @@ msgstr ""
"Domyślne hasło to „deluge”, ale należy się zalogować i zmienić je "
"natychmiast po włączeniu tej usługi."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "Ściągnij pliki korzystając z aplikacji BitTorrent"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "Deluge"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "Klient BitTorrent"
@@ -1482,56 +1468,56 @@ msgstr ""
"Diagnostyka systemu testuje czy aplikacje i usługi na twiom systemie "
"dzialają jak należy."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "Diagnostyka"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr "udało się"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr "nie udało się"
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr "błąd"
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr ""
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr "MiB"
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr "GiB"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
"{memory_available_unit} free. {advice_message}"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr ""
@@ -1636,11 +1622,11 @@ msgstr ""
"pod adresem freedns."
"afraid.org."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "Klient Dynamic DNS"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr "Dynamiczna nazwa domeny"
@@ -1772,9 +1758,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1866,12 +1854,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "ejabberd"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "Serwer czatu"
@@ -1974,7 +1962,7 @@ msgstr "Dino"
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2023,23 +2011,23 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
#, fuzzy
#| msgid "Chat Server"
msgid "Email Server"
msgstr "Serwer czatu"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
#, fuzzy
#| msgid "Create Repository"
msgid "My Email Aliases"
msgstr "Utwórz repozytorium"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
#, fuzzy
#| msgid "Create Repository"
msgid "Manage Aliases for Mailbox"
@@ -2079,7 +2067,7 @@ msgstr ""
msgid "Aliases"
msgstr "Utwórz repozytorium"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr "Roundcube"
@@ -2169,7 +2157,7 @@ msgstr ""
"ruch sieciowy na twoim {box_name}. Włączony i poprawnie skonfigurowany "
"firewall redukuje ryzyko zagrożeń z Internetu."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "Firewall"
@@ -2315,15 +2303,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr "Gitweb"
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2446,33 +2434,33 @@ msgstr "Usuń wiki lub blog %(name)s"
msgid "Delete this repository permanently?"
msgstr "Usunąć trwale to archiwum?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
#, fuzzy
#| msgid "Repository removed."
msgid "Repository created."
msgstr "Usunięto repozytorium."
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
#, fuzzy
#| msgid "Repository removed."
msgid "Repository edited."
msgstr "Usunięto repozytorium."
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
#, fuzzy
#| msgid "Create Repository"
msgid "Edit repository"
msgstr "Utwórz repozytorium"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "Dokumentacja"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
#, fuzzy
#| msgid "Manual"
@@ -2480,28 +2468,28 @@ msgctxt "User guide"
msgid "Manual"
msgstr "Instrukcja"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "O FreedomBox"
@@ -2800,23 +2788,23 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
#, fuzzy
#| msgid "Enable application"
msgid "Manage I2P application"
msgstr "Aktywuj aplikację"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr "I2P"
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
#, fuzzy
#| msgid "Go to Networks"
msgid "Anonymity Network"
msgstr "Przejdź do sieci"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr ""
@@ -2869,15 +2857,15 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr "ikiwiki"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr "Wiki i blog"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
#, fuzzy
#| msgid "Services and Applications"
msgid "View and edit wiki applications"
@@ -2935,32 +2923,32 @@ msgstr ""
"Ta akcja spowoduje usunięcie wszystkich postów, stron oraz komentarzy - w "
"tym historii zmian. Trwale usunąć wiki lub blog?"
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr "{title} zostało usunięte."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
@@ -2977,11 +2965,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr "infinoted"
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr ""
@@ -3013,11 +3001,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -3039,11 +3027,11 @@ msgstr ""
"JSXC jest klientem przeglądarkowym XMPP. Zazwyczaj używany jest z serwerem "
"XMPP uruchomionym lokalnie."
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr "JSXC"
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr "Klient czatu"
@@ -3065,15 +3053,15 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr "Let's Encrypt"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "Certyfikaty"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -3138,36 +3126,36 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, 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:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
@@ -3189,7 +3177,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr ""
@@ -3295,12 +3283,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr "MediaWiki"
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3369,53 +3357,53 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
#, fuzzy
#| msgid "Password"
msgid "Password updated"
msgstr "Hasło"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
#, fuzzy
#| msgid "Application installed."
msgid "Public registrations enabled"
msgstr "Aplikacja zainstalowania."
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
#, fuzzy
#| msgid "Application installed."
msgid "Public registrations disabled"
msgstr "Aplikacja zainstalowania."
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
#, fuzzy
#| msgid "Application enabled"
msgid "Private mode enabled"
msgstr "Aplikacja włączona"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
#, fuzzy
#| msgid "Application disabled"
msgid "Private mode disabled"
msgstr "Aplikacja wyłączona"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
#, fuzzy
#| msgid "Setting unchanged"
msgid "Default skin changed"
msgstr "Ustawienie bez zmian"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Domain name set"
msgid "Domain name updated"
msgstr "Nazwa domeny ustawiona"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
#, fuzzy
#| msgid "Domain name set"
msgid "Site name updated"
@@ -3430,11 +3418,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr "Minetest"
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
#, fuzzy
#| msgid "Blocked"
msgid "Block Sandbox"
@@ -3481,7 +3469,7 @@ msgstr ""
msgid "Address"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3492,15 +3480,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr "MiniDLNA"
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3553,11 +3541,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr "Mumble"
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr ""
@@ -3607,17 +3595,17 @@ msgstr "Mumblefly"
msgid "Mumla"
msgstr "Mumla"
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
#, fuzzy
#| msgid "Upload password updated"
msgid "Join password changed"
msgstr "Zmieniono hasło do przesyłania"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3630,7 +3618,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr ""
@@ -3652,27 +3640,22 @@ msgstr ""
msgid "Services"
msgstr "Urządzenie"
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr ""
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr ""
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
@@ -4151,7 +4134,7 @@ msgid "This connection is not active."
msgstr ""
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr ""
@@ -4194,7 +4177,7 @@ msgid "Create Connection"
msgstr ""
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr ""
@@ -4214,13 +4197,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr ""
@@ -4241,7 +4224,7 @@ msgid "Computer"
msgstr ""
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr ""
@@ -4253,13 +4236,13 @@ msgstr "Odmowa dostępu"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr ""
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
@@ -4442,265 +4425,265 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
#, fuzzy
#| msgid "Disabled"
msgid "disabled"
msgstr "Wyłączony"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr ""
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
#, fuzzy
#| msgid "Manual"
msgid "manual"
msgstr "Instrukcja"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr ""
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr ""
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr ""
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
#, fuzzy
#| msgid "Connection refused"
msgid "connecting"
msgstr "Odmowa dostępu"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
#, fuzzy
#| msgid "Use HTTP basic authentication"
msgid "needs authentication"
msgstr "Użyj podstawowej autentyfikacji HTTP"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr ""
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr ""
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
#, fuzzy
#| msgid "configuration file: {file}"
msgid "configuration failed"
msgstr "plik konfiguracyjny: {file}"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
#, fuzzy
#| msgid "Archive deleted."
msgid "DHCP client failed"
msgstr "Archiwum zostało usunięte."
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
#, fuzzy
#| msgid "PVP configuration updated"
msgid "shared connection service failed"
msgstr "Zaktualizowano ustawienia PVP"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
#, fuzzy
#| msgid "The requested domain is already registered."
msgid "device was removed"
msgstr "Wnioskowana domena jest już zarejstrowana."
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
#, fuzzy
#| msgid "Repository not found"
msgid "Wi-Fi network not found"
msgstr "Nie odnaleziono repozytorium"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr ""
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr "WireGuard"
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
#, fuzzy
#| msgid "Access"
msgid "access point"
msgstr "Dostęp"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr ""
@@ -4715,22 +4698,22 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
#, fuzzy
#| msgid "Connection refused"
msgid "Connect to VPN services"
msgstr "Odmowa dostępu"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr "OpenVPN"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4838,15 +4821,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr "PageKite"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr ""
@@ -4952,36 +4935,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -4998,7 +4981,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr ""
@@ -5006,7 +4989,7 @@ msgstr ""
msgid "Restart or shut down the system."
msgstr "Uruchom ponownie lub wyłącz system."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "Zasilanie"
@@ -5084,15 +5067,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr "Privoxy"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -5116,11 +5099,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr ""
@@ -5145,12 +5128,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr "Radicale"
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -5242,7 +5225,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
#, fuzzy
#| msgid "Dynamic DNS Client"
msgid "Email Client"
@@ -5285,16 +5268,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5329,15 +5312,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr "Samba"
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr ""
@@ -5467,15 +5450,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr "Searx"
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr ""
@@ -5556,7 +5539,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr ""
@@ -5629,12 +5612,12 @@ msgstr "Nie"
msgid "Not running"
msgstr "Interfejs deluge nie jest uruchomiony"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Błąd ustawienia ograniczonego dostępu: {exception}"
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr "Zaktualizowano ustawienia bezpieczeństwa"
@@ -5648,11 +5631,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "Shaarli"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5684,11 +5667,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr "Shadowsocks"
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5719,14 +5702,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr ""
@@ -5774,28 +5757,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -5841,7 +5824,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr ""
@@ -5943,7 +5926,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Delete Snapshots"
@@ -5993,61 +5976,61 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
#, fuzzy
#| msgid "Repository removed."
msgid "manually created"
msgstr "Usunięto repozytorium."
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr "apt"
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Manage Snapshots"
msgstr "Usuń %(name)s"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
#, fuzzy
#| msgid "Access rights configuration updated"
msgid "Storage snapshots configuration updated"
msgstr "Zaktualizowano ustawienia praw dostępu"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
#, fuzzy
#| msgid "Delete %(name)s"
msgid "Deleted selected snapshots"
msgstr "Usuń %(name)s"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -6059,7 +6042,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -6106,7 +6089,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr "Nie powiodła się autoryzacja na zdalnym serwerze."
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -6128,106 +6111,106 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} bajtów"
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
#, 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:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6371,16 +6354,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr "Syncthing"
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -6400,40 +6383,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6543,7 +6526,7 @@ msgstr "Usługa dynamicznego DNS"
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "Ustawienie bez zmian"
@@ -6594,7 +6577,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr "Transmission"
@@ -6624,11 +6607,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6649,8 +6632,8 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
#, fuzzy
@@ -6658,30 +6641,30 @@ msgstr ""
msgid "Software Update"
msgstr "Archiwum zostało usunięte."
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
#, fuzzy
#| msgid "FreedomBox Foundation"
msgid "FreedomBox Updated"
msgstr "Fundacja FreedomBox"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
#, fuzzy
#| msgid "User registrations disabled"
msgid "Distribution update started"
msgstr "Rejestracja użytkowników wyłączona"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6767,6 +6750,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6876,15 +6860,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -7510,12 +7494,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr ""
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
#, fuzzy
#| msgid "Wiki and Blog"
msgid "Website and Blog"
@@ -7552,11 +7536,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7592,37 +7576,107 @@ msgstr "PPPoE"
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Błąd podczas ustawiania nazwy hosta: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr "plik konfiguracyjny: {file}"
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "Instaluj aplikacje"
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Błąd podczas instalowania aplikacji: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Błąd podczas instalowania aplikacji: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Błąd podczas instalowania aplikacji: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Błąd podczas instalowania aplikacji: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Aplikacja zainstalowania."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "Ostatnie uaktualnienie"
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Dostęp zabroniony"
@@ -7959,6 +8013,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr "Konfiguracja %(box_name)s"
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Aplikacja zainstalowania."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr ""
@@ -7968,52 +8026,28 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr ""
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr ""
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr ""
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr "Gujarati"
diff --git a/plinth/locale/pt/LC_MESSAGES/django.po b/plinth/locale/pt/LC_MESSAGES/django.po
index b57af56cc..74a12de91 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2021-05-08 22:33+0000\n"
"Last-Translator: ssantos \n"
"Language-Team: Portuguese freedns.afraid.org."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
#, fuzzy
#| msgid "Domain Name"
msgid "Dynamic Domain Name"
@@ -1688,9 +1674,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1776,12 +1764,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr ""
@@ -1878,7 +1866,7 @@ msgstr ""
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1923,23 +1911,23 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
#, fuzzy
#| msgid "Web Server"
msgid "Email Server"
msgstr "Servidor Web"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
#, fuzzy
#| msgid "Create new repository"
msgid "My Email Aliases"
msgstr "Criar novo repositório"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
#, fuzzy
#| msgid "Create new repository"
msgid "Manage Aliases for Mailbox"
@@ -1979,7 +1967,7 @@ msgstr ""
msgid "Aliases"
msgstr "Criar novo repositório"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr ""
@@ -2066,7 +2054,7 @@ msgid ""
"configured reduces risk of security threat from the Internet."
msgstr ""
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr ""
@@ -2205,15 +2193,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2328,33 +2316,33 @@ msgstr ""
msgid "Delete this repository permanently?"
msgstr "Apagar este arquivo permanentemente?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
#, fuzzy
#| msgid "Repository not found"
msgid "Repository created."
msgstr "Repositório não encontrado"
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
#, fuzzy
#| msgid "Repository not found"
msgid "Repository edited."
msgstr "Repositório não encontrado"
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
#, fuzzy
#| msgid "Create new repository"
msgid "Edit repository"
msgstr "Criar novo repositório"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr ""
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
#, fuzzy
#| msgid "Manual"
@@ -2362,28 +2350,28 @@ msgctxt "User guide"
msgid "Manual"
msgstr "Manual"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
@@ -2667,21 +2655,21 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
#, fuzzy
#| msgid "Enable application"
msgid "Manage I2P application"
msgstr "Ativar aplicação"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr ""
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr ""
@@ -2742,17 +2730,17 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
#, fuzzy
#| msgid "Enable network time"
msgid "ikiwiki"
msgstr "Ativar tempo da rede"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
#, fuzzy
#| msgid "Services and Applications"
msgid "View and edit wiki applications"
@@ -2808,33 +2796,33 @@ msgid ""
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, fuzzy, python-brace-format
#| msgid "Archive deleted."
msgid "{title} deleted."
msgstr "Arquivo apagado."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
@@ -2851,11 +2839,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr ""
@@ -2887,11 +2875,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -2911,11 +2899,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr ""
@@ -2937,15 +2925,15 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -3010,36 +2998,36 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, 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:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
@@ -3061,7 +3049,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr ""
@@ -3168,12 +3156,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3240,51 +3228,51 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
#, fuzzy
#| msgid "Applications"
msgid "Public registrations enabled"
msgstr "Aplicações"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
#, fuzzy
#| msgid "Applications"
msgid "Public registrations disabled"
msgstr "Aplicações"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
#, fuzzy
#| msgid "Applications"
msgid "Private mode enabled"
msgstr "Aplicações"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
#, fuzzy
#| msgid "Applications"
msgid "Private mode disabled"
msgstr "Aplicações"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
#, fuzzy
#| msgid "Setting unchanged"
msgid "Default skin changed"
msgstr "Definição inalterada"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Domain name set"
msgid "Domain name updated"
msgstr "Nome do domínio definido"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
#, fuzzy
#| msgid "Domain name set"
msgid "Site name updated"
@@ -3299,11 +3287,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr ""
@@ -3350,7 +3338,7 @@ msgstr ""
msgid "Address"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3361,15 +3349,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3422,11 +3410,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr ""
@@ -3470,17 +3458,17 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
#, fuzzy
#| msgid "Upload password updated"
msgid "Join password changed"
msgstr "Palavra-passe de envio atualizada"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3493,7 +3481,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr ""
@@ -3515,27 +3503,22 @@ msgstr ""
msgid "Services"
msgstr "Descoberta do Serviço"
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr ""
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr ""
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
@@ -4016,7 +3999,7 @@ msgid "This connection is not active."
msgstr ""
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr ""
@@ -4059,7 +4042,7 @@ msgid "Create Connection"
msgstr ""
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr ""
@@ -4079,13 +4062,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr ""
@@ -4106,7 +4089,7 @@ msgid "Computer"
msgstr ""
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr ""
@@ -4118,13 +4101,13 @@ msgstr "Conexão recusada"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr ""
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
@@ -4309,269 +4292,269 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
#, fuzzy
#| msgid "Applications"
msgid "disabled"
msgstr "Aplicações"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr ""
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
#, fuzzy
#| msgid "Manual"
msgid "manual"
msgstr "Manual"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
#, fuzzy
#| msgid "Archive name"
msgid "shared"
msgstr "Nome do arquivo"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr ""
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr ""
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
#, fuzzy
#| msgid "Connection refused"
msgid "connecting"
msgstr "Conexão recusada"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr ""
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
#, fuzzy
#| msgid "Backup archives"
msgid "activated"
msgstr "Arquivos de backup"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr ""
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
#, fuzzy
#| msgid "Service discovery server is not running"
msgid "device is now unmanaged"
msgstr "O Servidor da descoberta do serviço não está a correr"
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
#, fuzzy
#| msgid "Configuration"
msgid "configuration failed"
msgstr "Configuração"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
#, fuzzy
#| msgid "Archive deleted."
msgid "DHCP client failed"
msgstr "Arquivo apagado."
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
#, fuzzy
#| msgid "Configuration updated"
msgid "shared connection service failed"
msgstr "Configuração atualizada"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr ""
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
#, fuzzy
#| msgid "Repository not found"
msgid "Wi-Fi network not found"
msgstr "Repositório não encontrado"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
#, fuzzy
#| msgid "Network Time Server"
msgid "TUN or TAP interface"
msgstr "Servidor do Tempo da Rede"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
#, fuzzy
#| msgid "Access"
msgid "access point"
msgstr "Aceder"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr ""
@@ -4586,22 +4569,22 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
#, fuzzy
#| msgid "Connection refused"
msgid "Connect to VPN services"
msgstr "Conexão recusada"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4709,15 +4692,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr ""
@@ -4823,36 +4806,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -4869,7 +4852,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr ""
@@ -4877,7 +4860,7 @@ msgstr ""
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr ""
@@ -4948,15 +4931,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -4980,11 +4963,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr ""
@@ -5009,12 +4992,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -5108,7 +5091,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr ""
@@ -5144,16 +5127,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5188,15 +5171,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
#, fuzzy
#| msgid "Network Time Server"
msgid "Network File Storage"
@@ -5330,15 +5313,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr ""
@@ -5419,7 +5402,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr ""
@@ -5488,13 +5471,13 @@ msgstr ""
msgid "Not running"
msgstr "O Servidor da descoberta do serviço não está a correr"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, 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:59
+#: plinth/modules/security/views.py:60
#, fuzzy
#| msgid "General Configuration"
msgid "Updated security configuration"
@@ -5510,11 +5493,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5544,11 +5527,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5577,14 +5560,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr ""
@@ -5632,28 +5615,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -5699,7 +5682,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr ""
@@ -5793,7 +5776,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr ""
@@ -5841,57 +5824,57 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
#, fuzzy
#| msgid "Repository not found"
msgid "manually created"
msgstr "Repositório não encontrado"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
#, fuzzy
#| msgid "Configuration updated"
msgid "Storage snapshots configuration updated"
msgstr "Configuração atualizada"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -5903,7 +5886,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -5946,7 +5929,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -5966,106 +5949,106 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
#, 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:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
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:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6204,16 +6187,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -6233,40 +6216,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6378,7 +6361,7 @@ msgstr ""
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "Definição inalterada"
@@ -6424,7 +6407,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr ""
@@ -6449,11 +6432,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6474,8 +6457,8 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
#, fuzzy
@@ -6483,30 +6466,30 @@ msgstr ""
msgid "Software Update"
msgstr "Arquivo apagado."
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
#, fuzzy
#| msgid "FreedomBox"
msgid "FreedomBox Updated"
msgstr "Freedombox"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
#, fuzzy
#| msgid "Applications"
msgid "Distribution update started"
msgstr "Aplicações"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6588,6 +6571,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6699,15 +6683,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -7313,12 +7297,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr ""
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr ""
@@ -7353,11 +7337,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7391,40 +7375,110 @@ msgstr ""
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Erro ao definir o nome do hospedeiro: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
#, fuzzy
#| msgid "Setting unchanged"
msgid "media change"
msgstr "Definição inalterada"
-#: plinth/package.py:383
+#: plinth/package.py:382
#, fuzzy, python-brace-format
#| msgid "Configuration"
msgid "configuration file: {file}"
msgstr "Configuração"
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install"
+msgid "Installing app"
+msgstr "Instalar"
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Erro a instalar a aplicação: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Erro a instalar a aplicação: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Erro a instalar a aplicação: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Erro a instalar a aplicação: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Aplicação instalada."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Name"
+msgid "App updated"
+msgstr "Nome"
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -7716,6 +7770,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr ""
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Aplicação instalada."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr "Instalar esta aplicação?"
@@ -7725,58 +7783,53 @@ msgid "This application needs an update. Update now?"
msgstr "Esta aplicação precisa de ser atualizada. Atualizar agora?"
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-"Outra instalação ou atualização já está em execução. Por favor, aguarde "
-"alguns instantes antes de tentar novamente."
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr "Atualmente, esta aplicação não está disponível na sua distribuição."
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr "Instalar"
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr ""
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr "A executar a operação de pré-instalação"
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr "A executar a operação de pós-Instalação"
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr "A instalar %(package_names)s: %(status)s"
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "%(percentage)s%% concluída"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr "Gujarati"
+#~ msgid ""
+#~ "Another installation or upgrade is already running. Please wait for a few "
+#~ "moments before trying again."
+#~ msgstr ""
+#~ "Outra instalação ou atualização já está em execução. Por favor, aguarde "
+#~ "alguns instantes antes de tentar novamente."
+
+#~ msgid "Performing pre-install operation"
+#~ msgstr "A executar a operação de pré-instalação"
+
+#~ msgid "Performing post-install operation"
+#~ msgstr "A executar a operação de pós-Instalação"
+
+#, python-format
+#~ msgid "Installing %(package_names)s: %(status)s"
+#~ msgstr "A instalar %(package_names)s: %(status)s"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "%(percentage)s%% concluída"
+
#~ msgid "Access"
#~ msgstr "Aceder"
diff --git a/plinth/locale/ru/LC_MESSAGES/django.po b/plinth/locale/ru/LC_MESSAGES/django.po
index 06b627ea1..08458189a 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2022-07-12 03:04+0000\n"
"Last-Translator: Nikita Epifanov \n"
"Language-Team: Russian любой пользователь "
"на {box_name}, принадлежащий группе администраторов."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Cockpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "Администрирование сервера"
@@ -1206,18 +1192,18 @@ msgstr ""
"Здесь вы можете установить такие опции конфигурации, как имя хоста, доменное "
"имя, домашняя страница веб-сервера и тому подобное."
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "Общие настройки"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "Настроить"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1394,11 +1380,11 @@ msgstr ""
"серверы, как Matrix Synapse или ejabberd, должны быть настроены с указанными здесь деталями."
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "Coturn"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr "VoIP-помощник"
@@ -1424,11 +1410,11 @@ msgstr ""
"Сервер сетевого времени это программа позволяющая системе синхронизировать "
"время с серверами в Интернете."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "Дата и Время"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "Время синхронизируется с NTP сервером"
@@ -1469,17 +1455,17 @@ msgstr ""
"Пароль по умолчанию - 'deluge', но вы должны войти в систему и изменить его "
"сразу после включения этой службы."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "Загружать файлы используя приложения BitTorrent"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "Delugе"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "Веб-клиент BitTorrent"
@@ -1499,51 +1485,51 @@ msgstr ""
"Тест диагностики системы выполнит ряд проверок, чтобы убедиться, что "
"приложения и службы работают так, как ожидается."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "Диагностика"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr "успешно"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr "сбой"
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr "ошибка"
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr "предупреждение"
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr "МБ"
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr "ГБ"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
"Вы должны отключить некоторые приложения, чтобы уменьшить использование "
"памяти."
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr "Вы не должны устанавливать никаких новых приложений в этой системе."
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
@@ -1552,7 +1538,7 @@ msgstr ""
"В системе мало памяти: использовано {percent_used}%, свободно "
"{memory_available} {memory_available_unit}. {advice_message}"
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr "Мало памяти"
@@ -1647,11 +1633,11 @@ msgstr ""
"обновления URL-адреса на freedns.afraid.org."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "Клиент динамического DNS"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr "Динамическое доменное имя"
@@ -1777,9 +1763,11 @@ msgid "This field is required."
msgstr "Это поле обязательно."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1863,12 +1851,12 @@ msgstr ""
"ejabberd необходим сервер STUN/TURN для аудио/видео звонков. Установите "
"приложение Coturn или настройте внешний сервер."
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "еjabberd"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "Чат-сервер"
@@ -1977,7 +1965,7 @@ msgstr "Dino"
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2043,19 +2031,19 @@ msgstr ""
"Во время установки все другие почтовые серверы в системе будут "
"деинсталлированы."
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr "Postfix/Dovecot"
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr "Сервер электронной почты"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr "Переадресация"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr "Управление переадресацией"
@@ -2091,7 +2079,7 @@ msgstr "Не может быть числом"
msgid "Aliases"
msgstr "Псевдонимы"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr "Roundcube"
@@ -2178,7 +2166,7 @@ msgstr ""
"правильно настроенным, чтобы уменьшить риск информационной опасности из "
"Интернета."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "Брандмауэр"
@@ -2341,15 +2329,15 @@ msgstr ""
"Чтобы узнать больше о том, как использовать Git, посетите Git tutorial."
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr "Доступ к Git-репозиторию с возможностью чтения и записи"
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr "Gitweb"
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr "Простой хостинг Git"
@@ -2447,54 +2435,54 @@ msgstr "Удалить репозиторий Git %(name)s"
msgid "Delete this repository permanently?"
msgstr "Удалить этот репозиторий навсегда?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr "Репозиторий создан."
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr "Ошибка при создании репозитория."
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr "Репозиторий отредактирован."
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr "Редактировать репозиторий"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "Документация"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr "Руководство"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr "Получить поддержку"
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr "Отправить отзыв"
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "Помощь проекту"
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "О проекте"
@@ -2846,19 +2834,19 @@ msgid ""
msgstr ""
"При первом посещении веб-интерфейса будет запущен процесс конфигурации."
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr "Управление приложением I2P"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr "I2P"
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr "Анонимная сеть"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr "I2P Прокси"
@@ -2927,15 +2915,15 @@ msgstr ""
"href=\"{users_url}\">Конфигурация пользователей вы можете изменить "
"разрешения или добавить новых пользователей."
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr "ikiwiki"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr "Вики и Блог"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr "Просмотр и редактирование приложений Wiki"
@@ -2991,32 +2979,32 @@ msgstr ""
"Это действие приведет к удалению всех постов, страниц и комментариев, "
"включая историю изменений. Окончательно удалить этот вики или блог?"
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "Создать вики {name}."
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "Не удалось создать вики: {error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "Созданный блог {name}."
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "Не удалось создать блог: {error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr "{title} удалён."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr "Не удалось удалить {title}: {error}"
@@ -3036,11 +3024,11 @@ msgstr ""
"a>, настольный клиент и установите его. Затем запустите Gobby и выберите "
"«Подключиться к серверу» и введите доменное имя вашего {box_name}."
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr "infinoted"
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr "Сервер Gobby"
@@ -3074,11 +3062,11 @@ msgstr "Включает в себя простую комнату видеок
msgid "Coturn is required to use Janus."
msgstr "Coturn необходим для использования Janus."
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr "Janus"
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
#, fuzzy
#| msgid "Janus Video Room"
msgid "Video Room"
@@ -3102,11 +3090,11 @@ msgstr ""
"JSXC является веб-клиентом для XMPP. Обычно он используется с XMPP сервером "
"работающим локально."
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr "JSXC"
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr "Чат-клиент"
@@ -3137,15 +3125,15 @@ msgstr ""
"org/repository/\">Let's Encrypt Subscriber Agreement перед "
"использованием этой службы."
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr "Let's Encrypt"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "Сертификаты"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr "Невозможно провести тестирование: Не настроены домены."
@@ -3210,7 +3198,7 @@ msgstr ""
"Домены не настроены. Настройте домены, чтобы "
"иметь возможность получать для них сертификаты."
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
@@ -3219,29 +3207,29 @@ msgstr ""
"Сертификат успешно отменен для домена {domain}. Для принятия изменений может "
"потребоваться время."
-#: plinth/modules/letsencrypt/views.py:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr "Не удалось получить сертификат для домена {domain}: {error}"
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr "Сертификат успешно удален для домена {domain}"
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr "Не удалось удалить сертификат для домена {domain}: {error}"
@@ -3273,7 +3261,7 @@ msgstr ""
"Установите приложение Coturn или настройте "
"внешний сервер."
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr "Matrix Synapse"
@@ -3417,12 +3405,12 @@ msgstr ""
"Кто угодно, имея ссылку на wiki, может читать её. Только зарегистрированные "
"пользователи могут вносить изменения."
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr "MediaWiki"
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr "Wiki"
@@ -3497,39 +3485,39 @@ msgstr ""
"Выберите скин по умолчанию для вашей установки MediaWiki. Пользователи могут "
"выбрать предпочитаемый скин."
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "Пароль обновлен"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr "Не удалось обновить пароль. Пожалуйста, выберите более надежный пароль"
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr "Публичная регистрация включена"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr "Публичная регистрация отключена"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr "Режим приватности включен"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr "Режим приватности выключен"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr "Скин по умолчанию изменен"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr "Доменное имя обновлено"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
msgid "Site name updated"
msgstr "Название сайта обновлено"
@@ -3546,11 +3534,11 @@ msgstr ""
"умолчанию (30000). Для подключения к серверу необходим клиент Minetest."
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr "Minetest"
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr "Песочница"
@@ -3602,7 +3590,7 @@ msgstr ""
msgid "Address"
msgstr "Адрес"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3620,15 +3608,15 @@ msgstr ""
"медиаплеерами, смартфонами, телевизорами и игровыми системами (такими как "
"PS3 и Xbox 360) или такими приложениями, как totem и Kodi."
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr "Сервер потоковой передачи мультимедиа"
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr "MiniDLNA"
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr "Простой медиа-сервер"
@@ -3691,11 +3679,11 @@ msgstr ""
"href=\"http://mumble.info\">Клиенты для подключения к Mumble с "
"настольных и мобильных устройств так же доступны."
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr "Mumble"
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr "Голосовой чат"
@@ -3743,15 +3731,15 @@ msgstr "Mumblefly"
msgid "Mumla"
msgstr "Mumla"
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr "Пароль суперпользователя успешно обновлён."
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr "Пароль для подключения обновлён"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr "Имя корневого канала изменено."
@@ -3768,7 +3756,7 @@ msgstr ""
"каждого типа имени отображается, включены или отключены службы HTTP, HTTPS и "
"SSH для входящих подключений через данное имя."
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "Службы имён"
@@ -3788,7 +3776,7 @@ msgstr "Sеcure Shell"
msgid "Services"
msgstr "Службы"
-#: plinth/modules/networks/__init__.py:36
+#: 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."
@@ -3796,7 +3784,7 @@ msgstr ""
"Настроить сетевые устройства. Подключайтесь к Интернету через Ethernet, Wi-"
"Fi или PPPoE. Поделитесь этим подключением с другими устройствами в сети."
-#: plinth/modules/networks/__init__.py:38
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
@@ -3804,15 +3792,10 @@ msgstr ""
"Устройства, администрируемые другими методами, могут быть недоступны для "
"настройки здесь."
-#: plinth/modules/networks/__init__.py:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "Сети"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "Использовать DNSSEC на IPv{kind}"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "Тип подключения"
@@ -4378,7 +4361,7 @@ msgid "This connection is not active."
msgstr "Это подключение не активно."
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "Безопасность"
@@ -4428,7 +4411,7 @@ msgid "Create Connection"
msgstr "Создание подключения"
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "Удаление подключения"
@@ -4448,13 +4431,13 @@ msgstr "Интервал"
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "Ethernet"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "Wi-Fi"
@@ -4475,7 +4458,7 @@ msgid "Computer"
msgstr "Компьютер"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "Редактирование подключения"
@@ -4485,13 +4468,13 @@ msgstr "Подключения"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "Соседние сети Wi-Fi"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "Добавить подключение"
@@ -4717,245 +4700,245 @@ msgstr ""
"маршрутизатору. Это предоставит полные инструкции о том, как выполнить эту "
"задачу."
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr "выключено"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr "автоматически"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr "вручную"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr "совместно"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr "локальная ссылка"
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr "неизвестно"
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr "неуправляемый"
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr "недоступно"
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr "отключено"
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr "подготовка"
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr "подключение"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr "требуется аутентификация"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr "запрашиваемый адрес"
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr "проверка"
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr "ожидание вторичного"
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr "активировано"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr "деактивировано"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr "без причины"
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr "неизвестная ошибка"
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr "устройство теперь управляется"
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr "устройство теперь не управляется"
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr "конфигурация не удалась"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr "требуются секреты"
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr "Клиент DHCP не смог запуститься"
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr "Ошибка клиента DHCP"
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr "Сбой клиента DHCP"
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr "не удалось запустить службу общего подключения"
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr "сбой общей службы подключений"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr "устройство было удалено"
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr "устройство отключено пользователем"
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr "не удалось установить зависимость соединения"
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr "Сеть Wi-Fi не найдена"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr "вторичное соединение не удалось"
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr "активация нового соединения поставлена в очередь"
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr "обнаружен дубликат IP-адреса"
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr "выбранный метод IP не поддерживается"
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr "универсальный"
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr "Интерфейс TUN или TAP"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr "WireGuard"
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr "ad-hoc"
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr "инфраструктура"
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr "точка доступа"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr "точка mesh"
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "Сетевые подключения"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr "Не удается показать подключение: соединение не найдено."
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr "Сведения о подключении"
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "Нельзя редактировать подключение: подключение не найдено."
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr "Этот тип подключения еще не понятен."
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr "Установленное подключение {name}."
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr "Невозможно установить подключение: Подключение не найдено."
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr "Не удалось установить подключение {name}: Нет подходящего устройства."
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "Разорвано подключение {name}."
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr "Не удалось разорвать подключение: соединение не найдено."
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr "Добавление нового общего подключения"
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "Добавление нового подключения Ethernet"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "Добавление нового подключения PPPoE"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "Добавление нового подключения Wi-Fi"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "Подключение {name} удалено."
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr "Не удалось удалить подключение: соединение не найдено."
@@ -4977,20 +4960,20 @@ msgstr ""
"также получить доступ к остальной части Интернет через {box_name} для "
"дополнительной безопасности и анонимности."
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr "Подключение к службам VPN"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr "OpenVPN"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr "Виртуальная частная сеть"
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -5130,15 +5113,15 @@ msgstr ""
"услуг pagekite, например pagekite.net. "
"В будущем, для этого возможно будет использовать {box_name} вашего приятеля."
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr "PаgeKite"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr "Публичная видимость"
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr "PageKite Домен"
@@ -5251,29 +5234,29 @@ msgstr ""
"все комбинации протокол/порт, которые вы можете здесь задать. Например, "
"HTTPS на портах, отличных от 443, может вызывать проблемы."
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr "Веб-сервер (HTTP)"
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr "Сайт будет доступен на http://{0}"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr "Веб-сервер (HTTPS)"
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr "Сайт будет доступен на https://{0}"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr "Sеcure Shell (SSH)"
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
@@ -5282,7 +5265,7 @@ msgstr ""
"по настройке клиента SSH"
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr "Производительность"
@@ -5305,7 +5288,7 @@ msgstr ""
"Метрики производительности собираются Performance Co-Pilot и могут быть "
"просмотрены с помощью приложения Cockpit."
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr "Системный мониторинг"
@@ -5313,7 +5296,7 @@ msgstr "Системный мониторинг"
msgid "Restart or shut down the system."
msgstr "Перезагрузка или завершение работы системы."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "Питание"
@@ -5409,15 +5392,15 @@ msgstr ""
"config.privoxy.org\">http://config.privoxy.org или http://p.p."
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr "Privoxy"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr "Web-прокси"
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr "Доступ к {url} с прокси {proxy} на tcp{kind}"
@@ -5451,11 +5434,11 @@ msgstr ""
"downloads\">для десктопов и мобильных устройств."
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr "IRC-клиент"
@@ -5488,12 +5471,12 @@ msgstr ""
"создание новых календарей и адресных книг. Он не поддерживает добавление "
"событий или контактов, для этого требуется отдельный клиент."
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr "Radicale"
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr "Календарь и Адресная книга"
@@ -5613,7 +5596,7 @@ msgstr ""
"google.com/settings/security/lesssecureapps\">https://www.google.com/"
"settings/security/lesssecureapps)."
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr "Почтовый клиент"
@@ -5657,18 +5640,18 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr "Чтение и подписка на ленты новостей"
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
#, fuzzy
#| msgid "Bridge"
msgid "RSS-Bridge"
msgstr "Мост"
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5713,15 +5696,15 @@ msgstr ""
"Домашняя папка - каждый пользователь в группе Freedombox-share может иметь "
"собственное личное пространство."
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr "Доступ к частным общим ресурсам"
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr "Samba"
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr "Сетевое хранилище файлов"
@@ -5856,15 +5839,15 @@ msgstr ""
"Searx может быть использован, чтобы избежать отслеживания и профилирования "
"поисковыми системами. Она не хранит никаких файлов cookie по умолчанию."
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr "Поиск в интернете"
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr "Searx"
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr "Веб-поиск"
@@ -5960,7 +5943,7 @@ msgstr ""
"участниками Debian и сообществом %(box_name)s."
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr "Отчёт о безопасности"
@@ -6038,12 +6021,12 @@ msgstr "Нет"
msgid "Not running"
msgstr "Не запущен"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Ошибка настройки ограничения доступа: {exception}"
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr "Обновлена настройка безопасности"
@@ -6059,11 +6042,11 @@ msgstr ""
"Обратите внимание, что Shaarli поддерживает только одну учетную запись "
"пользователя, которую вам нужно будет настроить при первом посещении."
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "Shаarli"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr "Закладки"
@@ -6103,11 +6086,11 @@ msgstr ""
"в вашем устройстве, браузере или приложении на http://"
"freedombox_address:1080/"
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr "Shadowsocks"
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr "Прокси Socks5"
@@ -6138,7 +6121,7 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr "Метод шифрования. Должен соответствовать параметру на сервере."
-#: plinth/modules/sharing/__init__.py:20
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -6147,7 +6130,7 @@ msgstr ""
"Общий доступ позволяет обмениваться файлами и папками на вашем {box_name} "
"через сеть с выбранными группами пользователей."
-#: plinth/modules/sharing/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr "Общий доступ"
@@ -6199,28 +6182,28 @@ msgstr ""
"Общий доступ должны быть публично доступным или доступными хотя бы для одной "
"группы"
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr "Добавить общий ресурс"
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr "Нет настроенных общих ресурсов."
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr "Путь на диске"
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr "Общий ресурс через"
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr "С группами"
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr "публичный доступ"
@@ -6275,7 +6258,7 @@ msgstr ""
"корневом разделе. Снимки — не замена бэкапам backups, так как они хранятся на том же разделе. "
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr "Хранилище снимков"
@@ -6379,7 +6362,7 @@ msgstr "Дата"
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr "Удалить снапшот"
@@ -6431,53 +6414,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr "Откат к снимку %(number)s"
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr "создано вручную"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr "временная шкала"
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr "apt"
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr "Управление снапшотами"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr "Создан снимок."
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr "Настройки хранения снапшотов обновлены"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Ошибка действий: {0}[{1}][{2}]"
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr "Удалить выбранные снапшоты"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr "Снимок сейчас используется. Попробуйте позже."
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "Откат к снимку #{number}."
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr "Необходимо перезагрузить систему для завершения отката."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr "Откат к снимку"
@@ -6493,7 +6476,7 @@ msgstr ""
"может выполнять задачи администрирования, копировать файлы или запускать "
"другие службы с использованием таких соединений."
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr "Secure Shell (SSH) сервер"
@@ -6539,7 +6522,7 @@ msgstr "SSH-аутентификация с отключенным пароле
msgid "SSH authentication with password enabled."
msgstr "SSH-аутентификация с включённым паролем."
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr "Единый вход"
@@ -6562,107 +6545,107 @@ msgstr ""
"{box_name}. Вы можете видеть, какие носители используются, монтировать и "
"размонтировать подключаемые носители, увеличивать корневой раздел итп."
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr "Хранилище"
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} байт"
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} КиБ"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} Миб"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} Гиб"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} Тиб"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr "Операция не удалась."
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr "Операция была отменена."
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr "Устройство уже отключается."
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
"Операция не поддерживается из-за отсутствия поддержки драйвера или утилиты."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr "Время операции вышло."
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr "Операция пробудит диск, находящийся в режиме глубокого сна."
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr "Попытка отключения устройства, которое используется."
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr "Операция уже отменена."
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr "Отсутствует авторизация для выполнения запрошенной операции."
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr "Устройство уже подключено."
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr "Устройство не подключено."
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr "Использование запрошенной опции не разрешено."
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr "Устройство подключено другим пользователем."
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
"Недостаточно места в системном разделе: использовано {percent_used}%, "
"свободно {free_space}."
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr "Недостаточно места на диске"
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr "Неизбежный сбой диска"
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6819,16 +6802,16 @@ msgstr ""
"собственный набор папок. Веб-интерфейс доступен только для пользователей, "
"принадлежащих к группе «admin» или «syncthing-access»."
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr "Администрирование приложения Syncthing"
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr "Syncthing"
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr "Синхронизация файлов"
@@ -6854,40 +6837,40 @@ msgid ""
msgstr ""
"Порт Tor SOCKS доступен на {box_name} для внутренних сетей на TCP-порту 9050."
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr "Tor"
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr "Сервис Tor Onion"
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr "Tor Socks прокси"
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr "Ретранслятор Tor типа мост"
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr "Доступен порт трансляции Tor"
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr "Obfs3 транспорт зарегестрирован"
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr "Obfs4 транспорт зарегистрирован"
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr "Доступ к {url} по tcp{kind} через Tor"
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Подтверждение использования Tor в {url} по tcp {kind}"
@@ -7014,7 +6997,7 @@ msgstr "Onion сервис"
msgid "Ports"
msgstr "Порты"
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "Настройки без изменений"
@@ -7070,7 +7053,7 @@ msgstr ""
"После завершения загрузки вы также можете получить доступ к файлам с помощью "
"приложения Общий доступ."
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr "Transmissiоn"
@@ -7102,11 +7085,11 @@ msgstr ""
"Tiny RSS используйте URL / tt-rss-app для "
"подключения."
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr "Tiny Tiny RSS"
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr "Чтение ленты новостей"
@@ -7133,22 +7116,22 @@ msgstr ""
"выполняется автоматически в 02:00, в результате чего все приложения на "
"короткое время становятся недоступными."
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr "Обновление программного обеспечения"
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr "FreedomBox обновлён"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr "Не удалось запустить обновление дистрибутива"
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
@@ -7158,11 +7141,11 @@ msgstr ""
"дистрибутива. Пожалуйста, убедитесь, что свободно не менее 5 ГБ. Обновление "
"дистрибутива будет повторно запущено через 24 часа, если это включено."
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr "Началось обновление дистрибутива"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -7257,6 +7240,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr "Отклонить"
@@ -7379,15 +7363,15 @@ msgstr ""
"пользователи группы admin могут изменять приложения или системные "
"настройки."
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr "Пользователи и группы"
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr "Доступ ко всем сервисам и настройкам системы"
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Проверьте запись LDAP \"{search_item}\""
@@ -8020,12 +8004,12 @@ msgstr ""
"базы данных из интерфейса администратора. Дополнительные плагины или темы "
"могут быть установлены и обновлены на ваш страх и риск."
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr "WordPress"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr "Сайт и блог"
@@ -8076,11 +8060,11 @@ msgstr ""
"Zoph. Для дополнительных пользователей необходимо создать учетные записи как "
"в {box_name}, так и в Zoph с тем же именем пользователя."
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr "Zoph"
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr "Организатор фотографий"
@@ -8118,37 +8102,112 @@ msgstr "PPPоE"
msgid "Generic"
msgstr "Универсальный"
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Ошибка параметра hostname: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, fuzzy, python-brace-format
+#| msgid "Service disabled: {name}"
+msgid "Finished: {name}"
+msgstr "Служба выключена: {name}"
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr "Пакет {expression} недоступен для установки"
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr "Пакет {package_name} последней версией ({latest_version})"
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr "Ошибка во время установки"
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr "Установка"
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr "Загрузка"
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr "изменение медиа"
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr "Файл настроек: {file}"
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "Установка приложений"
+
+#: plinth/setup.py:46
+#, fuzzy
+#| msgid "Updating..."
+msgid "Updating app"
+msgstr "Обновляется..."
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Ошибка при установке пакетов: {string}{details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Ошибка при установке пакетов: {string}{details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Ошибка при установке приложения: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Ошибка при установке приложения: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Приложение установлено."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "Последнее обновление"
+
+#: plinth/setup.py:411
+#, fuzzy
+#| msgid "Upgrade Packages"
+msgid "Updating app packages"
+msgstr "Обновление пакетов"
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Доступ запрещён"
@@ -8468,6 +8527,10 @@ msgstr "С Роутера/WAN портов"
msgid "To %(box_name)s Ports"
msgstr "В %(box_name)s Порты"
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Приложение установлено."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr "Установить это приложение?"
@@ -8477,22 +8540,14 @@ msgid "This application needs an update. Update now?"
msgstr "Это приложение нуждается в обновлении. Обновить сейчас?"
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-"Другая установка или обновление уже запущенны. Пожалуйста, подождите "
-"несколько минут перед повторной попыткой."
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr "Это приложение в настоящее время недоступно для вашего дистрибутива."
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr "Проверить еще раз"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
@@ -8502,36 +8557,43 @@ msgstr ""
"системе, конфликтуют с установкой этого приложения. Следующие пакеты будут "
"удалены, если вы продолжите установку:"
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr "Установка"
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr "Обновление"
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr "Выполнение операции предварительной установки"
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr "Выполнение операции после установки"
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr "Установка %(package_names)s: %(status)s"
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "%(percentage)s%% завершено"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr "Гуджарати"
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "Использовать DNSSEC на IPv{kind}"
+
+#~ msgid ""
+#~ "Another installation or upgrade is already running. Please wait for a few "
+#~ "moments before trying again."
+#~ msgstr ""
+#~ "Другая установка или обновление уже запущенны. Пожалуйста, подождите "
+#~ "несколько минут перед повторной попыткой."
+
+#~ msgid "Performing pre-install operation"
+#~ msgstr "Выполнение операции предварительной установки"
+
+#~ msgid "Performing post-install operation"
+#~ msgstr "Выполнение операции после установки"
+
+#, python-format
+#~ msgid "Installing %(package_names)s: %(status)s"
+#~ msgstr "Установка %(package_names)s: %(status)s"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "%(percentage)s%% завершено"
+
#~ 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."
@@ -9494,9 +9556,6 @@ msgstr "Гуджарати"
#~ msgid "Service enabled: {name}"
#~ msgstr "Включена служба: {name}"
-#~ msgid "Service disabled: {name}"
-#~ msgstr "Служба выключена: {name}"
-
#~ msgid "PageKite Account"
#~ msgstr "Учетная запись PageKite"
@@ -9903,9 +9962,6 @@ msgstr "Гуджарати"
#~ msgid "Automatic Upgrades"
#~ msgstr "Автоматические обновления"
-#~ msgid "Upgrade Packages"
-#~ msgstr "Обновление пакетов"
-
#~ msgid "No such device - {device_path}"
#~ msgstr "Нет такого устройства - {device_path}"
diff --git a/plinth/locale/si/LC_MESSAGES/django.po b/plinth/locale/si/LC_MESSAGES/django.po
index ae92a144f..1b93d524c 100644
--- a/plinth/locale/si/LC_MESSAGES/django.po
+++ b/plinth/locale/si/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2021-04-27 13:32+0000\n"
"Last-Translator: HelaBasa \n"
"Language-Team: Sinhala freedns.afraid.org."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr ""
@@ -1593,9 +1579,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1671,12 +1659,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr ""
@@ -1769,7 +1757,7 @@ msgstr ""
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1814,19 +1802,19 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr ""
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr ""
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr ""
@@ -1860,7 +1848,7 @@ msgstr ""
msgid "Aliases"
msgstr ""
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr ""
@@ -1941,7 +1929,7 @@ msgid ""
"configured reduces risk of security threat from the Internet."
msgstr ""
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr ""
@@ -2078,15 +2066,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2182,54 +2170,54 @@ msgstr ""
msgid "Delete this repository permanently?"
msgstr ""
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr ""
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr ""
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr ""
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr ""
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "පිළිබඳව"
@@ -2507,19 +2495,19 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr ""
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr ""
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr ""
@@ -2572,15 +2560,15 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr ""
@@ -2634,32 +2622,32 @@ msgid ""
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
@@ -2676,11 +2664,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr ""
@@ -2712,11 +2700,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -2736,11 +2724,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr ""
@@ -2762,15 +2750,15 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -2833,36 +2821,36 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, 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:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
@@ -2884,7 +2872,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr ""
@@ -2988,12 +2976,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3054,39 +3042,39 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
msgid "Site name updated"
msgstr ""
@@ -3099,11 +3087,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr ""
@@ -3148,7 +3136,7 @@ msgstr ""
msgid "Address"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3159,15 +3147,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3220,11 +3208,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr ""
@@ -3266,15 +3254,15 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr ""
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3287,7 +3275,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr ""
@@ -3307,27 +3295,22 @@ msgstr ""
msgid "Services"
msgstr ""
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr ""
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr ""
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
@@ -3804,7 +3787,7 @@ msgid "This connection is not active."
msgstr ""
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr ""
@@ -3847,7 +3830,7 @@ msgid "Create Connection"
msgstr ""
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr ""
@@ -3867,13 +3850,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr ""
@@ -3894,7 +3877,7 @@ msgid "Computer"
msgstr ""
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr ""
@@ -3904,13 +3887,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr ""
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
@@ -4093,245 +4076,245 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr ""
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr ""
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr ""
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr ""
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr ""
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr ""
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr ""
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr ""
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr ""
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr ""
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr ""
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr ""
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr ""
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr ""
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr ""
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr ""
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr ""
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr ""
@@ -4346,20 +4329,20 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4467,15 +4450,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr ""
@@ -4581,36 +4564,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -4627,7 +4610,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr ""
@@ -4635,7 +4618,7 @@ msgstr ""
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr ""
@@ -4706,15 +4689,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -4738,11 +4721,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr ""
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr ""
@@ -4767,12 +4750,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -4862,7 +4845,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr ""
@@ -4898,16 +4881,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -4942,15 +4925,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr ""
@@ -5070,15 +5053,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr ""
@@ -5159,7 +5142,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr ""
@@ -5224,12 +5207,12 @@ msgstr ""
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr ""
@@ -5243,11 +5226,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5277,11 +5260,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5310,14 +5293,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr ""
@@ -5365,28 +5348,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -5432,7 +5415,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr ""
@@ -5526,7 +5509,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr ""
@@ -5574,53 +5557,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr ""
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -5632,7 +5615,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -5673,7 +5656,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -5693,104 +5676,104 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -5924,16 +5907,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -5953,40 +5936,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6092,7 +6075,7 @@ msgstr ""
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr ""
@@ -6138,7 +6121,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr ""
@@ -6163,11 +6146,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6188,33 +6171,33 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6292,6 +6275,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6395,15 +6379,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -6968,12 +6952,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr ""
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr ""
@@ -7008,11 +6992,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7046,37 +7030,96 @@ msgstr ""
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, python-brace-format
+msgid "Error: {name}: {exception_message}"
+msgstr ""
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+msgid "Installing app"
+msgstr ""
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, python-brace-format
+msgid "Error installing app: {string} {details}"
+msgstr ""
+
+#: plinth/setup.py:76
+#, python-brace-format
+msgid "Error updating app: {string} {details}"
+msgstr ""
+
+#: plinth/setup.py:82
+#, python-brace-format
+msgid "Error installing app: {error}"
+msgstr ""
+
+#: plinth/setup.py:85
+#, python-brace-format
+msgid "Error updating app: {error}"
+msgstr ""
+
+#: plinth/setup.py:89
+msgid "App installed."
+msgstr ""
+
+#: plinth/setup.py:91
+msgid "App updated"
+msgstr ""
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -7362,6 +7405,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr ""
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr ""
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr ""
@@ -7371,52 +7418,28 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr ""
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr ""
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr ""
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/sl/LC_MESSAGES/django.po b/plinth/locale/sl/LC_MESSAGES/django.po
index 5df685dc5..3734bc24f 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2021-01-18 12:32+0000\n"
"Last-Translator: ikmaak \n"
"Language-Team: Slovenian katerikoli uporabnik na {box_name}, ki je član skupine "
"skrbnikov."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Cockpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "Skrbništvo strežnika"
@@ -1231,18 +1217,18 @@ msgid ""
"name, webserver home page etc."
msgstr ""
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr ""
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "Nastavitve"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1404,11 +1390,11 @@ msgid ""
"be configured with the details provided here."
msgstr ""
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr ""
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr ""
@@ -1430,11 +1416,11 @@ msgid ""
"synchronization with servers on the Internet."
msgstr ""
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr ""
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr ""
@@ -1471,17 +1457,17 @@ msgid ""
"immediately after enabling this service."
msgstr ""
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr ""
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr ""
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr ""
@@ -1499,56 +1485,56 @@ msgid ""
"confirm that applications and services are working as expected."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr ""
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr ""
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
"{memory_available_unit} free. {advice_message}"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr ""
@@ -1629,11 +1615,11 @@ msgid ""
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
#, fuzzy
#| msgid "Domain Name"
msgid "Dynamic Domain Name"
@@ -1745,9 +1731,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1825,12 +1813,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr ""
@@ -1925,7 +1913,7 @@ msgstr ""
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1970,23 +1958,23 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
#, fuzzy
#| msgid "Domain Name Server"
msgid "Email Server"
msgstr "Strežnik z imenom domene"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
#, fuzzy
#| msgid "Create new repository"
msgid "My Email Aliases"
msgstr "Ustvari novo skladišče"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
#, fuzzy
#| msgid "Create new repository"
msgid "Manage Aliases for Mailbox"
@@ -2024,7 +2012,7 @@ msgstr ""
msgid "Aliases"
msgstr "Ustvari novo skladišče"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr ""
@@ -2111,7 +2099,7 @@ msgid ""
"configured reduces risk of security threat from the Internet."
msgstr ""
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr ""
@@ -2248,15 +2236,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2371,60 +2359,60 @@ msgstr ""
msgid "Delete this repository permanently?"
msgstr "Želite ta arhiv trajno izbrisati?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
#, fuzzy
#| msgid "Repository not found"
msgid "Repository created."
msgstr "Ne najdem skladišča"
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
#, fuzzy
#| msgid "Repository not found"
msgid "Repository edited."
msgstr "Ne najdem skladišča"
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
#, fuzzy
#| msgid "Create new repository"
msgid "Edit repository"
msgstr "Ustvari novo skladišče"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr ""
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr ""
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
@@ -2702,19 +2690,19 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr ""
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr ""
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr ""
@@ -2767,15 +2755,15 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr ""
@@ -2829,33 +2817,33 @@ msgid ""
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, fuzzy, python-brace-format
#| msgid "Archive deleted."
msgid "{title} deleted."
msgstr "Arhiv je izbrisan."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
@@ -2872,11 +2860,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr ""
@@ -2908,11 +2896,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -2932,11 +2920,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr ""
@@ -2958,15 +2946,15 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -3029,36 +3017,36 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, 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:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
@@ -3080,7 +3068,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr ""
@@ -3184,12 +3172,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3252,41 +3240,41 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Domain Name"
msgid "Domain name updated"
msgstr "Ime domene"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
#, fuzzy
#| msgid "Domain Name"
msgid "Site name updated"
@@ -3301,11 +3289,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr ""
@@ -3350,7 +3338,7 @@ msgstr ""
msgid "Address"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3361,15 +3349,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3422,11 +3410,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr ""
@@ -3470,15 +3458,15 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr ""
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3491,7 +3479,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr ""
@@ -3513,27 +3501,22 @@ msgstr ""
msgid "Services"
msgstr "Odkrivanje storitev"
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr ""
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr ""
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
@@ -4010,7 +3993,7 @@ msgid "This connection is not active."
msgstr ""
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr ""
@@ -4053,7 +4036,7 @@ msgid "Create Connection"
msgstr ""
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr ""
@@ -4073,13 +4056,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr ""
@@ -4100,7 +4083,7 @@ msgid "Computer"
msgstr ""
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr ""
@@ -4112,13 +4095,13 @@ msgstr "Povezava je zavrnjena"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr ""
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
@@ -4301,255 +4284,255 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr ""
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr ""
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr ""
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr ""
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr ""
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr ""
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
#, fuzzy
#| msgid "Connection refused"
msgid "connecting"
msgstr "Povezava je zavrnjena"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr ""
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr ""
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr ""
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
#, fuzzy
#| msgid "Configuration updated"
msgid "configuration failed"
msgstr "Konfiguracija je posodobljena"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
#, fuzzy
#| msgid "Archive deleted."
msgid "DHCP client failed"
msgstr "Arhiv je izbrisan."
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
#, fuzzy
#| msgid "Configuration updated"
msgid "shared connection service failed"
msgstr "Konfiguracija je posodobljena"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr ""
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
#, fuzzy
#| msgid "Repository not found"
msgid "Wi-Fi network not found"
msgstr "Ne najdem skladišča"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr ""
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr ""
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr ""
@@ -4564,22 +4547,22 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
#, fuzzy
#| msgid "Connection refused"
msgid "Connect to VPN services"
msgstr "Povezava je zavrnjena"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4687,15 +4670,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr ""
@@ -4801,36 +4784,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -4847,7 +4830,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr ""
@@ -4855,7 +4838,7 @@ msgstr ""
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr ""
@@ -4926,15 +4909,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -4958,11 +4941,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr ""
@@ -4987,12 +4970,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -5082,7 +5065,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr ""
@@ -5126,16 +5109,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5170,15 +5153,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr ""
@@ -5304,15 +5287,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr ""
@@ -5393,7 +5376,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr ""
@@ -5460,12 +5443,12 @@ msgstr ""
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr ""
@@ -5479,11 +5462,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5513,11 +5496,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5546,14 +5529,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr ""
@@ -5601,28 +5584,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -5668,7 +5651,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr ""
@@ -5762,7 +5745,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr ""
@@ -5810,55 +5793,55 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
#, fuzzy
#| msgid "Repository not found"
msgid "manually created"
msgstr "Ne najdem skladišča"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr "apt"
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -5870,7 +5853,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -5913,7 +5896,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -5933,104 +5916,104 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6166,16 +6149,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -6195,40 +6178,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6334,7 +6317,7 @@ msgstr ""
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr ""
@@ -6388,7 +6371,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr ""
@@ -6421,11 +6404,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6446,8 +6429,8 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
#, fuzzy
@@ -6455,28 +6438,28 @@ msgstr ""
msgid "Software Update"
msgstr "Arhiv je izbrisan."
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
#, fuzzy
#| msgid "FreedomBox"
msgid "FreedomBox Updated"
msgstr "FreedomBox"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6554,6 +6537,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6659,15 +6643,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -7268,12 +7252,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr ""
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr ""
@@ -7308,11 +7292,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7346,37 +7330,105 @@ msgstr ""
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Napaka ob nameščanju aplikacije: {error}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+msgid "Installing app"
+msgstr ""
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Napaka ob nameščanju aplikacije: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Napaka ob nameščanju aplikacije: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Napaka ob nameščanju aplikacije: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Napaka ob nameščanju aplikacije: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Aplikacija je nameščena."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Name"
+msgid "App updated"
+msgstr "Ime"
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -7664,6 +7716,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr ""
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Aplikacija je nameščena."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr ""
@@ -7673,52 +7729,28 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr ""
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr ""
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr ""
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/sq/LC_MESSAGES/django.po b/plinth/locale/sq/LC_MESSAGES/django.po
index 516480256..93c598785 100644
--- a/plinth/locale/sq/LC_MESSAGES/django.po
+++ b/plinth/locale/sq/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2022-02-06 23:23+0000\n"
"Last-Translator: Besnik Bleta \n"
"Language-Team: Albanian cilido përdorues në "
"{box_name} që është pjesë e grupit të përgjegjësve."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Cockpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "Administrim Shërbyesi"
@@ -1203,18 +1189,18 @@ msgstr ""
"Këtu mund të caktoni disa nga mundësitë e përgjithshme të formësimit, bie "
"fjala strehëemër, emër përkatësie, faqe hyrëse e sgërbyesit."
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "Formësim i Përgjithshëm"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "Formësoni"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1393,11 +1379,11 @@ msgstr ""
"tillë si Matrix Synapse, ose ejabberd duhen formësuar me hollësitë e dhëna këtu."
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "Coturn"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr "Ndihmës VoIP"
@@ -1422,11 +1408,11 @@ msgstr ""
"Shërbyesi i kohës së rrjetit është një program që kujdeset që koha e "
"sistemit të jetë e njëkohshme me shërbyes në Internet."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "Datë & Kohë"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "Kohë e njëkohësuar me shërbyes NTP"
@@ -1467,17 +1453,17 @@ msgstr ""
"Fjalëkalimi parazgjedhje është “deluge”, por duhet të bëni hyrjen me të dhe "
"ta ndryshoni menjëherë pas aktivizimit të këtij shërbimi."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "Shkarkoni kartela duke përdorur aplikacione BitTorrent"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "Deluge"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "Klient Web BitTorrent"
@@ -1498,50 +1484,50 @@ msgstr ""
"sistemin tuaj, për të verifikuar se aplikacionet dhe shërbimet po punojnë "
"siç pritet."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "Diagnostikime"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr "kaloi"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr "dështoi"
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr "gabim"
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr "kujdes"
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr "MiB"
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr "GiB"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
"Duhet të çaktivizoni disa aplikacione, për të zvogëluar përdorim kujtese."
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr "S’duhet të instaloni çfarëdo aplikacioni të ri në këtë sistem."
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
@@ -1550,7 +1536,7 @@ msgstr ""
"Ka pak kujtesë për sistemin: {percent_used}% të përdorur, {memory_available} "
"{memory_available_unit} të lirë. {advice_message}"
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr "Kujtesë e Pakët"
@@ -1654,11 +1640,11 @@ msgstr ""
"lira me bazë përditësim URL-je, te <a href=\" target=\"_blank\"> freedns."
"afraid.org."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "Klient DNS Dinamik"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr "Emër Dinamik Përkatësie"
@@ -1791,9 +1777,11 @@ msgid "This field is required."
msgstr "lyp të fshehta"
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1893,12 +1881,12 @@ msgstr ""
"aplikacionin Coturn, ose formësoni një shërbyes "
"të jashtëm."
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "ejabberd"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "Shërbyes Fjalosjesh"
@@ -2010,7 +1998,7 @@ msgstr "Dino"
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2062,21 +2050,21 @@ msgid ""
msgstr ""
"Gjatë instalimit, çfarëdo shërbyesi tjetër email në sistem do të çinstalohet."
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr "Shërbyes Email-i"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
#, fuzzy
#| msgid "Manage Aliases"
msgid "My Email Aliases"
msgstr "Administroni Aliase"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
#, fuzzy
#| msgid "Manage Aliases"
msgid "Manage Aliases for Mailbox"
@@ -2114,7 +2102,7 @@ msgstr "S’mund të jetë një numër"
msgid "Aliases"
msgstr "Aliase"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr "Roundcube"
@@ -2198,7 +2186,7 @@ msgstr ""
"në rrjet te {box_name} juaj. Mbajta e një firewall-i të aktivizuar dhe të "
"formësuar si duhet ul rrezikun e kërcënimeve të sigurisë nga Interneti."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "Firewall"
@@ -2360,15 +2348,15 @@ msgstr ""
"Për të mësuar më tepër se si të përdoret Git, vizitoni përkujdesore Git-i."
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr "Hyrje për shkrim-lexim në depo Git"
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr "Gitweb"
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr "Strehim i Thjeshtë Git"
@@ -2464,54 +2452,54 @@ msgstr "Fshi Depon Git %(name)s"
msgid "Delete this repository permanently?"
msgstr "Të fshihet kjo depo përgjithmonë?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr "Depoja u krijua."
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr "Ndodhi një gabim teksa krijohej depoja."
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr "Depoja u përpunua."
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr "Përpunoni depon"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "Dokumentim"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr "Doracak"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr "Merrni Asistencë"
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr "Parashtroni Përshtypjet"
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "Jepni Ndihmesë"
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Mbi"
@@ -2868,19 +2856,19 @@ msgid ""
msgstr ""
"Vizita e parë te ndërfaqja web e dhënë do të fillojë procesin e formësimit."
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr "Administroni aplikacion I2P"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr "I2P"
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr "Rrjet Anonimiteti"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr "Ndërmjetës I2P"
@@ -2950,15 +2938,15 @@ msgstr ""
"ekzistueset. Te Formësim Përdoruesish mund të "
"ndryshoni këto leje ose të shtoni përdorues të rinj."
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr "ikiwiki"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr "Wiki dhe Blog"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr "Shihni dhe përpunoni aplikacione wiki"
@@ -3014,32 +3002,32 @@ msgstr ""
"Ky veprim do të heqë krejt postimet, faqet dhe komentet, përfshi historik "
"rishikimesh. Të fshihet përgjithmonë kjo wiki ose ky blog?"
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "U krijua wiki {name}."
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "S’u krijua dot wiki: {error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "U krijua blogu {name}."
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "S’u krijua dot blogu: {error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr "{title} u fshi."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr "S’u fshi dot {title}: {error}"
@@ -3061,11 +3049,11 @@ msgstr ""
"klientin desktop, dhe instalojeni. Mandej nisni Gobby-n dhe përzgjidhni "
"“Lidhu me Shërbyes” dhe jepni emrin e përkatësisë së {box_name} tuaj."
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr "infinoted"
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr "Shërbyes Gobby"
@@ -3099,11 +3087,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -3125,11 +3113,11 @@ msgstr ""
"JSXC është një klient web për XMPP-në. Zakonisht përdoret me një shërbyes "
"XMPP që xhiron lokalisht."
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr "JSXC"
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr "Klient Fjalosjesh"
@@ -3161,15 +3149,15 @@ msgstr ""
"pajtohuni me Marrëveshje "
"Pajtimtari Let’s Encrypt before using this service."
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr "Let's Encrypt"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "Dëshmi"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr "S’mund të testojë: S’ka përkatësi të formësuara."
@@ -3234,7 +3222,7 @@ msgstr ""
"S’ka përkatësi të formësuara. Formësoni "
"përkatësi, që të jetë në gjendje të marrë dëshmi për to."
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
@@ -3243,29 +3231,29 @@ msgstr ""
"Dëshmi e shfuqizuar me sukses për përkatësinë {domain}.Kjo mund të dojë ca "
"çaste të hyjë në fuqi."
-#: plinth/modules/letsencrypt/views.py:47
+#: plinth/modules/letsencrypt/views.py:49
#, python-brace-format
msgid "Failed to revoke certificate for domain {domain}: {error}"
msgstr "S’u arrit të shfuqizohet dëshmi për përkatësinë {domain}: {error}"
-#: plinth/modules/letsencrypt/views.py:60
-#: plinth/modules/letsencrypt/views.py:77
+#: plinth/modules/letsencrypt/views.py:62
+#: plinth/modules/letsencrypt/views.py:79
#, python-brace-format
msgid "Certificate successfully obtained for domain {domain}"
msgstr "Dëshmi e marrë me sukses për përkatësinë {domain}"
-#: plinth/modules/letsencrypt/views.py:65
-#: plinth/modules/letsencrypt/views.py:82
+#: plinth/modules/letsencrypt/views.py:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr "S’u arrit të merret dëshmi për përkatësinë {domain}: {error}"
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr "Dëshmi e fshirë me sukses për përkatësinë {domain}"
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr "S’u arrit të fshihet dëshmi për përkatësinë {domain}: {error}"
@@ -3297,7 +3285,7 @@ msgstr ""
"aplikacionin Coturn, ose formësoni një shërbyes "
"të jashtëm."
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr "Matrix Synapse"
@@ -3441,12 +3429,12 @@ msgstr ""
"Cilido me një lidhje për te kjo wiki mund ta lexojë atë. Ndryshime te lënda "
"mund të bëjnë vetëm përdorues që kanë bërë hyrjen në llogaritë e tyre."
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr "MediaWiki"
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr "Wiki"
@@ -3528,11 +3516,11 @@ msgstr ""
"Zgjidhni një lëkurçe parazgjedhje për instalimin tuaj MediaWiki. Përdoruesit "
"kanë mundësi të përzgjedhin lëkurçen e tyre të parapëlqyer."
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "Fjalëkalimi u përditësua"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
#, fuzzy
#| msgid "Password used to encrypt data. Must match server password."
msgid "Password update failed. Please choose a stronger password"
@@ -3540,33 +3528,33 @@ msgstr ""
"Fjalëkalim i përdorur për të fshehtëzuar të dhëna. Duhet të përputhet me "
"fjalëkalimin e shërbyesit."
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr "Regjistrimet publike u aktivizuan"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr "Regjistrimet publike u çaktivizuan"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr "Mënyra private u aktivizua"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr "Mënyra private u çaktivizua"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr "Lëkurçja parazgjedhje u ndryshua"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Domain name set"
msgid "Domain name updated"
msgstr "Emri i përkatësisë u caktua"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
#, fuzzy
#| msgid "Domain name set"
msgid "Site name updated"
@@ -3586,11 +3574,11 @@ msgstr ""
"lypset një klient Minetest"
"a>."
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr "Minetest"
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr "Bankëprovë Blloqesh"
@@ -3643,7 +3631,7 @@ msgstr ""
msgid "Address"
msgstr "Adresë"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3661,15 +3649,15 @@ msgstr ""
"telefona të mençur, televizorë, dhe sisteme lojërash (të tillë si PS3 dhe "
"Xbox 360), ose aplikacione të tillë si totem dhe Kodi."
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr "Shërbyes transmetimi mediash"
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr "MiniDLNA"
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr "Shërbyes i Thjeshtë Mediash"
@@ -3732,11 +3720,11 @@ msgstr ""
"64738. Ka klientë klientë të gatshëm për "
"t’u lidhur me Mumble-in që nga desktopi apo pajisjet tuaja celulare."
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr "Mumble"
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr "Fjalosje Me Zë"
@@ -3781,17 +3769,17 @@ msgstr "Mumblefly"
msgid "Mumla"
msgstr "Mumla"
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr "Fjalëkalimi i superpërdoruesit u përditësua me sukses."
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
#, fuzzy
#| msgid "Password added."
msgid "Join password changed"
msgstr "U shtua fjalëkalim."
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3809,7 +3797,7 @@ msgstr ""
"HTTPS, dhe SSH janë të aktivizuara apo të çaktivizuara për lidhje ardhëse "
"përmes emrit të dhënë."
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "Shërbime Emrash"
@@ -3829,7 +3817,7 @@ msgstr "Shell i Sigurt"
msgid "Services"
msgstr "Shërbime"
-#: plinth/modules/networks/__init__.py:36
+#: 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."
@@ -3837,7 +3825,7 @@ msgstr ""
"Formësoni pajisje rrjeti. Lidhuni në Internet përmes Ethernet-i, Wi-Fi ose "
"PPPoE. Ndajeni atë lidhje me pajisje të tjera në rrjet."
-#: plinth/modules/networks/__init__.py:38
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
@@ -3845,15 +3833,10 @@ msgstr ""
"Pajisjet e administruara përmes metodash të tjera mund të mos jenë të "
"pranishme për formësim këtu."
-#: plinth/modules/networks/__init__.py:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "Rrjete"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "Po përdoret DNSSEC në IPv{kind}"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "Lloj Lidhjeje"
@@ -4419,7 +4402,7 @@ msgid "This connection is not active."
msgstr "Kjo lidhje s’është aktive."
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "Siguri"
@@ -4471,7 +4454,7 @@ msgid "Create Connection"
msgstr "Krijoni Lidhje"
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "Fshije Lidhjen"
@@ -4491,13 +4474,13 @@ msgstr "Hapësirë"
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "Ethernet"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "Wi-Fi"
@@ -4518,7 +4501,7 @@ msgid "Computer"
msgstr "Kompjuter"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "Përpunoni Lidhje"
@@ -4528,13 +4511,13 @@ msgstr "Lidhje"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "Rrjete Wi-Fi Atypari"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "Shtoni Lidhje"
@@ -4758,246 +4741,246 @@ msgstr ""
"numrin e modelit të rrugëzuesit tuaj dhe kërkoni në internet për doracakun e "
"rrugëzuesit. Kjo do t’ju japë udhëzimet e plota se si të kryhet kjo punë."
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr "i çaktivizuar"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr "automatik"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr "dorazi"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr "e përbashkët"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr "e panjohur"
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr "e paadministruar"
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr "jo i passhëm"
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr "i shkëputur"
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr "po përgatitet"
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr "po lidhet"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr "lyp mirëfilltësim"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr "po kërkohet adresë"
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr "po kontrollohet"
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr "po pritet për dytësor"
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr "e aktivizuar"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr "po çaktivizohet"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr "pa arsye"
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr "gabim i panjohur"
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr "pajisja tani administrohet"
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr "pajisja tani është e paadministruar"
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr "formësimi dështoi"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr "lyp të fshehta"
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr "Klienti DHCP s’arriti të niset"
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr "Gabim klienti DHCP"
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr "Klienti DHCP dështoi"
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr "dështoi nisja e shërbimit për lidhje të përbashkët"
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr "dështoi shërbimi për lidhje të përbashkët"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr "pajisja u hoq"
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr "pajisja u shkëput nga përdoruesi"
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr "dështoi plotësimi i një varësie të lidhjes"
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr "S’u gjet rrjet Wi-Fi"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr "dështoi një lidhje dytësore"
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr "u vu në radhë aktivizim lidhjeje të re"
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr "u pikas adresë IP e përsëdytur"
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr "metoda e përzgjedhur për IP nuk mbulohet"
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr "elementare"
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr "Ndërfaqe TUN ose TAP"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr "WireGuard"
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr "ad-hoc"
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr "infrastrukturë"
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr "pikë hyrjeje"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr "pikë mesh"
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "Lidhje Rrjeti"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr "S’shfaqet dot lidhje: S’u gjet lidhje."
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr "Hollësi Lidhjeje"
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "S’përpunohet dot lidhje: S’u gjet lidhje."
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr "Ky lloj lidhjesh nuk kuptohet ende."
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr "U aktivizua lidhja {name}."
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr "S’u arrit të aktivizohet lidhje: S’u gjet lidhje."
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
"S’u arrit të aktivizohet lidhja {name}: S’u gjet pajisje e përshtatshme."
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "U çaktivizua lidhja {name}."
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr "Dështoi çaktivizimi i lidhjes: S’u gjet lidhje."
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr "Po Shtohet Lidhje e Re Elementare"
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "Po Shtohet Lidhje e Re Ethernet"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "Po Shtohet Lidhje e Re PPPoE"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "Po Shtohet Lidhje e Re Wi-Fi"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "Lidhja {name} u fshi."
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr "S’u arrit të fshihet lidhje: S’u gjet lidhje."
@@ -5018,20 +5001,20 @@ msgstr ""
"brendshme të dhëna nga {box_name}. Mund të hyni edhe në Internet përmes "
"{box_name}-it, për më tepër siguri dhe anonimitet."
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr "Lidhuni me shërbime VPN"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr "OpenVPN"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr "Rrjet Virtual Privat"
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -5172,15 +5155,15 @@ msgstr ""
"të ardhmen mund të jetë e mundshme të përdorni {box_name}-in e një shokut "
"tuaj për këtë."
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr "PageKite"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr "E dukshme Publikisht"
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr "Përkatësi PageKite"
@@ -5296,29 +5279,29 @@ msgstr ""
"përcaktoni këtu. Për shembull, HTTPS në porta të tjera nga 443 dihet se "
"shkakton probleme."
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr "Shërbyes (HTTP)"
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr "Sajti do të gjendet në http://{0}"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr "Shërbyes (HTTPS)"
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr "Sajti do të gjendet në https://{0}"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr "Shell i Sigurt (SSH)"
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
@@ -5327,7 +5310,7 @@ msgstr ""
"\">udhëzime ujdisjeje klienti SSH"
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr "Funksionim"
@@ -5350,7 +5333,7 @@ msgstr ""
"Matjet mbi funksionimin grumbullohen nga Performance Co-Pilot dhe mund të "
"shihen duke përdorur aplikacionin Cockpit."
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr "Mbikëqyrje Sistemi"
@@ -5358,7 +5341,7 @@ msgstr "Mbikëqyrje Sistemi"
msgid "Restart or shut down the system."
msgstr "Rinisni ose fikeni sistemin."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "Energji"
@@ -5454,15 +5437,15 @@ msgstr ""
"për të mund të shihni te http://config."
"privoxy.org/ ose http://p.p."
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr "Privoxy"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr "Ndërmjetës Web"
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr "Hapni {url} me ndërmjetësin {proxy} në tcp{kind}"
@@ -5496,11 +5479,11 @@ msgstr ""
"\"http://quassel-irc.org/downloads\">desktopi dhe celulari juaj."
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr "Klient IRC"
@@ -5534,12 +5517,12 @@ msgstr ""
"të ri dhe librash adresash. Nuk mbulon shtim veprimtarish ose kontaktesh, "
"çka duhen bërë duke përdorur një tjetër klient."
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr "Radicale"
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr "Kalendar dhe Libër adresash"
@@ -5660,7 +5643,7 @@ msgstr ""
"Google (https://www.google.com/settings/security/lesssecureapps)."
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr "Klient Email"
@@ -5704,16 +5687,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr "Lexoni dhe pajtohuni te prurje lajmesh"
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5759,15 +5742,15 @@ msgstr ""
"Pjesë Home - cilido përdorues në grupin freedombox-share mund të ketë "
"hapësirën e vet private."
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr "Hyrje te ndarje private"
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr "Samba"
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr "Depozitë Kartelash Në Rrjet"
@@ -5901,15 +5884,15 @@ msgstr ""
"Searx mund të përdoret për të shmangur gjurmim dhe profilizim nga motorë "
"kërkimesh. Si parazgjedhje, nuk depoziton cookies."
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr "Kërkoni në internet"
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr "Searx"
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr "Kërkim në Web"
@@ -6006,7 +5989,7 @@ msgstr ""
"kontribues te Debian dhe bashkësia %(box_name)s."
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr "Raport Sigurie"
@@ -6084,12 +6067,12 @@ msgstr "Jo"
msgid "Not running"
msgstr "S’xhiron"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Gabim në ujdisje hyrjeje të kufizuar: {exception}"
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr "U përditësua formësim sigurie"
@@ -6105,11 +6088,11 @@ msgstr ""
"Mbani parasysh se Shaarli mbulon vetëm një llogari të vetme përdoruesi, të "
"cilën duhet ta ujdisni gjatë vizitës fillestare."
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "Shaarli"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr "Faqerojtës"
@@ -6149,11 +6132,11 @@ msgstr ""
"pajisjen, shfletuesin ose aplikacionin tuaj caktoni http://"
"freedombox_address:1080/"
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr "Shadowsocks"
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr "Ndërmjetës SOCKS5"
@@ -6184,7 +6167,7 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr "Metodë fshehtëzimi. Duhet të përputhet me atë të caktuar te shërbyesi."
-#: plinth/modules/sharing/__init__.py:20
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -6193,7 +6176,7 @@ msgstr ""
"Dhënia ju lejon të ndani nëpër internet kartela dhe dosje në {box_name}-in "
"tuaj me grupe dhe përdorues të zgjedhur nga ju."
-#: plinth/modules/sharing/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr "Dhënie"
@@ -6247,28 +6230,28 @@ msgstr "Ka tashmë një pjesë me këtë emër."
msgid "Shares should be either public or shared with at least one group"
msgstr "Pjesët duhet të jenë ose publike, ose të ndara me të paktën një grup"
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr "Shtoni pjesë"
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr "Aktualisht s’ka pjesë të formësuar."
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr "Shteg Disku"
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr "Ndarë Përmes"
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr "Me Grupe"
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr "hyrje publike"
@@ -6324,7 +6307,7 @@ msgstr ""
"plinth/sys/backups\">kopjeruajtjet, ngaqë mund të rikthehen vetëm në të "
"njëjtën pjesë. "
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr "Depozito Fotografime"
@@ -6427,7 +6410,7 @@ msgstr "Datë"
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr "Fshi Fotografime"
@@ -6481,54 +6464,54 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr "Prapaktheje te Fotografimi #%(number)s"
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr "krijuar dorazi"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr "rrjedhë kohore"
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr "apt"
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr "Administroni Fotografime"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr "U krijua fotografim."
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr "U përditësua formësim për depozitim fotografimesh"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Gabim veprimi: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr "U fshinë fotografimet e përzgjedhur"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
"Fotografimi është aktualisht në përdorim. Ju lutemi, riprovoni më vonë."
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "U kthye prapa te fotografimi #{number}."
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr "Që të plotësohet prapakthimi, duhet rinisur sistemi."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr "Prapaktheje te Fotografim"
@@ -6544,7 +6527,7 @@ msgstr ""
"një kompjuter i largët i autorizuar mund të kryejë punë administrimi, të "
"kopjojë kartela ose të xhirojë shërbime të tjera."
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr "Shërbyes Shelli të Sigurt (SSH)"
@@ -6590,7 +6573,7 @@ msgstr "Mirëfilltësimi SSH me fjalëkalim u çaktivizua."
msgid "SSH authentication with password enabled."
msgstr "Mirëfilltësimi SSH me fjalëkalim u aktivizua."
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr "Hyrje Njëshe"
@@ -6614,107 +6597,107 @@ msgstr ""
"përdorim, të montoni dhe çmontoni media të heqshme, të zgjeroni pjesën "
"rrënjë, etj."
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr "Depozitë"
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} bajte"
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr "Veprimi dështoi."
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr "Veprimi u anulua."
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr "Pajisja po çmontohet tashmë."
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
"Veprimi nuk mbulohet, për shkak se mungon mbulimi për përudhësin/mjetin."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr "Veprimit i mbaroi koha."
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr "Veprimi do të zgjonte një disk që është në gjendjen “deep-sleep”."
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr "Po përpiqet të çmontohet një pajisje që është e zënë."
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr "Veprimi është anuluar tashmë."
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr "I paautorizuar për kryerjen e veprimit të kërkuar."
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr "Pajisja është e çmontuar tashmë."
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr "Pajisja s’është e montuar."
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr "S’i lejohet të përdorë mundësinë e kërkuar."
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr "Pajisja është montuar nga tjetër përdorues."
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
"Hapësirë e ulët në pjesë sistemi: {percent_used}% të përdorura, {free_space} "
"të lira."
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr "Hapësirë disku e pamjaftueshme"
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr "Shumë afër dështimi disku"
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6869,16 +6852,16 @@ msgstr ""
"Ndërfaqja web te {box_name} është e përdorshme vetëm nga përdorues që i "
"përkasin grupit “përgjegjës”, ose atij “syncthing-access”."
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr "Administroni aplikacionin Syncthing"
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr "Syncthing"
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr "Njëkohësim Kartelash"
@@ -6904,40 +6887,40 @@ msgid ""
"TCP port 9050."
msgstr "Një portë SOCKS Tor-i në %(box_name)s tuaj gjendet në portën TCP 9050."
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr "Tor"
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr "Shërbim Onion Tor"
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr "Ndërmjetës SOCKS Tor"
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr "Rele Ure Tor"
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr "Portë releje Tor e gatshme"
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr "U regjistruar transport Obfs3"
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr "U regjistruar transport Obfs3"
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr "URL hyrjesh {url} në tcp{kind} përmes Tor-i"
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Ripohoni përdorim Tor-i te {url} në tcp{kind}"
@@ -7067,7 +7050,7 @@ msgstr "Shërbim Onion"
msgid "Ports"
msgstr "Porta"
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "Rregullim i pandryshuar"
@@ -7120,7 +7103,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr "Transmission"
@@ -7156,11 +7139,11 @@ msgstr ""
"dekstop, përdorni URL /tt-rss-app për t’u "
"lidhur."
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr "Tiny Tiny RSS"
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr "Lexues Prurjesh Lajmesh"
@@ -7187,22 +7170,22 @@ msgstr ""
"rinisja e sistemit shihet si e domosdoshme, bëhet automatikisht më 02:00, "
"duke bërë që krejt aplikacionet të jenë jashtë funksionimi për ca çaste."
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr "Përditësim Software-i"
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr "FreedomBox-i u Përditësua"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr "S’u fillua dot përditësim shpërndarjeje"
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
@@ -7213,11 +7196,11 @@ msgstr ""
"Përditësimi i shpërndarjes do të riprovohet pas 24 orësh, nëse kjo është "
"aktivizuar."
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr "Përditësimi i shpërndarjes filloi"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -7312,6 +7295,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr "Hidhe tej"
@@ -7441,15 +7425,15 @@ msgstr ""
"vetëm përdoruesit e grupit përgjegjës mund të ndryshojnë "
"aplikacionet, apo rregullimet e sistemit."
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr "Përdorues dhe Grupe"
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr "Hyrje te krejt shërbimet dhe rregullime të sistemit"
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Kontrolloni zërin LDAP \"{search_item}\""
@@ -8085,12 +8069,12 @@ msgstr ""
"ose tema shtesë mund të instalohet dhe përmirësohen duke e marrë ju përsipër "
"rrezikun."
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr "WordPress"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr "Sajt dhe Blog"
@@ -8140,11 +8124,11 @@ msgstr ""
"Zoph. Për përdorues të tjerë, llogaritë mund të krijohen si në {box_name}, "
"ashtu edhe në Zoph, me të njëjtin emër përdoruesi."
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr "Zoph"
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr "Sistemues Fotografish"
@@ -8182,38 +8166,110 @@ msgstr "PPPoE"
msgid "Generic"
msgstr "Elementar"
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Gabim në caktim strehëemri: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
"Paketa {package_name} gjendet nën versionin më të ri ({latest_version})"
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr "Gabim gjatë instalimit"
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr "po instalohet"
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr "po shkarkohet"
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr "ndryshim media"
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr "kartelë formësimi: {file}"
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "Instaloni Aplikacione"
+
+#: plinth/setup.py:46
+#, fuzzy
+#| msgid "Updating..."
+msgid "Updating app"
+msgstr "Po përditësohet…"
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Gabim në instalimin e aplikacionit: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Gabim në instalimin e aplikacionit: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Gabim në instalimin e aplikacionit: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Gabim në instalimin e aplikacionit: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Aplikacioni u instalua."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "Përditësimi i fundit më"
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 E ndaluar"
@@ -8533,6 +8589,10 @@ msgstr "Nga Porta Rrugëzuesi/WAN-i"
msgid "To %(box_name)s Ports"
msgstr "Te Porta të %(box_name)s"
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Aplikacioni u instalua."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr "Të instalohet aplikacionin?"
@@ -8542,22 +8602,14 @@ msgid "This application needs an update. Update now?"
msgstr "Ky aplikacion lyp një përditësim. Të përditësohet tani?"
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-"Po xhirohet tashmë një tjetër instalim ose përmirësim. Ju lutemi, pritni pak "
-"çaste, përpara se të riprovoni."
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr "Ky aplikacion aktualisht s’mund të kihet në shpërndarjen tuaj."
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr "Rikontrollo"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
@@ -8567,36 +8619,43 @@ msgstr ""
"kanë përplasje me instalimin e këtij aplikacioni. Paketa vijuese do të "
"hiqen, nëse vazhdoni më tej:"
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr "Instaloje"
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr "Përditësoje"
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr "Po kryhet veprim para-instalimi"
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr "Po kryhet veprim pas-instalimi"
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr "Po instalohet %(package_names)s: %(status)s"
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "%(percentage)s%% e plotësuar"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr "Gujaratase"
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "Po përdoret DNSSEC në IPv{kind}"
+
+#~ msgid ""
+#~ "Another installation or upgrade is already running. Please wait for a few "
+#~ "moments before trying again."
+#~ msgstr ""
+#~ "Po xhirohet tashmë një tjetër instalim ose përmirësim. Ju lutemi, pritni "
+#~ "pak çaste, përpara se të riprovoni."
+
+#~ msgid "Performing pre-install operation"
+#~ msgstr "Po kryhet veprim para-instalimi"
+
+#~ msgid "Performing post-install operation"
+#~ msgstr "Po kryhet veprim pas-instalimi"
+
+#, python-format
+#~ msgid "Installing %(package_names)s: %(status)s"
+#~ msgstr "Po instalohet %(package_names)s: %(status)s"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "%(percentage)s%% e plotësuar"
+
#~ 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."
diff --git a/plinth/locale/sr/LC_MESSAGES/django.po b/plinth/locale/sr/LC_MESSAGES/django.po
index 682577ab0..0adcead0a 100644
--- a/plinth/locale/sr/LC_MESSAGES/django.po
+++ b/plinth/locale/sr/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2021-01-18 12:32+0000\n"
"Last-Translator: ikmaak \n"
"Language-Team: Serbian korisnik na {box_name} koja "
"pripada admin grupi."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Kokpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "Administracija Servera"
@@ -1173,18 +1159,18 @@ msgid ""
"name, webserver home page etc."
msgstr ""
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr ""
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr ""
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1336,11 +1322,11 @@ msgid ""
"be configured with the details provided here."
msgstr ""
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr ""
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr ""
@@ -1362,11 +1348,11 @@ msgid ""
"synchronization with servers on the Internet."
msgstr ""
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr ""
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr ""
@@ -1403,17 +1389,17 @@ msgid ""
"immediately after enabling this service."
msgstr ""
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr ""
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr ""
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr ""
@@ -1431,56 +1417,56 @@ msgid ""
"confirm that applications and services are working as expected."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr ""
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr ""
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
"{memory_available_unit} free. {advice_message}"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr ""
@@ -1558,11 +1544,11 @@ msgid ""
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr ""
@@ -1672,9 +1658,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1756,12 +1744,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr ""
@@ -1856,7 +1844,7 @@ msgstr ""
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1901,21 +1889,21 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
#, fuzzy
#| msgid "Domain Name Server"
msgid "Email Server"
msgstr "Domain Name Server"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr ""
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr ""
@@ -1949,7 +1937,7 @@ msgstr ""
msgid "Aliases"
msgstr ""
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr ""
@@ -2032,7 +2020,7 @@ msgid ""
"configured reduces risk of security threat from the Internet."
msgstr ""
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr ""
@@ -2169,15 +2157,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2273,54 +2261,54 @@ msgstr ""
msgid "Delete this repository permanently?"
msgstr ""
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr ""
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr ""
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr ""
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr ""
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
@@ -2598,19 +2586,19 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr ""
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr ""
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr ""
@@ -2663,15 +2651,15 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr ""
@@ -2725,32 +2713,32 @@ msgid ""
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
@@ -2767,11 +2755,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr ""
@@ -2803,11 +2791,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -2827,11 +2815,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr ""
@@ -2853,15 +2841,15 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -2924,36 +2912,36 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, 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:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
@@ -2975,7 +2963,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr ""
@@ -3079,12 +3067,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3147,41 +3135,41 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Domain Name Server"
msgid "Domain name updated"
msgstr "Domain Name Server"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
#, fuzzy
#| msgid "Domain Name Server"
msgid "Site name updated"
@@ -3196,11 +3184,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr ""
@@ -3245,7 +3233,7 @@ msgstr ""
msgid "Address"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3256,15 +3244,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3317,11 +3305,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr ""
@@ -3363,15 +3351,15 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr ""
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3384,7 +3372,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr ""
@@ -3406,27 +3394,22 @@ msgstr ""
msgid "Services"
msgstr "Služi"
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr ""
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr ""
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
@@ -3903,7 +3886,7 @@ msgid "This connection is not active."
msgstr ""
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr ""
@@ -3946,7 +3929,7 @@ msgid "Create Connection"
msgstr ""
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr ""
@@ -3966,13 +3949,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr ""
@@ -3993,7 +3976,7 @@ msgid "Computer"
msgstr ""
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr ""
@@ -4003,13 +3986,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr ""
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
@@ -4192,253 +4175,253 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr ""
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr ""
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr ""
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr ""
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr ""
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr ""
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr ""
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr ""
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr ""
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr ""
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
#, fuzzy
#| msgid "Configuration updated"
msgid "configuration failed"
msgstr "Konfiguracija sačuvana"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr ""
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
#, fuzzy
#| msgid "Connection refused"
msgid "shared connection service failed"
msgstr "Veza odbijena"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr ""
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
#, fuzzy
#| msgid "Repository not found"
msgid "Wi-Fi network not found"
msgstr "Repozitorijum nije pronađen"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr ""
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
#, fuzzy
#| msgid "Access"
msgid "access point"
msgstr "Pristup"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr ""
@@ -4453,20 +4436,20 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4574,15 +4557,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr ""
@@ -4688,36 +4671,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -4734,7 +4717,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr ""
@@ -4742,7 +4725,7 @@ msgstr ""
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr ""
@@ -4813,15 +4796,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -4845,11 +4828,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr ""
@@ -4874,12 +4857,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -4971,7 +4954,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr ""
@@ -5012,16 +4995,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5056,15 +5039,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr ""
@@ -5186,15 +5169,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr ""
@@ -5275,7 +5258,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr ""
@@ -5340,12 +5323,12 @@ msgstr ""
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr ""
@@ -5359,11 +5342,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5393,11 +5376,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5426,14 +5409,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr ""
@@ -5481,28 +5464,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -5548,7 +5531,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr ""
@@ -5642,7 +5625,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr ""
@@ -5690,55 +5673,55 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
#, fuzzy
#| msgid "Archive created."
msgid "manually created"
msgstr "Arhiva kreirana."
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -5750,7 +5733,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -5791,7 +5774,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -5811,104 +5794,104 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6042,16 +6025,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -6071,40 +6054,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6210,7 +6193,7 @@ msgstr ""
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr ""
@@ -6261,7 +6244,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr ""
@@ -6291,11 +6274,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6316,33 +6299,33 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6420,6 +6403,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6523,15 +6507,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -7096,12 +7080,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr ""
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr ""
@@ -7136,11 +7120,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7174,37 +7158,102 @@ msgstr ""
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, python-brace-format
+msgid "Error: {name}: {exception_message}"
+msgstr ""
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+msgid "Installing app"
+msgstr ""
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Greška prilikom instaliranja aplikacije: {string}{details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Greška prilikom instaliranja aplikacije: {string}{details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Greška prilikom instaliranja aplikacije: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Greška prilikom instaliranja aplikacije: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Aplikacija instalirana."
+
+#: plinth/setup.py:91
+msgid "App updated"
+msgstr ""
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -7492,6 +7541,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr ""
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Aplikacija instalirana."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr ""
@@ -7501,52 +7554,28 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr ""
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr ""
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr ""
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/sv/LC_MESSAGES/django.po b/plinth/locale/sv/LC_MESSAGES/django.po
index 4bb432ee2..56578c110 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2022-05-27 17:17+0000\n"
"Last-Translator: Michael Breidenbach \n"
"Language-Team: Swedish calibre -gruppen kan komma åt appen. "
"Alla användare med åtkomst kan använda alla bibliotek."
-#: plinth/modules/calibre/__init__.py:57
+#: plinth/modules/calibre/__init__.py:55
msgid "Use calibre e-book libraries"
msgstr "Använd calibre e-bokbibliotek"
-#: plinth/modules/calibre/__init__.py:60 plinth/modules/calibre/manifest.py:6
+#: plinth/modules/calibre/__init__.py:58 plinth/modules/calibre/manifest.py:6
msgid "calibre"
msgstr "calibre"
-#: plinth/modules/calibre/__init__.py:61
+#: plinth/modules/calibre/__init__.py:59
msgid "E-book Library"
msgstr "E-bok Bibliotek"
@@ -1133,20 +1119,20 @@ msgstr "Gå till biblioteket %(library)s"
msgid "Delete library %(library)s"
msgstr "Ta bort bibliotek %(library)s"
-#: plinth/modules/calibre/views.py:39
+#: plinth/modules/calibre/views.py:41
msgid "Library created."
msgstr "Bibliotek skapat."
-#: plinth/modules/calibre/views.py:50
+#: plinth/modules/calibre/views.py:52
msgid "An error occurred while creating the library."
msgstr "Ett fel uppstod när biblioteket skulle skapas."
-#: plinth/modules/calibre/views.py:64 plinth/modules/gitweb/views.py:138
+#: plinth/modules/calibre/views.py:66 plinth/modules/gitweb/views.py:141
#, python-brace-format
msgid "{name} deleted."
msgstr "{name} borttagen."
-#: plinth/modules/calibre/views.py:68 plinth/modules/gitweb/views.py:142
+#: plinth/modules/calibre/views.py:70 plinth/modules/gitweb/views.py:145
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr "Kunde inte ta bort {name}: {error}"
@@ -1185,12 +1171,12 @@ msgstr ""
"Den kan nås genom att alla användar på "
"{box_name} som hör till administratörsgruppen."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Cockpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "Server administrering"
@@ -1202,18 +1188,18 @@ msgstr ""
"Här kan du ställa in några allmänna konfigurationsalternativ som värdnamn, "
"domännamn, webserver, hemsida etc."
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "Allmän Konfiguration"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "Konfigurera"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1389,11 +1375,11 @@ msgstr ""
"\"{ms_url}\">Matrix Synapse eller ejabberd måste "
"konfigureras med de uppgifter som tillhandahålls här."
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "Coturn"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr "VoIP-hjälpare"
@@ -1418,11 +1404,11 @@ msgstr ""
"Network time server är ett program som upprätthåller synkronisering av "
"systemtiden med servrar på Internet."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "Datum och Tid"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "Tid synkroniserad till NTP-server"
@@ -1465,17 +1451,17 @@ msgstr ""
"Standardlösenordet är \"deluge\", men du bör logga in och ändra det "
"omedelbart efter att du har aktiverat den här tjänsten."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "Ladda ner filer med BitTorrent-applikationer"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "Deluge"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "BitTorrent Webbklient"
@@ -1495,49 +1481,49 @@ msgstr ""
"Systemets diagnostiktest utför ett antal kontroller av ditt system för att "
"bekräfta att program och tjänster fungerar som de ska."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "Diagnostik"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr "passerade"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr "misslyckades"
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr "fel"
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr "varning"
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr "MiB"
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr "GiB"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr "Du bör inaktivera vissa appar för att minska minnesanvändningen."
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr "Du bör inte installera några nya appar på det här systemet."
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
@@ -1546,7 +1532,7 @@ msgstr ""
"Systemet är ont om minne: {percent_used}% används, {memory_available}"
"·{memory_available_unit} ledig. {advice_message}"
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr "Låg minne"
@@ -1641,11 +1627,11 @@ msgstr ""
"baserade tjänster på freedns.afraid.org."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "Klient för Dynamisk DNS"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr "Dynamiskt Domännamn"
@@ -1771,9 +1757,11 @@ msgid "This field is required."
msgstr "Detta fält krävs."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1858,12 +1846,12 @@ msgstr ""
"ejabberd behöver en STUN/TURN-server för ljud-/videosamtal. Installera appen "
"Coturn eller konfigurera en extern server."
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "ejabbert"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "Chat-Server"
@@ -1972,7 +1960,7 @@ msgstr "Dino"
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2032,19 +2020,19 @@ msgid ""
msgstr ""
"Under installationen avinstalleras alla andra e-postservrar i systemet."
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr "Postfix/Dovecot"
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr "E-postserver"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr "Mina E-postalias"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr "Hantera alias för Brevlåda"
@@ -2080,7 +2068,7 @@ msgstr "Kan inte vara ett nummer"
msgid "Aliases"
msgstr "Aliasnamn"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr "Roundcube"
@@ -2166,7 +2154,7 @@ msgstr ""
"nätverkstrafiken på din {box_name}. Att ha en brandvägg aktiverad och "
"korrekt konfigurerad minskar risken för säkerhetshot från Internet."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "Brandvägg"
@@ -2326,15 +2314,15 @@ msgstr ""
"För att lära dig mer om hur du använder Git besökGit handledning."
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr "Läs-skrivåtkomst till Git-respositories"
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr "Gitweb"
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr "Enkelt Git hosting"
@@ -2431,54 +2419,54 @@ msgstr "Ta bort Git-respository %(name)s"
msgid "Delete this repository permanently?"
msgstr "Radera detta arkiv permanent?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr "Respository skapat."
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr "Ett fel uppstod medan skapa ett repository."
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr "Respository redigerad."
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr "Redigera respository"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "Dokumentation"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr "Handbok"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr "Få support"
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr "Skicka feedback"
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "Bidrar"
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Om"
@@ -2832,19 +2820,19 @@ msgstr ""
"Det första besöket i det medföljande webbgränssnittet kommer att initiera "
"konfigurationsprocessen."
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr "Hantera I2P appen"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr "I2P"
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr "Anonymitetsnätverk"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr "I2P proxy"
@@ -2912,15 +2900,15 @@ msgstr ""
"redigera befindliga. I Användarkonfiguration"
"a> kan du ändra dessa behörigheter eller lägga till nya användare."
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr "Ikiwiki"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr "Wiki och Blogg"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr "Visa och redigera wiki-applikationer"
@@ -2976,32 +2964,32 @@ msgstr ""
"Den här åtgärden tar bort alla inlägg, sidor och kommentarer, även "
"versionshistorik. Ta bort denna wiki eller blogg permanent?"
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "Skapade wiki {name}."
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "Kunde inte skapa wiki: {error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "Blogg skapad {name}."
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "Kunde inte skapa blogg: {error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr "{title} borttagen."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr "Kunde inte ta bort {title}: {error}"
@@ -3021,11 +3009,11 @@ msgstr ""
", desktop client och installera det. Starta sedan Gobby och välj "
"\"Anslut till server\" och ange ditt {box_name} domännamn."
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr "Infinoted"
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr "Gobby-Server"
@@ -3059,11 +3047,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -3085,11 +3073,11 @@ msgstr ""
"JSXC är en webbklient för XMPP. Vanligtvis används den med en XMPP-server "
"som körs lokalt."
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr "JSXC"
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr "Chat klient"
@@ -3120,15 +3108,15 @@ msgstr ""
"Läs igenom och acceptera Let's Encrypt användaravtal innan du använder denna tjänst."
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr "Låt oss kryptera"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "Certifikaterna"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr "Kan inte testa: Inga domäner är konfigurerade."
@@ -3193,7 +3181,7 @@ msgstr ""
"Inga domäner har konfigurerats. Konfigurera "
"domäner för att kunna få certifikat för dem."
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
@@ -3202,29 +3190,29 @@ msgstr ""
"Certifikatet återkallat för domänen {domain}. Det kan ta några ögonblick att "
"träda i kraft."
-#: plinth/modules/letsencrypt/views.py:47
+#: plinth/modules/letsencrypt/views.py:49
#, python-brace-format
msgid "Failed to revoke certificate for domain {domain}: {error}"
msgstr "Det gick inte att återkalla certifikatet för domänen {domain}: {error}"
-#: plinth/modules/letsencrypt/views.py:60
-#: plinth/modules/letsencrypt/views.py:77
+#: plinth/modules/letsencrypt/views.py:62
+#: plinth/modules/letsencrypt/views.py:79
#, python-brace-format
msgid "Certificate successfully obtained for domain {domain}"
msgstr "Certifikat erhållet för domänen {domain}"
-#: plinth/modules/letsencrypt/views.py:65
-#: plinth/modules/letsencrypt/views.py:82
+#: plinth/modules/letsencrypt/views.py:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr "Det gick inte att erhålla certifikat för domänen {domain}: {error}"
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr "Certifikatet framgångsrikt återkallat för domänen {domain}"
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr "Det gick inte att ta bort certifikatet för domänen {domain}: {error}"
@@ -3255,7 +3243,7 @@ msgstr ""
"Matrix Synapse behöver en STUN/TURN-server för ljud-/videosamtal. Installera "
"Coturn-appen eller konfigurera en extern server."
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr "Matrix Synapse"
@@ -3394,12 +3382,12 @@ msgstr ""
"Alla som har en länk till denna wiki kan läsa den. Endast användare som är "
"inloggade kan göra ändringar i innehållet."
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr "MediaWiki"
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr "Wiki"
@@ -3476,39 +3464,39 @@ msgstr ""
"Välj ett standardskal för din MediaWiki-installation. Användare har "
"möjlighet att välja önskad utseendet."
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "Lösenord uppdaterad"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr "Lösenordsuppdateringen misslyckades. Välj ett starkare lösenord"
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr "Offentliga registreringar aktiverade"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr "Offentliga registreringar avaktiverad"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr "Privat läge aktiverat"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr "Privat läge inaktiverat"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr "Standardskal ändrat"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr "Domännamnet uppdaterat"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
#, fuzzy
#| msgid "Domain name updated"
msgid "Site name updated"
@@ -3527,11 +3515,11 @@ msgstr ""
"(30000). För att ansluta till servern, en Minetest klient behövs."
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr "Minetest"
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr "Block sandbox"
@@ -3581,7 +3569,7 @@ msgstr "Om inaktiverat kan spelare inte dö eller få skador av något slag."
msgid "Address"
msgstr "Adress"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3598,15 +3586,15 @@ msgstr ""
"certifiering som bärbara mediaspelare, smartphones, TV-apparater och "
"spelsystem (såsom PS3 och Xbox 360) eller applikationer som totem och Kodi."
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr "Media Streaming Server"
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr "MiniDLNA"
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr "Enkel mediaserver"
@@ -3669,11 +3657,11 @@ msgstr ""
"\"http://mumble.info\"> Appar finns för att ansluta till Mumble från din "
"dator- och Android-enheter."
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr "Mumble"
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr "Röstchatt"
@@ -3724,17 +3712,17 @@ msgstr "Mumblefly"
msgid "Mumla"
msgstr "Mumla"
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr "SuperUser lösenord har uppdaterats."
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
#, fuzzy
#| msgid "Upload password updated"
msgid "Join password changed"
msgstr "Ladda upp lösenordet uppdaterat"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3751,7 +3739,7 @@ msgstr ""
"typ av namn visas om HTTP-, HTTPS-och SSH-tjänsterna är aktiverade eller "
"inaktiverade för inkommande anslutningar via det angivna namnet."
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "Namntjänster"
@@ -3771,7 +3759,7 @@ msgstr "Secure Shell"
msgid "Services"
msgstr "Tjänster"
-#: plinth/modules/networks/__init__.py:36
+#: 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."
@@ -3779,7 +3767,7 @@ msgstr ""
"Konfigurera nätverksenheter. Anslut till Internet via Ethernet, Wi-Fi eller "
"PPPoE. Dela den anslutningen med andra enheter i nätverket."
-#: plinth/modules/networks/__init__.py:38
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
@@ -3787,15 +3775,10 @@ msgstr ""
"Enheter som administreras via andra metoder kanske inte är tillgängliga för "
"konfiguration här."
-#: plinth/modules/networks/__init__.py:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "Nätverk"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "Använder DNSSEC på IPv{kind}"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "Anslutningstyp"
@@ -4359,7 +4342,7 @@ msgid "This connection is not active."
msgstr "Den här anslutningen är inte aktiv."
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "Säkerhet"
@@ -4411,7 +4394,7 @@ msgid "Create Connection"
msgstr "Skapa anslutning"
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "Ta Bort Anslutning"
@@ -4431,13 +4414,13 @@ msgstr "Avstånd"
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "Ethernet"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "Wi-Fi"
@@ -4458,7 +4441,7 @@ msgid "Computer"
msgstr "Dator"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "Redigera Anslutning"
@@ -4468,13 +4451,13 @@ msgstr "Anslutningar"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "Wi-Fi-nätverk i närheten"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "Lägg till Anslutning"
@@ -4696,247 +4679,247 @@ 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/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr "inaktiverad"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr "automatisk"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr "manual"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr "delad"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr "länk-lokal"
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr "okänd"
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr "ohanterad"
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr "otillgängligt"
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr "ifrånkopplat"
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr "förbereder"
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr "ansluter"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr "behöver autentisering"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr "begära adress"
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr "kontrallera"
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr "väntar på sekundär"
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr "aktiverat"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr "avaktivera"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr "ingen anledning"
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr "okänd fel"
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr "enheten hanteras nu"
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr "enheten är nu ohanterad"
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr "konfigurationen misslyckades"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr "hemligheter krävs"
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr "DHCP-klienten kunde inte startas"
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr "DHCP-klientfel"
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr "DHCP-klienten misslyckades"
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr "delad anslutningstjänst kunde inte startas"
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr "tjänsten delad anslutning misslyckades"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr "enheten togs bort"
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr "enheten frånkopplad av användare"
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr "ett beroende av anslutningen misslyckades"
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr "Wi-Fi-nätverket hittades inte"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr "en sekundär anslutning misslyckades"
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr "ny anslutningsaktivering inleddes"
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr "en duplicerad IP-adress upptäcktes"
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr "vald IP-metod stöds inte"
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr "generisk"
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr "TUN- eller TAP-gränssnitt"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr "WireGuard"
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr "ad-hoc-"
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr "infrastruktur"
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr "åtkomstpunkt"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr "mesh point"
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "Nätverksanslutningar"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr "Kan inte visa anslutning: Ingen anslutning hittades."
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr "Anslutningsinformation"
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "Kan inte redigera anslutning: Ingen anslutning hittades."
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr "Denna typ av anslutning är inte förstådd ännu."
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr "Aktiverad anslutning {name}."
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr "Det gick inte att aktivera anslutning: Ingen anslutning hittades."
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, 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/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "Inaktiverade anslutning {name}."
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr "Kunde inte de-aktivera anslutning: Anslutning hittades inte."
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr "Lägga till ny generiska anslutning"
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "Lägg Till Ny Ethernet-Anslutning"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "Lägg Till Ny PPPoE-Anslutning"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "Lägg Till Ny Wi-Fi-Anslutning"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "Anslutning {name} borttagen."
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr "Det gick inte att ta bort anslutning: Anslutning hittades inte."
@@ -4957,20 +4940,20 @@ 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:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr "Ansluta till VPN-tjänster"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr "OpenVPN"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr "Virtuellt privat nätverk"
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -5109,15 +5092,15 @@ 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:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr "PageKite"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr "Offentlig Synlighet"
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr "PageKite domän"
@@ -5230,33 +5213,33 @@ msgstr ""
"de protokoll/port kombinationer som du kan definiera här. Till exempel, "
"HTTPS på andra portar än 443 är kända för att orsaka problem."
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr "Webb server (HTTP)"
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
"Webbplatsen kommer att finnas tillgänglig på http://"
"{0}"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr "Webb server (HTTPS)"
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
"Webbplatsen kommer att finnas tillgänglig på https://"
"{0} "
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr "Secure Shell (SSH)"
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
@@ -5265,7 +5248,7 @@ msgstr ""
"SshoverPageKite/\">instruktioner"
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr "Prestanda"
@@ -5288,7 +5271,7 @@ msgstr ""
"Prestandamätvärden samlas in av Performance Co-Pilot och kan visas med "
"Cockpit-appen."
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr "Systemövervakning"
@@ -5296,7 +5279,7 @@ msgstr "Systemövervakning"
msgid "Restart or shut down the system."
msgstr "Starta om eller stänga av systemet."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "Ström"
@@ -5391,15 +5374,15 @@ msgstr ""
"\"http://config.privoxy.org\">http://config.privoxy.org/ eller http://p.p."
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr "Privoxy"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr "Webbproxy"
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr "Anslut till {url} med proxy {proxy} på TCP {kind}"
@@ -5433,11 +5416,11 @@ msgstr ""
"downloads\" >Desktop och mobila-enheter är tillgängliga."
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr "IRC-klient"
@@ -5470,12 +5453,12 @@ msgstr ""
"skapandet av nya kalendrar och adressböcker. Det stöder inte att lägga till "
"händelser eller kontakter, som måste göras med hjälp av en separat klient."
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr "Radicale"
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr "Kalender och adressbok"
@@ -5594,7 +5577,7 @@ msgstr ""
"security/lesssecureapps\" >https://www.Google.com/settings/Security/"
"lesssecureapps)."
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr "E-postklient"
@@ -5638,16 +5621,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr "Läsa och prenumerera på nyhetsflöden"
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5692,15 +5675,15 @@ msgstr ""
"Hemdelning - varje användare i gruppen freedombox-share kan ha sitt eget "
"privata utrymme."
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr "Tillgång till privata delningar"
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr "Samba"
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr "Nätverk För Fillagring"
@@ -5832,15 +5815,15 @@ 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:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr "Sök på webben"
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr "Searx"
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr "Webbsökning"
@@ -5934,7 +5917,7 @@ msgstr ""
"%(box_name)s community."
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr "Säkerhetsrapport"
@@ -6011,12 +5994,12 @@ msgstr "Nej"
msgid "Not running"
msgstr "Körs inte"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Fel vid inställning av begränsad åtkomst: {exception}"
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr "Uppdaterad säkerhetskonfiguration"
@@ -6032,11 +6015,11 @@ msgstr ""
"Observera att Shaarli endast stöd för ett enskilt användarkonto, som du "
"behöver för att ställa den första besök."
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "Shaarli"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr "Bokmärken"
@@ -6075,11 +6058,11 @@ 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/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr "Shadowsocks"
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr "Socks5 proxy"
@@ -6109,7 +6092,7 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr "Krypteringsmetod. Måste matcha inställningen på servern."
-#: plinth/modules/sharing/__init__.py:20
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -6118,7 +6101,7 @@ msgstr ""
"Med Sharing kan du dela filer och mappar på din {box_name} över webben med "
"utvalda grupper av användare."
-#: plinth/modules/sharing/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr "Sharing"
@@ -6170,28 +6153,28 @@ msgstr "Det finns redan en share med det här namnet."
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:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr "Lägg till share"
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr "Inga shares har konfigurerats."
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr "Disk Sök väg"
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr "Delas över"
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr "Med grupper"
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr "Publik tillgång"
@@ -6247,7 +6230,7 @@ msgstr ""
"\"/plinth/sys/backups\">säkerhetskopior eftersom de bara kan lagras på "
"samma partition. "
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr "Ögonblicksbilder av lagring"
@@ -6350,7 +6333,7 @@ msgstr "Datum"
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr "Ta bort ögonblicksbilder"
@@ -6404,53 +6387,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr "Återställning till ögonblicksbild #%(number)s"
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr "manuellt skapad"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr "Tidslinjen"
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr "apt"
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr "Hantera ögonblicksbilder"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr "Skapade ögonblicksbild."
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr "Lagring ögonblicksbildkonfiguration uppdaterad"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Åtgärdsfel: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr "Borttagna markerade ögonblicksbilder"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
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:211
#, 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:214
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:226
msgid "Rollback to Snapshot"
msgstr "Återställning till ögonblicksbild"
@@ -6466,7 +6449,7 @@ msgstr ""
"administrativa uppgifter, kopiera filer eller köra andra tjänster med sådana "
"anslutningar."
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr "Secure Shell-Server (SSH)"
@@ -6512,7 +6495,7 @@ msgstr "SSH-autentisering med lösenord inaktiverat."
msgid "SSH authentication with password enabled."
msgstr "SSH-autentisering med lösenord aktiverat."
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr "Enkel inloggning på"
@@ -6535,106 +6518,106 @@ 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:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr "Lagring"
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} byte"
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} Kib"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} Mib"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} Gib"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} Tib"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr "Åtgärden misslyckades."
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr "Operationen avbröts."
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr "Enheten lossnar redan."
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
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:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr "Åtgärden orsakade timeout."
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
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:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr "Försöker avmontera en enhet som är upptagen."
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr "Operationen har redan avbrutits."
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
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:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr "Enheten är redan monterad."
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr "Enheten är inte monterad."
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr "Inte tillåtet att använda det begärda alternativet."
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr "Enheten monteras av en annan användare."
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, 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:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr "Lågt diskutrymme"
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr "Diskfel förestående"
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6789,16 +6772,16 @@ msgstr ""
"{box_name} är endast tillgängligt för användare som tillhör gruppen \"admin"
"\" eller \"syncthing-access\"."
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr "Administrera Syncthing-program"
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr "Syncthing"
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr "Filsynkronisering"
@@ -6825,40 +6808,40 @@ msgstr ""
"En Tor SOCKS-port finns tillgängligt på din {box_name} för interna nätverk "
"på TCP-port 9050."
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr "Tor"
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr "Tor Onion service"
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr "Tor SOCKS-proxy"
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr "Tor Bridge Relay"
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr "Tor relä port tillgänglig"
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr "Obfs3 transport registrerad"
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr "Obfs4 transport registrerad"
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, 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:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Bekräfta Tor-användning vid {url} på TCP {kind}"
@@ -6986,7 +6969,7 @@ msgstr "Onion tjänst"
msgid "Ports"
msgstr "Portar"
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "Instänllningar oförändrade"
@@ -7044,7 +7027,7 @@ msgstr ""
"När en nedladdning har slutförts kan du också komma åt dina filer med hjälp "
"av Sharing appen."
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr "Transmission"
@@ -7076,11 +7059,11 @@ msgstr ""
"När du använder en mobil eller stationär applikation för Tiny Tiny RSS, "
"Använd URL/tt-rss-app/\" för att ansluta."
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr "Tiny Tiny RSS"
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr "Läsare för nyhetsflödet"
@@ -7107,22 +7090,22 @@ msgstr ""
"systemet bedöms vara nödvändigt, det sker automatiskt vid 02:00 orsakar alla "
"apps för att vara tillgängligt en kort stund."
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr "Mjukvaruuppdatering"
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr "FreedomBox uppdaterad"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr "Det gick inte att starta distributionsuppdatering"
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
@@ -7133,11 +7116,11 @@ msgstr ""
"Distributionsuppdateringen kommer att göras ett nytt behov efter 24 timmar, "
"om det är aktiverat."
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr "Distributionsuppdateringen har startats"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -7231,6 +7214,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr "Avfärda"
@@ -7351,15 +7335,15 @@ 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:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr "Användare och grupper"
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr "Tillgång till alla tjänster och systeminställningar"
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Kontrollera LDAP-posten \"{search_item}\""
@@ -7993,12 +7977,12 @@ msgstr ""
"databasuppgradering från administratörsgränssnittet. Ytterligare plugins "
"eller teman kan installeras och uppgraderas på egen risk."
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr "WordPress"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr "Webbplats och blogg"
@@ -8047,11 +8031,11 @@ msgstr ""
"i Zoph. För ytterligare användare måste konton skapas både i {box_name} och "
"i Zoph med samma användarnamn."
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr "Zoph"
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr "Foto Organizer"
@@ -8089,37 +8073,110 @@ msgstr "Pppoe"
msgid "Generic"
msgstr "Generiska"
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Fel inställning av värdnamn: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, fuzzy, python-brace-format
+#| msgid "Service disabled: {name}"
+msgid "Finished: {name}"
+msgstr "Tjänsten är inaktiverad: {name}"
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr "Paket {expression} är inte tillgänglig för installation"
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr "Paketet {package_name} är den senaste versionen ({latest_version})"
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr "Fel vid installation"
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr "Installera"
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr "ladda ner"
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr "Mediabyte"
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr "konfigurationsfil: {file}"
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "Installera appar"
+
+#: plinth/setup.py:46
+#, fuzzy
+#| msgid "Updating..."
+msgid "Updating app"
+msgstr "Uppdatera..."
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Installation misslyckades: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Installation misslyckades: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Installationen misslyckades: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Installationen misslyckades: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Applikation installerad."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "Senaste uppdatering"
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 förbjuden"
@@ -8439,6 +8496,10 @@ msgstr "Från Router/WAN-portar"
msgid "To %(box_name)s Ports"
msgstr "Till %(box_name)s Portar"
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Applikation installerad."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr "Installera den här applikationen?"
@@ -8448,22 +8509,14 @@ msgid "This application needs an update. Update now?"
msgstr "Det här programmet behöver uppdateras. Uppdatera nu?"
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-"En annan installation eller uppgradering körs redan. Vänta en stund innan du "
-"försöker igen."
-
-#: plinth/templates/setup.html:46
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:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr "Kontrollera igen"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
@@ -8473,36 +8526,43 @@ msgstr ""
"systemet är i konflikt med installationen av den här appen. Följande paket "
"tas bort om du fortsätter:"
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr "Installera"
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr "Uppdatera"
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr "Utföra för installationsåtgärd"
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr "Utföra åtgärder efter installationen"
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr "Installerar %(package_names)s:%(status)s"
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "%(percentage)s %% färdigt"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr "Gujarati"
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "Använder DNSSEC på IPv{kind}"
+
+#~ msgid ""
+#~ "Another installation or upgrade is already running. Please wait for a few "
+#~ "moments before trying again."
+#~ msgstr ""
+#~ "En annan installation eller uppgradering körs redan. Vänta en stund innan "
+#~ "du försöker igen."
+
+#~ msgid "Performing pre-install operation"
+#~ msgstr "Utföra för installationsåtgärd"
+
+#~ msgid "Performing post-install operation"
+#~ msgstr "Utföra åtgärder efter installationen"
+
+#, python-format
+#~ msgid "Installing %(package_names)s: %(status)s"
+#~ msgstr "Installerar %(package_names)s:%(status)s"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "%(percentage)s %% färdigt"
+
#~ 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."
@@ -9508,9 +9568,6 @@ msgstr "Gujarati"
#~ msgid "Service enabled: {name}"
#~ msgstr "Tjänsten är aktiverad: {name}"
-#~ msgid "Service disabled: {name}"
-#~ msgstr "Tjänsten är inaktiverad: {name}"
-
#~ msgid "PageKite Account"
#~ msgstr "PageKite-konto"
diff --git a/plinth/locale/ta/LC_MESSAGES/django.po b/plinth/locale/ta/LC_MESSAGES/django.po
index d8e784694..1469d6a2d 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME \n"
"Language-Team: LANGUAGE \n"
@@ -22,7 +22,7 @@ msgstr ""
msgid "Page source"
msgstr ""
-#: plinth/context_processors.py:23 plinth/views.py:84
+#: plinth/context_processors.py:23 plinth/views.py:82
msgid "FreedomBox"
msgstr ""
@@ -85,29 +85,15 @@ msgstr ""
msgid "Use the language preference set in the browser"
msgstr ""
-#: plinth/middleware.py:38 plinth/templates/setup.html:18
-msgid "Application installed."
-msgstr ""
-
-#: plinth/middleware.py:43
-#, python-brace-format
-msgid "Error installing application: {string} {details}"
-msgstr ""
-
-#: plinth/middleware.py:47
-#, python-brace-format
-msgid "Error installing application: {error}"
-msgstr ""
-
-#: plinth/modules/apache/__init__.py:33
+#: plinth/modules/apache/__init__.py:31
msgid "Apache HTTP Server"
msgstr ""
-#: plinth/modules/apache/__init__.py:41
+#: plinth/modules/apache/__init__.py:39
msgid "Web Server"
msgstr ""
-#: plinth/modules/apache/__init__.py:47
+#: plinth/modules/apache/__init__.py:45
#, python-brace-format
msgid "{box_name} Web Interface (Plinth)"
msgstr ""
@@ -133,11 +119,11 @@ msgid ""
"network."
msgstr ""
-#: plinth/modules/avahi/__init__.py:51
+#: plinth/modules/avahi/__init__.py:49
msgid "Service Discovery"
msgstr ""
-#: plinth/modules/avahi/__init__.py:64
+#: plinth/modules/avahi/__init__.py:62
msgid "Local Network Domain"
msgstr ""
@@ -145,36 +131,36 @@ msgstr ""
msgid "Backups allows creating and managing backup archives."
msgstr ""
-#: plinth/modules/backups/__init__.py:50 plinth/modules/backups/__init__.py:202
-#: plinth/modules/backups/__init__.py:247
+#: plinth/modules/backups/__init__.py:48 plinth/modules/backups/__init__.py:199
+#: plinth/modules/backups/__init__.py:244
msgid "Backups"
msgstr ""
-#: plinth/modules/backups/__init__.py:199
+#: plinth/modules/backups/__init__.py:196
msgid ""
"Enable an automatic backup schedule for data safety. Prefer an encrypted "
"remote backup location or an extra attached disk."
msgstr ""
-#: plinth/modules/backups/__init__.py:205
+#: plinth/modules/backups/__init__.py:202
msgid "Enable a Backup Schedule"
msgstr ""
-#: plinth/modules/backups/__init__.py:209
-#: plinth/modules/backups/__init__.py:256
-#: plinth/modules/storage/__init__.py:329
+#: plinth/modules/backups/__init__.py:206
+#: plinth/modules/backups/__init__.py:253
+#: plinth/modules/storage/__init__.py:326
#, python-brace-format
msgid "Go to {app_name}"
msgstr ""
-#: plinth/modules/backups/__init__.py:244
+#: plinth/modules/backups/__init__.py:241
#, python-brace-format
msgid ""
"A scheduled backup failed. Past {error_count} attempts for backup did not "
"succeed. The latest error is: {error_message}"
msgstr ""
-#: plinth/modules/backups/__init__.py:252
+#: plinth/modules/backups/__init__.py:249
msgid "Error During Backup"
msgstr ""
@@ -249,7 +235,7 @@ msgstr ""
#: plinth/modules/ikiwiki/forms.py:15
#: plinth/modules/networks/templates/connection_show.html:71
#: plinth/modules/samba/templates/samba.html:66
-#: plinth/modules/sharing/templates/sharing.html:33
+#: plinth/modules/sharing/templates/sharing.html:32
msgid "Name"
msgstr ""
@@ -406,7 +392,7 @@ msgid "{box_name} storage"
msgstr ""
#: plinth/modules/backups/templates/backups.html:17
-#: plinth/modules/backups/views.py:111
+#: plinth/modules/backups/views.py:112
msgid "Create a new backup"
msgstr ""
@@ -455,7 +441,7 @@ msgid "Create Location"
msgstr ""
#: plinth/modules/backups/templates/backups_add_repository.html:19
-#: plinth/modules/gitweb/views.py:50
+#: plinth/modules/gitweb/views.py:52
msgid "Create Repository"
msgstr ""
@@ -511,7 +497,7 @@ msgstr ""
#: plinth/modules/backups/templates/backups_repository.html:87
#: plinth/modules/backups/templates/backups_restore.html:27
-#: plinth/modules/backups/views.py:206
+#: plinth/modules/backups/views.py:207
msgid "Restore"
msgstr ""
@@ -595,99 +581,99 @@ msgstr ""
msgid "Verify Host"
msgstr ""
-#: plinth/modules/backups/views.py:55
+#: plinth/modules/backups/views.py:56
msgid "Backup schedule updated."
msgstr ""
-#: plinth/modules/backups/views.py:74
+#: plinth/modules/backups/views.py:75
msgid "Schedule Backups"
msgstr ""
-#: plinth/modules/backups/views.py:106
+#: plinth/modules/backups/views.py:107
msgid "Archive created."
msgstr ""
-#: plinth/modules/backups/views.py:134
+#: plinth/modules/backups/views.py:135
msgid "Delete Archive"
msgstr ""
-#: plinth/modules/backups/views.py:146
+#: plinth/modules/backups/views.py:147
msgid "Archive deleted."
msgstr ""
-#: plinth/modules/backups/views.py:159
+#: plinth/modules/backups/views.py:160
msgid "Upload and restore a backup"
msgstr ""
-#: plinth/modules/backups/views.py:194
+#: plinth/modules/backups/views.py:195
msgid "Restored files from backup."
msgstr ""
-#: plinth/modules/backups/views.py:222
+#: plinth/modules/backups/views.py:223
msgid "No backup file found."
msgstr ""
-#: plinth/modules/backups/views.py:230
+#: plinth/modules/backups/views.py:231
msgid "Restore from uploaded file"
msgstr ""
-#: plinth/modules/backups/views.py:289
+#: plinth/modules/backups/views.py:290
msgid "No additional disks available to add a repository."
msgstr ""
-#: plinth/modules/backups/views.py:297
+#: plinth/modules/backups/views.py:298
msgid "Create backup repository"
msgstr ""
-#: plinth/modules/backups/views.py:324
+#: plinth/modules/backups/views.py:325
msgid "Create remote backup repository"
msgstr ""
-#: plinth/modules/backups/views.py:344
+#: plinth/modules/backups/views.py:345
msgid "Added new remote SSH repository."
msgstr ""
-#: plinth/modules/backups/views.py:366
+#: plinth/modules/backups/views.py:367
msgid "Verify SSH hostkey"
msgstr ""
-#: plinth/modules/backups/views.py:392
+#: plinth/modules/backups/views.py:393
msgid "SSH host already verified."
msgstr ""
-#: plinth/modules/backups/views.py:402
+#: plinth/modules/backups/views.py:403
msgid "SSH host verified."
msgstr ""
-#: plinth/modules/backups/views.py:417
+#: plinth/modules/backups/views.py:418
msgid "SSH host public key could not be verified."
msgstr ""
-#: plinth/modules/backups/views.py:419
+#: plinth/modules/backups/views.py:420
msgid "Authentication to remote server failed."
msgstr ""
-#: plinth/modules/backups/views.py:421
+#: plinth/modules/backups/views.py:422
msgid "Error establishing connection to server: {}"
msgstr ""
-#: plinth/modules/backups/views.py:432
+#: plinth/modules/backups/views.py:433
msgid "Repository removed."
msgstr ""
-#: plinth/modules/backups/views.py:446
+#: plinth/modules/backups/views.py:447
msgid "Remove Repository"
msgstr ""
-#: plinth/modules/backups/views.py:455
+#: plinth/modules/backups/views.py:456
msgid "Repository removed. Backups were not deleted."
msgstr ""
-#: plinth/modules/backups/views.py:465
+#: plinth/modules/backups/views.py:466
msgid "Unmounting failed!"
msgstr ""
-#: plinth/modules/backups/views.py:480 plinth/modules/backups/views.py:484
+#: plinth/modules/backups/views.py:481 plinth/modules/backups/views.py:485
msgid "Mounting failed"
msgstr ""
@@ -715,39 +701,39 @@ msgid ""
"the list."
msgstr ""
-#: plinth/modules/bepasty/__init__.py:38 plinth/modules/bepasty/__init__.py:47
+#: plinth/modules/bepasty/__init__.py:36 plinth/modules/bepasty/__init__.py:45
msgid "Read a file, if a web link to the file is available"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:39
+#: plinth/modules/bepasty/__init__.py:37
msgid "Create or upload files"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:40
+#: plinth/modules/bepasty/__init__.py:38
msgid "List all files and their web links"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:41
+#: plinth/modules/bepasty/__init__.py:39
msgid "Delete files"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:42
+#: plinth/modules/bepasty/__init__.py:40
msgid "Administer files: lock/unlock files"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:46
+#: plinth/modules/bepasty/__init__.py:44
msgid "None, password is always required"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:48
+#: plinth/modules/bepasty/__init__.py:46
msgid "List and read all files"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:63 plinth/modules/bepasty/manifest.py:6
+#: plinth/modules/bepasty/__init__.py:61 plinth/modules/bepasty/manifest.py:6
msgid "bepasty"
msgstr ""
-#: plinth/modules/bepasty/__init__.py:65
+#: plinth/modules/bepasty/__init__.py:63
msgid "File & Snippet Sharing"
msgstr ""
@@ -838,16 +824,16 @@ msgstr ""
msgid "Admin"
msgstr ""
-#: plinth/modules/bepasty/views.py:90 plinth/modules/searx/views.py:38
-#: plinth/modules/searx/views.py:49 plinth/modules/tor/views.py:132
-#: plinth/modules/tor/views.py:159 plinth/modules/zoph/views.py:69
+#: plinth/modules/bepasty/views.py:90 plinth/modules/searx/views.py:40
+#: plinth/modules/searx/views.py:51 plinth/modules/tor/views.py:135
+#: plinth/modules/tor/views.py:162 plinth/modules/zoph/views.py:71
msgid "Configuration updated."
msgstr ""
#: plinth/modules/bepasty/views.py:93 plinth/modules/email/views.py:48
-#: plinth/modules/gitweb/views.py:117 plinth/modules/searx/views.py:41
-#: plinth/modules/searx/views.py:52 plinth/modules/tor/views.py:161
-#: plinth/modules/zoph/views.py:72
+#: plinth/modules/gitweb/views.py:119 plinth/modules/searx/views.py:43
+#: plinth/modules/searx/views.py:54 plinth/modules/tor/views.py:164
+#: plinth/modules/zoph/views.py:74
msgid "An error occurred during configuration."
msgstr ""
@@ -877,11 +863,11 @@ msgid ""
"connection from {box_name}."
msgstr ""
-#: plinth/modules/bind/__init__.py:76
+#: plinth/modules/bind/__init__.py:74
msgid "BIND"
msgstr ""
-#: plinth/modules/bind/__init__.py:77
+#: plinth/modules/bind/__init__.py:75
msgid "Domain Name Server"
msgstr ""
@@ -934,11 +920,11 @@ msgid "Refresh IP address and domains"
msgstr ""
#: plinth/modules/bind/views.py:71 plinth/modules/config/views.py:99
-#: plinth/modules/coturn/views.py:39 plinth/modules/deluge/views.py:42
+#: plinth/modules/coturn/views.py:41 plinth/modules/deluge/views.py:42
#: plinth/modules/dynamicdns/views.py:78 plinth/modules/ejabberd/views.py:96
-#: plinth/modules/email/views.py:45 plinth/modules/matrixsynapse/views.py:124
-#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:35
-#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:28
+#: plinth/modules/email/views.py:45 plinth/modules/matrixsynapse/views.py:126
+#: plinth/modules/minetest/views.py:69 plinth/modules/mumble/views.py:37
+#: plinth/modules/pagekite/forms.py:78 plinth/modules/quassel/views.py:29
#: plinth/modules/roundcube/views.py:32 plinth/modules/shadowsocks/views.py:59
#: plinth/modules/transmission/views.py:43 plinth/modules/ttrss/views.py:26
#: plinth/modules/wordpress/views.py:37
@@ -968,15 +954,15 @@ msgid ""
"app. All users with access can use all the libraries."
msgstr ""
-#: plinth/modules/calibre/__init__.py:57
+#: plinth/modules/calibre/__init__.py:55
msgid "Use calibre e-book libraries"
msgstr ""
-#: plinth/modules/calibre/__init__.py:60 plinth/modules/calibre/manifest.py:6
+#: plinth/modules/calibre/__init__.py:58 plinth/modules/calibre/manifest.py:6
msgid "calibre"
msgstr ""
-#: plinth/modules/calibre/__init__.py:61
+#: plinth/modules/calibre/__init__.py:59
msgid "E-book Library"
msgstr ""
@@ -1036,20 +1022,20 @@ msgstr ""
msgid "Delete library %(library)s"
msgstr ""
-#: plinth/modules/calibre/views.py:39
+#: plinth/modules/calibre/views.py:41
msgid "Library created."
msgstr ""
-#: plinth/modules/calibre/views.py:50
+#: plinth/modules/calibre/views.py:52
msgid "An error occurred while creating the library."
msgstr ""
-#: plinth/modules/calibre/views.py:64 plinth/modules/gitweb/views.py:138
+#: plinth/modules/calibre/views.py:66 plinth/modules/gitweb/views.py:141
#, python-brace-format
msgid "{name} deleted."
msgstr ""
-#: plinth/modules/calibre/views.py:68 plinth/modules/gitweb/views.py:142
+#: plinth/modules/calibre/views.py:70 plinth/modules/gitweb/views.py:145
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr ""
@@ -1078,12 +1064,12 @@ msgid ""
"belonging to the admin group."
msgstr ""
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr ""
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr ""
@@ -1093,18 +1079,18 @@ msgid ""
"name, webserver home page etc."
msgstr ""
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr ""
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr ""
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1256,11 +1242,11 @@ msgid ""
"be configured with the details provided here."
msgstr ""
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr ""
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr ""
@@ -1282,11 +1268,11 @@ msgid ""
"synchronization with servers on the Internet."
msgstr ""
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr ""
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr ""
@@ -1323,17 +1309,17 @@ msgid ""
"immediately after enabling this service."
msgstr ""
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr ""
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr ""
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr ""
@@ -1351,56 +1337,56 @@ msgid ""
"confirm that applications and services are working as expected."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr ""
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr ""
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
"{memory_available_unit} free. {advice_message}"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr ""
@@ -1478,11 +1464,11 @@ msgid ""
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr ""
@@ -1592,9 +1578,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1670,12 +1658,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr ""
@@ -1768,7 +1756,7 @@ msgstr ""
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1813,19 +1801,19 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr ""
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr ""
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr ""
@@ -1859,7 +1847,7 @@ msgstr ""
msgid "Aliases"
msgstr ""
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr ""
@@ -1940,7 +1928,7 @@ msgid ""
"configured reduces risk of security threat from the Internet."
msgstr ""
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr ""
@@ -2077,15 +2065,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2181,54 +2169,54 @@ msgstr ""
msgid "Delete this repository permanently?"
msgstr ""
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr ""
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr ""
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr ""
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr ""
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
@@ -2506,19 +2494,19 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr ""
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr ""
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr ""
@@ -2571,15 +2559,15 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr ""
@@ -2633,32 +2621,32 @@ msgid ""
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
@@ -2675,11 +2663,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr ""
@@ -2711,11 +2699,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -2735,11 +2723,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr ""
@@ -2761,15 +2749,15 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -2832,36 +2820,36 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, 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:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
@@ -2883,7 +2871,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr ""
@@ -2987,12 +2975,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3053,39 +3041,39 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
msgid "Site name updated"
msgstr ""
@@ -3098,11 +3086,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr ""
@@ -3147,7 +3135,7 @@ msgstr ""
msgid "Address"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3158,15 +3146,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3219,11 +3207,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr ""
@@ -3265,15 +3253,15 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr ""
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3286,7 +3274,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr ""
@@ -3306,27 +3294,22 @@ msgstr ""
msgid "Services"
msgstr ""
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr ""
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr ""
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
@@ -3803,7 +3786,7 @@ msgid "This connection is not active."
msgstr ""
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr ""
@@ -3846,7 +3829,7 @@ msgid "Create Connection"
msgstr ""
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr ""
@@ -3866,13 +3849,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr ""
@@ -3893,7 +3876,7 @@ msgid "Computer"
msgstr ""
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr ""
@@ -3903,13 +3886,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr ""
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
@@ -4092,245 +4075,245 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr ""
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr ""
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr ""
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr ""
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr ""
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr ""
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr ""
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr ""
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr ""
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr ""
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr ""
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr ""
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr ""
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr ""
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr ""
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr ""
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr ""
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr ""
@@ -4345,20 +4328,20 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4466,15 +4449,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr ""
@@ -4580,36 +4563,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -4626,7 +4609,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr ""
@@ -4634,7 +4617,7 @@ msgstr ""
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr ""
@@ -4705,15 +4688,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -4737,11 +4720,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr ""
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr ""
@@ -4766,12 +4749,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -4861,7 +4844,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr ""
@@ -4897,16 +4880,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -4941,15 +4924,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr ""
@@ -5069,15 +5052,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr ""
@@ -5158,7 +5141,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr ""
@@ -5223,12 +5206,12 @@ msgstr ""
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr ""
@@ -5242,11 +5225,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5276,11 +5259,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5309,14 +5292,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr ""
@@ -5364,28 +5347,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -5431,7 +5414,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr ""
@@ -5525,7 +5508,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr ""
@@ -5573,53 +5556,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr ""
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -5631,7 +5614,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -5672,7 +5655,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -5692,104 +5675,104 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -5923,16 +5906,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -5952,40 +5935,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6091,7 +6074,7 @@ msgstr ""
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr ""
@@ -6137,7 +6120,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr ""
@@ -6162,11 +6145,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6187,33 +6170,33 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6291,6 +6274,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6394,15 +6378,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -6967,12 +6951,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr ""
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr ""
@@ -7007,11 +6991,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7045,37 +7029,96 @@ msgstr ""
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, python-brace-format
+msgid "Error: {name}: {exception_message}"
+msgstr ""
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+msgid "Installing app"
+msgstr ""
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, python-brace-format
+msgid "Error installing app: {string} {details}"
+msgstr ""
+
+#: plinth/setup.py:76
+#, python-brace-format
+msgid "Error updating app: {string} {details}"
+msgstr ""
+
+#: plinth/setup.py:82
+#, python-brace-format
+msgid "Error installing app: {error}"
+msgstr ""
+
+#: plinth/setup.py:85
+#, python-brace-format
+msgid "Error updating app: {error}"
+msgstr ""
+
+#: plinth/setup.py:89
+msgid "App installed."
+msgstr ""
+
+#: plinth/setup.py:91
+msgid "App updated"
+msgstr ""
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -7361,6 +7404,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr ""
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr ""
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr ""
@@ -7370,52 +7417,28 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr ""
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr ""
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr ""
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/te/LC_MESSAGES/django.po b/plinth/locale/te/LC_MESSAGES/django.po
index 4ef0ce45f..2fdd25d11 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2022-03-02 12:27+0000\n"
"Last-Translator: James Valleroy \n"
"Language-Team: Telugu calibre సమూహానికి చెందిన వినియోగదారులు మాత్రమే యాప్ని యాక్సెస్ చేయగలరు. యాక్సెస్ ఉన్న "
"వినియోగదారులందరూ అన్ని గ్రంధాలయంను ఉపయోగించవచ్చు"
-#: plinth/modules/calibre/__init__.py:57
+#: plinth/modules/calibre/__init__.py:55
msgid "Use calibre e-book libraries"
msgstr "క్యాలిబర్ ఇ-బుక్ లైబ్రరీ ఉపయోగించండి"
-#: plinth/modules/calibre/__init__.py:60 plinth/modules/calibre/manifest.py:6
+#: plinth/modules/calibre/__init__.py:58 plinth/modules/calibre/manifest.py:6
msgid "calibre"
msgstr "క్యాలిబర్"
-#: plinth/modules/calibre/__init__.py:61
+#: plinth/modules/calibre/__init__.py:59
msgid "E-book Library"
msgstr "ఇ-బుక్ లైబ్రరీ"
@@ -1101,20 +1087,20 @@ msgstr "%(library)s లైబ్రరీకి వెళ్లుము"
msgid "Delete library %(library)s"
msgstr "గ్రంధాలయంను తొలగించు %(library)s"
-#: plinth/modules/calibre/views.py:39
+#: plinth/modules/calibre/views.py:41
msgid "Library created."
msgstr "గ్రంధాలయంను సృష్టించారు."
-#: plinth/modules/calibre/views.py:50
+#: plinth/modules/calibre/views.py:52
msgid "An error occurred while creating the library."
msgstr "గ్రంధాలయంని సృష్టిస్తున్నప్పుడు లోపం సంభవించింది."
-#: plinth/modules/calibre/views.py:64 plinth/modules/gitweb/views.py:138
+#: plinth/modules/calibre/views.py:66 plinth/modules/gitweb/views.py:141
#, python-brace-format
msgid "{name} deleted."
msgstr "{name} తొలగించబడింది."
-#: plinth/modules/calibre/views.py:68 plinth/modules/gitweb/views.py:142
+#: plinth/modules/calibre/views.py:70 plinth/modules/gitweb/views.py:145
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr "{name} ను తొలగించలేము: {error}"
@@ -1151,12 +1137,12 @@ msgstr ""
"నిర్వాహక సమూహానికి చెందిన {box_name}లో ఏదైనా వినియోగదారు దీన్ని "
"యాక్సెస్ చేయవచ్చు."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "కాక్పిట్"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "సేవిక పరిపాలన"
@@ -1168,18 +1154,18 @@ msgstr ""
"ఇక్కడ మీరు ఆతిథ్య నామం అధికారక్షేత్రం మహాతలంసేవిక మొదలైన కొన్ని సాధారణ రూపకరణ ఎంపికలను అమరిక "
"చేయవచ్చు."
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "సాధారణ ఆకృతీకరణ"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "ఆకృతీకరణ"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1351,11 +1337,11 @@ msgstr ""
"ఇది వినియోగదారులచే నేరుగా ఉపయోగించబడదు. వంటి సర్వర్లుMatrix Synapse"
"a> or ejabberd ఇక్కడ అందించిన వివరాలతో రూపకరణచేయాలి."
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "కోటుర్న్"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr "విఓఐపీ సహాయకుడు"
@@ -1379,11 +1365,11 @@ msgstr ""
"నెట్వర్క్ టైమ్ సర్వర్ మీ కంప్యూటర్ లోని సమయాన్ని ఇంటర్నెట్లో ఉన్న సమయానికి సమకాలీకరించడానికి ఉపయోగపడే ఒక "
"ప్రోగ్రాం."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "తేదీ & సమయం"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "సమయం NTP సర్వర్కి సమకాలీకరించబడింది"
@@ -1424,17 +1410,17 @@ msgstr ""
"a> అనే మార్గంలో అందుబాటులోనుంటుంది. ప్రధమ పాస్వర్డ్ గా 'డెల్యూజ్' ఉంటుంది, కానీ మీరు లాగ్ ఇన్ "
"అయినవెంటనే మీ పాస్వర్డ్ ను మార్చుకోవాలి."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "బిట్ టోరెంట్ అనువర్తనాలను ఉపయోగించి ఫైళ్లను డౌన్లోడ్ చేయండి"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "డెలూజ్"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "బిట్ టొరెంట్ వెబ్ క్లయింట్"
@@ -1454,49 +1440,49 @@ msgstr ""
"వ్యవస్థ నిర్ధారణ పరీక్ష అనేది మీ కంప్యూటర్లో అన్ని సేవలు మరియు అప్లికేషన్లు అనుకున్న విధంగా పని "
"చేస్తున్నాయో లేదో ధృవీకరించడం కోసం అనేక తనిఖీలు చేస్తుంది."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "లక్షణాలు"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr "ఉత్తీర్ణులయ్యారు"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr "విఫలమయ్యారు"
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr "లోపం"
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr "హెచ్చరిక"
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr "నిర్వహణ సమాచార ఆధారం"
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr "గిబ్"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr "మెమరీ వినియోగాన్ని తగ్గించడానికి మీరు కొన్ని యాప్లను నిలిపివేయాలి."
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr "మీరు ఈ సిస్టమ్లో ఏ కొత్త యాప్లను ఇన్స్టాల్ చేయకూడదు."
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
@@ -1505,7 +1491,7 @@ msgstr ""
"సిస్టమ్ మెమరీ తక్కువగా ఉంది: {percent_used}% ఉపయోగించబడింది, {memory_available} "
"{memory_available_unit} ఉచితం. {advice_message}"
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr "తక్కువ మెమరీ"
@@ -1599,11 +1585,11 @@ msgstr ""
"\" target=\"_blank\"> 3 freedns.afraid.org 4 ఉచిత నవీకరణ URL ఆధారిత సేవలు "
"కనుగొనవచ్చు."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "గతిక DNS కక్షిదారు"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr "డైనమిక్ డొమైన్ పేరు"
@@ -1725,9 +1711,11 @@ msgid "This field is required."
msgstr "ఇది అవసరమేయిన్న క్షేత్రం."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1811,12 +1799,12 @@ msgstr ""
"ejabberd కి శ్రావణ /దృశ్యం కాల్ల కోసం stun /turn సేవిక అవసరం. కార్యక్షేత్రం ను నెలకొల్పడం "
"చేయండి లేదా బాహ్య సేవిక ను రూపకారణం చేయండి {coturn_url}"
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "ఈజాబ్బర్డి"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "కబుర్ల సేవిక"
@@ -1921,7 +1909,7 @@ msgstr "డినో"
msgid "Gajim"
msgstr "గజీం"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1972,21 +1960,21 @@ msgid ""
"uninstalled."
msgstr "ఇన్స్టాలేషన్ సమయంలో, సిస్టమ్లోని ఏదైనా ఇతర ఇమెయిల్ సర్వర్లు అన్ఇన్స్టాల్ చేయబడతాయి"
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr "కబుర్ల సేవిక"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
#, fuzzy
#| msgid "Manage Aliases"
msgid "My Email Aliases"
msgstr "మారుపేర్లను నిర్వహించండి"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
#, fuzzy
#| msgid "Manage Aliases"
msgid "Manage Aliases for Mailbox"
@@ -2022,7 +2010,7 @@ msgstr "సంఖ్య కాకూడదు"
msgid "Aliases"
msgstr "మారుపేర్లు"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr "రౌండ్ క్యూబ్"
@@ -2105,7 +2093,7 @@ msgstr ""
"ఫైర్వాల్ అనేది మీ {box_name}కు జరిగే రవాణా రాకపోకలను నియంత్రించే ఒక భద్రతా వ్యవస్థ. దీనిని అనుమతించి "
"సరిగా ఆకృతీకరిస్తే అంతర్జాలం నుంచి భద్రతా ముప్పు తగ్గుతుంది."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "ఫైర్వాల్"
@@ -2262,15 +2250,15 @@ msgstr ""
"Gitని ఎలా ఉపయోగించాలో మరింత తెలుసుకోవడానికి Git ట్యుటోరియల్ని సందర్శించండి."
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr "Git రిపోజిటరీలకు చదవడానికి-వ్రాయడానికి యాక్సెస్"
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr "గిట్వెబ్"
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr "సాధారణ Git హోస్టింగ్"
@@ -2368,54 +2356,54 @@ msgstr "Git రిపోజిటరీ %(name)sని తొలగి
msgid "Delete this repository permanently?"
msgstr "ఈ రిపోజిటరీని శాశ్వతంగా తొలగించాలా?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr "రిపోజిటరీ సృష్టించబడింది."
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr "రిపోజిటరీని సృష్టిస్తున్నప్పుడు లోపం సంభవించింది."
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr "రిపోజిటరీ సవరించబడింది."
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr "రిపోజిటరీని సవరించండి"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "పత్రావళి"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr "నిర్దేశిక"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr "సహాయం పొందు"
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr "అభిప్రాయాన్ని సమర్పించండి"
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "దోహదం చేయండి"
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "గురించి"
@@ -2754,19 +2742,19 @@ msgid ""
"configuration process."
msgstr "అందించిన వెబ్ ఇంటర్ఫేస్కు మొదటి సందర్శన కాన్ఫిగరేషన్ ప్రక్రియను ప్రారంభిస్తుంది."
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr "I2P కార్యక్షేతాన్ని నిర్వహించండి"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr "ఇ౨ప్"
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr "అజ్ఞాత జాలిక"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr "I2P ప్రాతినిధ్య"
@@ -2832,15 +2820,15 @@ msgstr ""
"సమూహం ఇప్పటికే ఉన్న వాటిని సవరించవచ్చు. వినియోగదారు "
"కాన్ఫిగరేషన్లో మీరు ఈ అనుమతులను మార్చవచ్చు లేదా కొత్త వినియోగదారులను జోడించవచ్చు."
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr "ఇకివికీ"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr "వికీ మరియు బ్లాగ్"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr "వికీ అనువర్తనాలను చూడండి మరియు మార్చండి"
@@ -2896,32 +2884,32 @@ msgstr ""
"ఈ చర్య పునర్విమర్శ చరిత్రతో సహా అన్ని పోస్ట్లు, పుటలు మరియు వ్యాఖ్యలు తొలగిస్తుంది. ఈ వికీ లేదా బ్లాగ్ "
"శాశ్వతంగా తొలగించాలా?"
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "{name} వికీ సృష్టించబడింది."
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "వికీని సృష్టించలేము: {error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "{name} బ్లాగు సృష్టించబడింది."
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "బ్లాగు సృష్టించలేము: {error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr "{title} తొలగించబడింది."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr "{title} ను తొలగించలేము: {error}"
@@ -2941,11 +2929,11 @@ msgstr ""
"మరియు నిక్షిప్తం చెయుము. మొడటిగ గాబ్బి మరియు సెలెక్ట్ \"సర్వర్కు కనెక్ట్ చేయండి\" మరియు మీ ఎంటర్ చెయ్యండి "
"{box_name}'s డొమైన్ పేరు."
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr "ఇన్ఫినోటెడ్"
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr "గాబ్బీ సేవకం"
@@ -2979,11 +2967,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -3004,11 +2992,11 @@ msgid ""
msgstr ""
"JSXC XMPP కోసం ఒక వెబ్ కక్షిదారి. సాధారణంగా ఇది ఒక XMPP సర్వర్ స్థానికంగా అమలు చేయటానికి ఉపయోగిస్తారు."
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr "JSXC"
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr "చాట్ క్లయింట్"
@@ -3038,15 +3026,15 @@ msgstr ""
"\"https://letsencrypt.org/repository/\">సభ్యుల ఒప్పందాన్ని ఎన్క్రిప్ట్ చేద్దాంని చదివి, "
"అంగీకరించండి."
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr "లెట్స్ ఎన్క్రిప్ట్"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "యోగ్యతాపత్రాలు"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr "పరీక్షించడం సాధ్యం కాదు: డొమైన్లు ఏవీ కాన్ఫిగర్ చేయబడలేదు."
@@ -3111,7 +3099,7 @@ msgstr ""
"తోబుట్టువుల అధికారక్షేత్రం కన్ఫిగర్ చేయబడ్డాయి. వారికి సర్టిఫికేట్లు పొందగలగటం అధికారక్షేత్రం "
"ఆకృతీకరించుము. %(config_url)s"
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
@@ -3120,29 +3108,29 @@ msgstr ""
"డొమైన్ {domain} కోసం సర్టిఫికేట్ విజయవంతంగా ఉపసంహరించబడింది. ఇది అమలులోకి రావడానికి కొన్ని క్షణాలు "
"పట్టవచ్చు."
-#: plinth/modules/letsencrypt/views.py:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr "{domain} డోమైన్ కొరకు సర్టిఫికేట్ సంపాదించుటలో విఫలం: {error}"
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr "{domain} డోమైన్ కొరకు సర్టిఫికేట్ తొలగించబడింది"
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr "{domain} డోమైన్ కొరకు ధృవీకరణపత్రం నిర్మూలించడంలో విఫలం: {error}"
@@ -3171,7 +3159,7 @@ msgstr ""
"Matrix Synapseకి ఆడియో/వీడియో కాల్ల కోసం STUN/TURN సర్వర్ అవసరం.Coturn యాప్ను ఇన్స్టాల్ చేయండి లేదా బాహ్య సర్వర్ను కాన్ఫిగర్ చేయండి."
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr "మ్యాట్రిక్స్ సినాప్స్"
@@ -3302,12 +3290,12 @@ msgid ""
msgstr ""
"ఈ వికీకి లింక్తో ఎవరైనా దానిని చదవగలరు. లాగిన్ చేయబడిన వినియోగదారులు మాత్రమే కంటెంట్కు మార్పులు చేయవచ్చు."
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr "మీడియావికీ"
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr "వికీ"
@@ -3386,43 +3374,43 @@ msgstr ""
"మీ మీడియావికీ ఇన్స్టాలేషన్ కోసం డిఫాల్ట్ చర్మాన్ని ఎంచుకోండి. వినియోగదారులు తమకు నచ్చిన చర్మాన్ని ఎంచుకునే "
"అవకాశం ఉంటుంది."
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "అనుమతిపదం నవీకరించబడింది"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
#, fuzzy
#| msgid "Password used to encrypt data. Must match server password."
msgid "Password update failed. Please choose a stronger password"
msgstr "సమాచారాన్ని గుప్తీకరించాడానికి ఉపయోగించబడిన పాస్వర్డ్. తప్పకుండ సర్వర్ పాస్వర్డ్ తో సరిపోలాలి."
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr "పబ్లిక్ రిజిస్ట్రేషన్లు ప్రారంభించబడ్డాయి"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr "పబ్లిక్ రిజిస్ట్రేషన్లు నిలిపివేయబడ్డాయి"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr "ప్రైవేట్ మోడ్ ప్రారంభించబడింది"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr "ప్రైవేట్ మోడ్ నిలిపివేయబడింది"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr "డిఫాల్ట్ చర్మం మార్చబడింది"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Domain name set"
msgid "Domain name updated"
msgstr "అధికారక్షేత్రం పేరు అమర్పు"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
#, fuzzy
#| msgid "Domain name set"
msgid "Site name updated"
@@ -3440,11 +3428,11 @@ msgstr ""
"{box_name}లో Minetest సర్వర్ని అమలు చేయడానికి అనుమతిస్తుంది. సర్వర్కి కనెక్ట్ చేయడానికి, Minetest క్లయింట్ అవసరం."
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr "మైన్ టెస్ట్"
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr "బ్లాక్ శాండ్బాక్స్"
@@ -3492,7 +3480,7 @@ msgstr "నిరుపయోగం అయినప్పుడు, ఆటగా
msgid "Address"
msgstr "చిరునామా"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3508,15 +3496,15 @@ msgstr ""
"టెలివిజన్లు మరియు గేమింగ్ సిస్టమ్లు (PS3 మరియు Xbox 360 వంటివి) లేదా టోటెమ్ మరియు కోడి వంటి "
"అప్లికేషన్లు వంటి DLNA సర్టిఫికేషన్ను పాస్ చేసే ఏదైనా పరికరానికి అనుగుణంగా ఉంటుంది."
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr "మీడియా స్ట్రీమింగ్ సేవిక"
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr "చిన్న DLNA"
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr "సరళమైన మీడియా సేవిక"
@@ -3578,11 +3566,11 @@ msgstr ""
"పరికరాల నుండి Mumbleకి బంధించడానికి క్లయింట్లు "
"అందుబాటులో ఉన్నాయి."
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr "మంబుల్"
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr "స్వర సంభాషణ"
@@ -3632,17 +3620,17 @@ msgstr "ముంబుల్ ఫ్లై"
msgid "Mumla"
msgstr "ముంల"
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr "సూపర్ యూసర్ ర హస్యపదం విజయవంతంగా మార్చబడినది."
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
#, fuzzy
#| msgid "Upload password updated"
msgid "Join password changed"
msgstr "అప్లోడ్ చేయడం కోసమై కేటాయించిన రహస్యపదం నవీకరించబడింది"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3658,7 +3646,7 @@ msgstr ""
"పేరు, టోర్ ఉల్లిపాయ సేవ మరియు పేజ్కైట్. ప్రతి రకమైన పేరు కోసం, ఇచ్చిన పేరు ద్వారా ఇన్కమింగ్ కనెక్షన్ల కోసం "
"HTTP, HTTPS మరియు SSH సేవలు ప్రారంభించబడినా లేదా నిలిపివేయబడినా చూపబడుతుంది."
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "పేరు సేవలు"
@@ -3678,7 +3666,7 @@ msgstr "సెక్యూర్ షెల్"
msgid "Services"
msgstr "సేవలు"
-#: plinth/modules/networks/__init__.py:36
+#: 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."
@@ -3686,21 +3674,16 @@ msgstr ""
"కాన్ఫిగర్ చేయగల నెట్వర్క్ పరికరాలు. ఈథర్నెట్ మరియు Wi-Fi లేదా PPPoE ద్వారా ఇంటర్నెట్తో కనెక్ట్ అవ్వండి. "
"నెట్వర్క్లోని ఇతర పరికరాలతో ఆ కనెక్షన్ని భాగస్వామ్యం చేయండి."
-#: plinth/modules/networks/__init__.py:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "అల్లికలు"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "IPv{kind} పై DNSSEC ఉపయోగించు"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "అనుసంధాన రకం"
@@ -4238,7 +4221,7 @@ msgid "This connection is not active."
msgstr "ఈ అనుసంధానం చురుకుగాలేదు."
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "భద్రత"
@@ -4288,7 +4271,7 @@ msgid "Create Connection"
msgstr "అనుసంధానం సృష్టించు"
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "అనుసంధానం తొలగించు"
@@ -4308,13 +4291,13 @@ msgstr "అంతరం"
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "ఈథర్నెట్"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "Wi-Fi"
@@ -4335,7 +4318,7 @@ msgid "Computer"
msgstr "కంప్యూటర్"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "అనుసంధానాన్ని సవరించండి"
@@ -4345,13 +4328,13 @@ msgstr "అనుసంధానం"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "సమీప వై-ఫై నెట్వర్కులు"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "అనుసంధానాన్ని జతచేయండి"
@@ -4563,245 +4546,245 @@ msgstr ""
"శోధించండి మరియు రూటర్ మాన్యువల్ కోసం ఆన్లైన్లో శోధించండి. ఈ పనిని ఎలా నిర్వహించాలో ఇది పూర్తి సూచనలను "
"అందిస్తుంది."
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr "నిలిపివేయబడింది"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr "స్వయంచాలక"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr "కరదీపిక"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr "పంచుకున్నారు"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr "లింక్-స్థానిక"
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr "తెలియని"
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr "నిర్వహించబడలేదు"
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr "అందుబాటులో లేదు"
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr "కేబుల్ తొలగించడం"
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr "సిద్ధమవుతున్నారు"
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr "అనుసంధానం"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr "ప్రమాణీకరణ అవసరం"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr "చిరునామాను అభ్యర్థిస్తోంది"
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr "తనిఖీ చేస్తోంది"
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr "ద్వితీయ కోసం వేచి ఉంది"
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr "క్రియారహితం చేయి"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr "నిష్క్రియం చేస్తోంది"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr "కారణం లేదు"
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr "అపరిచిత దోషం"
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr "పరికరం ఇప్పుడు నిర్వహించబడుతుంది"
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr "పరికరం ఇప్పుడు నిర్వహించబడలేదు"
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr "కాన్ఫిగరేషన్ విఫలమైంది"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr "రహస్యాలు అవసరం"
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr "DHCP క్లయింట్ ప్రారంభించడంలో విఫలమైంది"
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr "DHCP క్లయింట్ లోపం"
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr "DHCP క్లయింట్ విఫలమైంది"
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr "భాగస్వామ్య కనెక్షన్ సేవ ప్రారంభించడంలో విఫలమైంది"
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr "భాగస్వామ్య కనెక్షన్ సేవ విఫలమైంది"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr "పరికరం తీసివేయబడింది"
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr "వినియోగదారు ద్వారా పరికరం తొలగించవేయబడింది"
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr "బంధం యొక్క ఆధారపడటం విఫలమైంది"
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr "Wi-Fi నెట్వర్క్ కనుగొనబడలేదు"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr "ద్వితీయ కనెక్షన్ విఫలమైంది"
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr "కొత్త కనెక్షన్ యాక్టివేషన్ క్యూలో ఉంది"
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr "నకిలీ IP చిరునామా కనుగొనబడింది"
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr "ఎంచుకున్న IP పద్ధతికి మద్దతు లేదు"
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr "సాధారణమైన"
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr "TUN లేదా TAP సంవిధానం"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr "వైర్గార్డ్"
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr "తాత్కాలిక"
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr "మౌలిక సదుపాయాలు"
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr "సాంగత్యం సూచి"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr "ప్రాప్తి సూచి"
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "నెట్వర్క్ అనుసంధానాలు"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr "అనుసంధానం చూపించలేము: అనుసంధానం దొరకలేదు."
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr "అనుసంధాన సమాచారం"
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "దొరకలేదు అనుసంధానం: అనుసంధానని సవరించడం సాధ్యపడదు."
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr "ఇటువంటి అనుసంధాన రకం ఇంకా అర్థంకాలేదు."
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr "{name} అనుసంధానం ఉత్తేజించబడింది."
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr "అనుసంధానాన్ని ఉత్తేజించుటలో విఫలమైంది: అనుసంధానం దొరకలేదు."
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr "{name} అనుసంధానాన్ని ఉత్తేజించుటలో విఫలమైంది: సరైన పరికరం అందుబాటులో లేదు."
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "{name} అనుసంధానం క్రియారహితం చేయబడింది."
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr "అనుసంధానం క్రియారహితం విఫలమైంది: అనుసంధానం దొరకలేదు."
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr "కొత్త జెనరిక్ కనెక్షన్ని జోడిస్తోంది"
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "కొత్త ఈథర్నెట్ అనుసంధానాన్ని కలుపుతోంది"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "కొత్త PPPoE అనుసంధానాన్ని కలుపుతోంది"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "కొత్త వై-ఫై అనుసంధానాన్ని కలుపుతోంది"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "{name} అనుసంధానం తొలగించబడింది."
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr "అనుసంధానం తొలగించడం విఫలమైంది: అనుసంధానం దొరకలేదు."
@@ -4821,20 +4804,20 @@ msgstr ""
"మిగిలిన ఇంటర్నెట్ను యాక్సెస్ చేయవచ్చు మీ {box_name} 1 అనుసంధానించవచ్చు అదనపు భద్రత మరియు "
"అనామకత్వం కోసం."
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr "అనుసంధాన రకం విపిన్ సేవలకు"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr "తెరచిన విపిన్"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr "వర్చువల్ ప్రైవేట్ నెట్వర్క్"
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4966,15 +4949,15 @@ msgstr ""
"\"https://pagekite.net\">pagekite.net. భవిష్యత్తులో దీని కోసం మీ స్నేహితుని "
"{box_name}ని ఉపయోగించడం సాధ్యమవుతుంది."
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr "పేజ్కైట్"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr "ప్రజా దృశ్యమానం"
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr "పేజ్కైట్ అధికారక్షేత్రం"
@@ -5085,29 +5068,29 @@ msgstr ""
"హెచ్చరిక:
మా PageKite ఫ్రంటెండ్ సర్వర్ మీరు ఇక్కడ నిర్వచించే చేయగల అన్ని ప్రోటోకాల్ / పోర్ట్ "
"కాంబినేషన్ మద్దతు ఇవ్వకపోవచ్చు. ఉదాహరణకు, HTTPS 443 పోర్ట్లకు సమస్యలు కారణమవుతుంది."
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr "వెబ్ సేవిక (HTTP)"
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr "సైట్ http://{0} వద్ద అందుబాటులో ఉంటుంది"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr "వెబ్ సేవిక (HTTPS)"
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr "సైట్ https://{0} వద్ద అందుబాటులో ఉంటుంది"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr "సెక్యూర్ షెల్ (SSH)"
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
@@ -5116,7 +5099,7 @@ msgstr ""
"\"> సూచనలు "
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr "ప్రదర్శన"
@@ -5136,7 +5119,7 @@ msgid ""
"using the Cockpit app."
msgstr "పనితీరు కొలమానాలు పనితీరు కో-పైలట్ ద్వారా సేకరించబడతాయి మరియు కాక్పిట్ యాప్ని ఉపయోగించి వీక్షించవచ్చు."
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr "వ్యవస్థ దర్శినికరణ"
@@ -5144,7 +5127,7 @@ msgstr "వ్యవస్థ దర్శినికరణ"
msgid "Restart or shut down the system."
msgstr "సిస్టమ్ ని పునఃప్రారంభించండి లేదా మూసివేయండి."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "శక్తి"
@@ -5237,15 +5220,15 @@ msgstr ""
"డాక్యుమెంటేషన్ http://config.privoxy.org/"
"a> లేదా http://p.p లో చూడవచ్చు."
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr "ప్రివొక్సి"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr "వెబ్ ప్రాక్సీ"
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr "టీసీపీ{kind} పై{proxy} తో యాక్సిస్ {url} చేయండి"
@@ -5278,11 +5261,11 @@ msgstr ""
"కనెక్ట్ అవుతారు. http://quasseldroid.iskrembilen.com/\">మొబైల్ పరికరాలు అందుబాటులో "
"ఉన్నాయి."
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "క్వాసెల్"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr "IRC క్లయింట్"
@@ -5314,12 +5297,12 @@ msgstr ""
"రూపొందించడానికి మాత్రమే మద్దతు ఇస్తుంది. ఈవెంట్లు లేదా పరిచయాలను జోడించడానికి ఇది మద్దతు ఇవ్వదు, ఇది "
"ప్రత్యేక క్లయింట్ని ఉపయోగించి చేయాలి."
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr "రాడికేల్"
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr "క్యాలెండర్ మరియు అడ్రస్సు పుస్తకము"
@@ -5434,7 +5417,7 @@ msgstr ""
"google.comలో \"తక్కువ సురక్షిత యాప్లు\" కూడా ప్రారంభించవలసి ఉంటుందని గుర్తుంచుకోండి /"
"settings/security/lesssecureapps)."
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr "ఇమెయిల్ క్లయింట్"
@@ -5477,16 +5460,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr "న్యూస్ ఫీడ్లను చదవడం మరియు చందాదారునిగా చేరు"
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5530,15 +5513,15 @@ msgstr ""
"హోమ్ షేర్ - freedombox-share గ్రూపులో ఉన్న ప్రతి వినియోగదారుడు వారి స్వంత ప్రైవేట్ స్థలాన్ని కలిగి "
"ఉంటారు."
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr "ప్రైవేటు షేర్లలో ప్రవేశం"
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr "సాంబా"
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr "నెట్వర్క్ దస్త్రంనిల్వ"
@@ -5671,15 +5654,15 @@ msgstr ""
"శోధన యంత్రాలు ద్వారా ట్రాకింగ్ మరియు ప్రొఫైలింగ్ను నివారించడానికి సెర్క్స్ ను ఉపయోగించవచ్చు. ఇది మాములుగా "
"కుకీలను నిల్వ ఉంచుకోదు."
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr "అంతర్జాలమును శోధింపుము"
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr "సేర్క్స్"
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr "వెబ్ శోధన"
@@ -5770,7 +5753,7 @@ msgstr ""
"కంట్రిబ్యూటర్లచే నిర్వహించబడతాయి."
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr "భద్రతా నివేదిక"
@@ -5844,12 +5827,12 @@ msgstr "ఏమీ లేదు"
msgid "Not running"
msgstr "పరుగు లేదు"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "నియంత్రిత ప్రాప్యతను సెట్ చేయడంలో లోపం: {exception}"
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr "నవీకరించబడిన భద్రతా ఆకృతీకరణ"
@@ -5865,11 +5848,11 @@ msgstr ""
"శారలి ఒక వినియోగదారు ఖాతాకు మాత్రమే మద్దతు ఇస్తుందని గమనించండి, మీరు ప్రారంభ సందర్శనలో సెటప్ చేయాల్సి "
"ఉంటుంది."
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "షార్లి"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr "బుక్మార్క్లు"
@@ -5906,11 +5889,11 @@ msgstr ""
"సెటప్ తర్వాత Shadowsocksని ఉపయోగించడానికి, మీ పరికరం, బ్రౌజర్ లేదా అప్లికేషన్లో SOCKS5 ప్రాక్సీ URLని "
"http://freedombox_address:1080/కి సెట్ చేయండి"
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr "షాడోసాక్స్"
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr "సాక్స్5 ప్రాక్సీ"
@@ -5939,7 +5922,7 @@ msgstr "సమాచారాన్ని గుప్తీకరించా
msgid "Encryption method. Must match setting on server."
msgstr "గుప్తీకరించు పద్దతి. సర్వర్ లోని సెట్టింగ్తో సరిపోలాలి."
-#: plinth/modules/sharing/__init__.py:20
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -5948,7 +5931,7 @@ msgstr ""
"వెబ్లో ఎంచుకున్న వినియోగదారుల సమూహాలతో మీ {box_name}లోని ఫైల్లు మరియు ఫోల్డర్లను భాగస్వామ్యం చేయడానికి "
"భాగస్వామ్యం మిమ్మల్ని అనుమతిస్తుంది."
-#: plinth/modules/sharing/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr "భాగస్వామ్యం"
@@ -5996,28 +5979,28 @@ msgstr "ఈ పేరుతో ఒక వాటా ఇప్పటికే ఉ
msgid "Shares should be either public or shared with at least one group"
msgstr "షేర్లు పబ్లిక్ గా ఉండాలి లేదా కనీసం ఒక గ్రూపుతో పంచుకోవాలి"
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr "వాటాను జోడించండి"
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr "ప్రస్తుతం ఏ షేర్లు ఏర్పాటు చేయబడలేదు."
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr "డిస్క్ మార్గం"
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr "పైగా షేర్ చేయబడింది"
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr "గుంపులతో"
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr "ప్రజా ప్రాప్తి"
@@ -6071,7 +6054,7 @@ msgstr ""
"href=\"/plinth/sys/backups\">బ్యాకప్లకి ప్రత్యామ్నాయం కాదు, ఎందుకంటే అవి ఒకే విభజనలో "
"మాత్రమే నిల్వ చేయబడతాయి. "
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr "నిల్వ దృశ్యములు"
@@ -6168,7 +6151,7 @@ msgstr "తేదీ"
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr "స్నాప్షాట్లను తొలగించు"
@@ -6220,53 +6203,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr "స్నాప్షాట్ #%(number)s కు రోల్బ్యాక్ చేయండి"
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr "మానవీయంగా సృష్టించబడింది"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr "కాలక్రమం"
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr "సముచితమైనది"
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr "స్నాప్షాట్లను నిర్వహించండి"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr "స్నాప్షాట్ సృష్టించబడినది."
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr "నిల్వ స్నాప్షాట్ల కాన్ఫిగరేషన్ నవీకరించబడింది"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "చర్య లోపం:{0}{1}{2}"
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr "ఎంచుకున్న స్నాప్షాట్లు తొలగించబడ్డాయి"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr "స్నాప్షాట్ ప్రస్తుతం వాడుకలో ఉంది. దయచేసి తర్వాత మళ్లీ ప్రయత్నించండి."
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "స్నాప్షాట్ #{number} కు తీస్కుని వెళ్ళబడింది."
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr "రొల్ల్బచ్క్ ని పూర్తి చేయడానికి వ్యవస్థను పునరుద్ధరించాలి."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr "చాయాచిత్రం కు రొల్ల్బచ్క్ చేయండి"
@@ -6281,7 +6264,7 @@ msgstr ""
"ఉపయోగిస్తుంది. అధీకృత రిమోట్ కంప్యూటర్ అటువంటి కనెక్షన్లను ఉపయోగించి అడ్మినిస్ట్రేషన్ పనులను చేయగలదు, "
"ఫైల్లను కాపీ చేయగలదు లేదా ఇతర సేవలను అమలు చేయగలదు."
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr "సెక్యూర్ షెల్ (SSH) సర్వర్"
@@ -6326,7 +6309,7 @@ msgstr "SSH ప్రమాణీకరణ తో SSH ఆపివేయబడ
msgid "SSH authentication with password enabled."
msgstr "SSH ప్రమాణీకరణ తో SSH ఆపివేయబడింది ."
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr "సింగిల్ సైన్ ఆన్"
@@ -6349,104 +6332,104 @@ msgstr ""
"ప్రస్తుతం వాడుకలో ఉన్న స్టోరేజ్ మీడియాను వీక్షించవచ్చు, తొలగించగల మీడియాను మౌంట్ చేయవచ్చు మరియు అన్మౌంట్ "
"చేయవచ్చు, రూట్ విభజనను విస్తరించవచ్చు మొదలైనవి."
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr "నిల్వ"
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} బైట్లు"
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} కిలోబైట్లు"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} మెగాబైట్లు"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} గిగాబైట్లు"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} టెరాబైట్లు"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr "ఆపరేషన్ విఫలమైంది."
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr "ఆపరేషన్ రద్దు చేయబడింది."
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr "పరికరం ఇప్పటికే అన్మౌంట్ చేయబడుతోంది."
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr "డ్రైవర్/టూల్ సపోర్ట్ తప్పిపోయినందున ఆపరేషన్కు మద్దతు లేదు."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr "ఆపరేషన్ టైమవుట్ అయింది."
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr "ఈ ఆపరేషన్ గాఢ నిద్రలో ఉన్న ఒక డిస్క్ ను మేల్కొలుపుతుంది."
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr "బిజీగా ఉన్న పరికరాన్ని అన్మౌంట్ చేయడానికి ప్రయత్నిస్తోంది."
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr "ఆపరేషన్ ఇప్పటికే రద్దు చేయబడింది."
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr "అభ్యర్థించిన ఆపరేషన్ చేయడానికి అధికారం లేదు."
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr "పరికరం ఇప్పటికే మౌంట్ చేయబడింది."
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr "పరికరం మౌంట్ చేయబడలేదు."
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr "అభ్యర్థించిన ఎంపికను ఉపయోగించడానికి అనుమతి లేదు."
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr "పరికరం మరొక వినియోగదారుచే మౌంట్ చేయబడింది."
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr "సిస్టమ్ విభజనలో తక్కువ స్థలం: {percent_used}% used, {free_space} ఉచితం."
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr "తక్కువ ఖని స్థలం"
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr "ఖని వైఫల్యం ఆసన్నమైంది"
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6597,16 +6580,16 @@ msgstr ""
"సెట్ ప్రత్యేక ఫోల్డర్ల సెట్తో సమకాలీకరించబడవచ్చు.వెబ్ ఇంటర్ఫేస్ ఆన్ చేయబడింది{box_name} నిర్వాహకుడు \" "
"లేదా \"సమకాలీకరణ-యాక్సెస్\" సమూహానికి చెందిన వినియోగదారులకు మాత్రమే అందుబాటులో ఉంటుంది."
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr "సమకాలీకరణ అప్లికేషన్ను నిర్వహించండి"
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr "సింక్ తింగ్"
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr "ఫైళ్ళ సమకాలీకరణ"
@@ -6631,40 +6614,40 @@ msgid ""
"TCP port 9050."
msgstr "టిసిపి పోర్ట్ 9050 పై ఒక టార్ సొక్స్ పోర్ట్ మీ %(box_name)sలో అందుబాటులో ఉంది."
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr "టార్"
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr "టోర్ ఉల్లిపాయ సేవ"
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr "టోర్ సాక్స్ ప్రాతినిధ్య"
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr "టార్ బ్రిడ్జ్ రిలే"
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr "టార్ రిలే పోర్ట్ అందుబాటులో ఉంది"
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr "Obfs3 రవాణా నమోదు చేయబడింది"
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr "Obfs4 రవాణా నమోదు చేయబడింది"
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr "టార్ ద్వారా {kind} లో {url} ను ఆక్సెస్ చెయ్యండి"
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "టోర్ వాడుకను నిర్ధారించండి{url} టీ సి పి పై{kind}"
@@ -6786,7 +6769,7 @@ msgstr "ఉల్లిపాయ సేవ"
msgid "Ports"
msgstr "పోర్ట్స్"
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "మారకుండా అమర్చుతోంది"
@@ -6837,7 +6820,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr "ట్రాన్స్మిషన్"
@@ -6872,11 +6855,11 @@ msgstr ""
"చిన్న చిన్న RSS కోసం మొబైల్ లేదా డెస్క్టాప్ అప్లికేషన్ను ఉపయోగిస్తున్నప్పుడు, URLని ఉపయోగించండి/tt-rss-app కలపడం కోసం ."
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr "టైనీ టైనీ RSS"
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr "న్యూస్ ఫీడ్ రీడర్"
@@ -6901,22 +6884,22 @@ msgstr ""
"అందుబాటులో ఉండవు. సిస్టమ్ రీబూట్ అవసరమని భావించినట్లయితే, అది స్వయంచాలకంగా 02:00కి చేయబడుతుంది, "
"దీని వలన అన్ని యాప్లు క్లుప్తంగా అందుబాటులో ఉండవు."
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr "సాఫ్ట్వేర్ నవీకరణ"
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr "స్వతంత్ర సాఫ్ట్వేర్ తాజా పరుచడం"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr "పంపిణీ నవీకరణను ప్రారంభించడం సాధ్యపడలేదు"
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
@@ -6925,11 +6908,11 @@ msgstr ""
"పంపిణీ నవీకరణను ప్రారంభించడానికి రూట్ విభజనలో తగినంత ఖాళీ స్థలం లేదు. దయచేసి కనీసం 5 GB ఉచితంగా "
"ఉండేలా చూసుకోండి. ప్రారంభించబడితే, పంపిణీ నవీకరణ 24 గంటల తర్వాత మళ్లీ ప్రయత్నించబడుతుంది."
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr "పంపిణీ నవీకరణ ప్రారంభమైంది"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr "తదుపరి స్థిరమైన విడుదలకు నవీకరణ ప్రారంభించబడింది. ఇది పూర్తి కావడానికి చాలా సమయం పట్టవచ్చు."
@@ -7021,6 +7004,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr "రద్దుచేసే"
@@ -7136,15 +7120,15 @@ msgstr ""
"చేయవచ్చు. అయినప్పటికీ, అడ్మిన్ సమూహం యొక్క వినియోగదారులు మాత్రమే యాప్లు లేదా సిస్టమ్ "
"సెట్టింగ్లను మార్చవచ్చు."
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr "వినియోగదారులు మరియు సమూహాలు"
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr "అన్ని సేవలకు మరియు సిస్టమ్ అమరికలకు ప్రాప్యత"
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "LDAP నమోదు \"{search_item}\" తనిఖీ"
@@ -7760,12 +7744,12 @@ msgstr ""
"చేయాలి. అదనపు ప్లగిన్లు లేదా థీమ్లు మీ స్వంత పూచీతో ఇన్స్టాల్ చేయబడవచ్చు మరియు మెరుగుపరుచు "
"చేయబడవచ్చు."
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr "వర్డుప్రెస్సు"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr "వెబ్సైట్ మరియు బ్లాగ్"
@@ -7810,11 +7794,11 @@ msgstr ""
"జోఫ్ని సెటప్ చేసిన {box_name} వినియోగదారు కూడా Zophలో నిర్వాహకులు అవుతారు. అదనపు వినియోగదారుల "
"కోసం, ఖాతాలు తప్పనిసరిగా {box_name}లో మరియు జోఫ్లో ఒకే వినియోగదారు పేరుతో సృష్టించబడాలి."
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr "జోఫ్"
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr "ఫోటో ఆర్గనైజర్"
@@ -7850,37 +7834,112 @@ msgstr "పిపిపిఒఇ"
msgid "Generic"
msgstr "సాధారణమైన"
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "ఆతిథ్యనామం అమర్చుటలో లోపం: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, fuzzy, python-brace-format
+#| msgid "Service disabled: {name}"
+msgid "Finished: {name}"
+msgstr "సేవ నిలిపివేయబడింది: {name}"
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr "ప్యాకేజీ {package_name} తాజా వెర్షన్ ({latest_version})"
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr "సంస్థాపన ఒక పొరపాటు జరిగింది"
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr "వ్యవస్థాపిస్తోంది"
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr "దిగుమతి అవుతోంది"
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr "ప్రసార మాధ్యమం మార్పు"
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr "ఆకృతీకరణ ఫైలు: {file}"
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "అనువర్తనాలను నిక్షిప్తం చేద్దాం"
+
+#: plinth/setup.py:46
+#, fuzzy
+#| msgid "Updating..."
+msgid "Updating app"
+msgstr "నవీకరిస్తోంది."
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "అనువర్తనం స్థాపించుటలో దోషం: {string}{details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "అనువర్తనం స్థాపించుటలో దోషం: {string}{details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "అనువర్తనం స్థాపించుటలో దోషం: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "అనువర్తనం స్థాపించుటలో దోషం: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "అనువర్తనం స్థాపించబడింది."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "చివరి నవీకరణ"
+
+#: plinth/setup.py:411
+#, fuzzy
+#| msgid "Upgrade Packages"
+msgid "Updating app packages"
+msgstr "ప్యాకేజీలను అప్గ్రేడ్ చేయండి"
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 నిషేధించబడింది"
@@ -8193,6 +8252,10 @@ msgstr "రూటర్/WAN పోర్ట్ల నుండి"
msgid "To %(box_name)s Ports"
msgstr "%(box_name)s పోర్ట్లకు"
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "అనువర్తనం స్థాపించబడింది."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr "ఈ అనువర్తనాన్ని నిక్షిప్తం చేయాలా?"
@@ -8202,21 +8265,14 @@ msgid "This application needs an update. Update now?"
msgstr "ఈ అనువర్తనానికి నవీకరణ అవసరం. ఇప్పుడే నవీకరిస్తారా?"
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-"మరొక సంస్థాపన లేదా నవీకరణ ఇప్పటికే నడుస్తోంది. మళ్ళీ ప్రయత్నించే ముందు కొన్ని క్షణాలు వేచి ఉండండి."
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr "ప్రస్తుతం ఈ అనువర్తనం మీ పంపిణీకి అందుబాటులో లేదు."
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr "మళ్ళీ ప్రయత్నించు"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
@@ -8225,36 +8281,42 @@ msgstr ""
"విరుద్ధమైన ప్యాకేజీలు: సిస్టమ్లో ఇన్స్టాల్ చేయబడిన కొన్ని ప్యాకేజీలు ఈ యాప్ ఇన్స్టాలేషన్తో "
"విభేదిస్తున్నాయి. మీరు కొనసాగితే క్రింది ప్యాకేజీలు తీసివేయబడతాయి:"
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr "నిక్షిప్తం చేయు"
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr "నవీకరణ"
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr "ప్రీ-ఇన్స్టాల్ ఆపరేషన్ జరుగుతోంది"
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr "ఇన్స్తల్ల్ తర్వాత ప్రక్రియ జరుగుతోంది"
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr "%(package_names)s నిక్షిప్తం అవుతోంది: %(status)s"
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "%(percentage)s %% పూర్తి"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr "గుజరాతీ"
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "IPv{kind} పై DNSSEC ఉపయోగించు"
+
+#~ msgid ""
+#~ "Another installation or upgrade is already running. Please wait for a few "
+#~ "moments before trying again."
+#~ msgstr ""
+#~ "మరొక సంస్థాపన లేదా నవీకరణ ఇప్పటికే నడుస్తోంది. మళ్ళీ ప్రయత్నించే ముందు కొన్ని క్షణాలు వేచి ఉండండి."
+
+#~ msgid "Performing pre-install operation"
+#~ msgstr "ప్రీ-ఇన్స్టాల్ ఆపరేషన్ జరుగుతోంది"
+
+#~ msgid "Performing post-install operation"
+#~ msgstr "ఇన్స్తల్ల్ తర్వాత ప్రక్రియ జరుగుతోంది"
+
+#, python-format
+#~ msgid "Installing %(package_names)s: %(status)s"
+#~ msgstr "%(package_names)s నిక్షిప్తం అవుతోంది: %(status)s"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "%(percentage)s %% పూర్తి"
+
#~ 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."
@@ -9168,9 +9230,6 @@ msgstr "గుజరాతీ"
#~ msgid "Service enabled: {name}"
#~ msgstr "సేవ ప్రారంభించబడింది: {name}"
-#~ msgid "Service disabled: {name}"
-#~ msgstr "సేవ నిలిపివేయబడింది: {name}"
-
#, fuzzy
#~ msgid "PageKite Account"
#~ msgstr "PageKite ఖాతా"
@@ -9610,9 +9669,6 @@ msgstr "గుజరాతీ"
#~ msgid "Automatic Upgrades"
#~ msgstr "స్వయంచాలక నవీకరణలు"
-#~ msgid "Upgrade Packages"
-#~ msgstr "ప్యాకేజీలను అప్గ్రేడ్ చేయండి"
-
#, fuzzy
#~| msgid "Disk Path"
#~ msgid "Path"
diff --git a/plinth/locale/tr/LC_MESSAGES/django.po b/plinth/locale/tr/LC_MESSAGES/django.po
index b88932fbc..4aa5e0b42 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2022-08-03 22:17+0000\n"
"Last-Translator: Burak Yavuz \n"
"Language-Team: Turkish herhangi bir "
"kullanıcı tarafından erişilebilir."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Cockpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "Sunucu Yönetimi"
@@ -1194,18 +1180,18 @@ msgstr ""
"Burada anamakine adı, etki alanı adı, web sunucusu ana sayfası vb. gibi bazı "
"genel yapılandırma seçeneklerini ayarlayabilirsiniz."
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "Genel Yapılandırma"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "Yapılandır"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1383,11 +1369,11 @@ msgstr ""
"\"{ms_url}\">Matrix Synapse veya ejabberd gibi "
"sunucuların burada sağlanan ayrıntılarla yapılandırılması gerekir."
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "Coturn"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr "VoIP Yardımcısı"
@@ -1411,11 +1397,11 @@ msgstr ""
"Ağ zaman sunucusu, sistem saatini İnternet'teki sunucularla eşit halde tutan "
"bir programdır."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "Tarih ve Saat"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "NTP sunucusu ile zaman eşitlendi"
@@ -1456,17 +1442,17 @@ msgstr ""
"Varsayılan parola 'deluge'dir, ancak bu hizmeti etkinleştirdikten hemen "
"sonra oturum açmalı ve parolayı değiştirmelisiniz."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "BitTorrent uygulamalarını kullanarak dosyaları indir"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "Deluge"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "BitTorrent Web İstemcisi"
@@ -1486,50 +1472,50 @@ msgstr ""
"Sistem tanılama denemesi, uygulamaların ve hizmetlerin beklendiği gibi "
"çalıştığını doğrulamak için sisteminizde bir dizi denetim gerçekleştirecek."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "Tanılama"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr "geçti"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr "başarısız"
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr "hata"
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr "uyarı"
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr "MiB"
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr "GiB"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
"Bellek kullanımını azaltmak için bazı uygulamaları etkisizleştirmelisiniz."
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr "Bu sisteme herhangi bir yeni uygulama yüklememelisiniz."
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
@@ -1538,7 +1524,7 @@ msgstr ""
"Sistem belleği düşük: %{percent_used} kullanılıyor, {memory_available}."
"{memory_available_unit} boş. {advice_message}"
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr "Düşük Bellek"
@@ -1634,11 +1620,11 @@ msgstr ""
"freedns.afraid."
"org adresinde bulabilirsiniz."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "Değişken DNS İstemcisi"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr "Değişken Etki Alanı Adı"
@@ -1765,9 +1751,11 @@ msgid "This field is required."
msgstr "Bu alan gereklidir."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1853,12 +1841,12 @@ msgstr ""
"duyar. Coturn uygulamasını yükleyin veya harici "
"bir sunucu yapılandırın."
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "ejabberd"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "Sohbet Sunucusu"
@@ -1973,7 +1961,7 @@ msgstr "Dino"
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2037,19 +2025,19 @@ msgid ""
msgstr ""
"Kurulum sırasında sistemdeki diğer tüm e-posta sunucuları kaldırılacaktır."
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr "Postfix/Dovecot"
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr "E-posta Sunucusu"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr "E-posta Kod Adlarım"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr "Posta Kutusu için Kod Adlarını Yönet"
@@ -2085,7 +2073,7 @@ msgstr "Sayı olamaz"
msgid "Aliases"
msgstr "Kod Adları"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr "Roundcube"
@@ -2172,7 +2160,7 @@ msgstr ""
"ve uygun şekilde yapılandırılmış halde tutulması, İnternet kaynaklı güvenlik "
"tehdidi riskini azaltır."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "Güvenlik Duvarı"
@@ -2334,15 +2322,15 @@ msgstr ""
"Git'in nasıl kullanılacağı hakkında daha fazla bilgi edinmek için Git öğreticisini ziyaret edin."
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr "Git depolarına okuma-yazma erişimi"
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr "Gitweb"
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr "Basit Git Barındırma"
@@ -2439,54 +2427,54 @@ msgstr "%(name)s Git Deposunu Sil"
msgid "Delete this repository permanently?"
msgstr "Bu depo kalıcı olarak silinsin mi?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr "Depo oluşturuldu."
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr "Depo oluşturulurken bir hata meydana geldi."
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr "Depo düzenlendi."
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr "Depoyu düzenle"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "Belgeler"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr "Kılavuz"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr "Destek Al"
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr "Geri Bildirim Gönder"
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "Katkıda Bulun"
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Hakkında"
@@ -2839,19 +2827,19 @@ msgid ""
msgstr ""
"Sağlanan web arayüzüne ilk ziyaret, yapılandırma işlemini başlatacaktır."
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr "I2P uygulamasını yönet"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr "I2P"
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr "İsim Gizliliği Ağı"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr "I2P Vekil Sunucusu"
@@ -2921,15 +2909,15 @@ msgstr ""
"href=\"{users_url}\">Kullanıcı Yapılandırmasında bu izinleri "
"değiştirebilir veya yeni kullanıcılar ekleyebilirsiniz."
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr "ikiwiki"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr "Viki ve Blog"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr "Viki uygulamalarını görüntüle ve düzenle"
@@ -2985,32 +2973,32 @@ msgstr ""
"Bu eylem düzeltim geçmişi dahil olmak üzere tüm yazıları, sayfaları ve "
"yorumları silecek. Bu viki ya da blog kalıcı olarak silinsin mi?"
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "{name} viki oluşturuldu."
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "Viki oluşturulamadı: {error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "{name} blog oluşturuldu."
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "Blog oluşturulamadı: {error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr "{title} silindi."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr "{title} silinemedi: {error}"
@@ -3032,11 +3020,11 @@ msgstr ""
"istemcisini indirin ve yükleyin. Ardından Gobby'yi başlatın, \"Sunucuya "
"Bağlan\" seçeneğini seçin ve {box_name} cihazınızın etki alanı adını girin."
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr "infinoted"
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr "Gobby Sunucusu"
@@ -3070,11 +3058,11 @@ msgstr "Basit bir video konferans odası dahildir."
msgid "Coturn is required to use Janus."
msgstr "Janus'u kullanmak için Coturn gereklidir."
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr "Janus"
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr "Video Odası"
@@ -3096,11 +3084,11 @@ msgstr ""
"JSXC, XMPP için bir web istemcisidir. Genellikle, yerel olarak çalışan bir "
"XMPP sunucusuyla kullanılır."
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr "JSXC"
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr "Sohbet İstemcisi"
@@ -3132,15 +3120,15 @@ msgstr ""
"Lütfen bu hizmeti kullanmadan önce Let's Encrypt Abone Sözleşmesini okuyun ve kabul edin."
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr "Let's Encrypt"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "Sertifikalar"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr "Denenemiyor: Hiçbir etki alanı yapılandırılmamış."
@@ -3205,7 +3193,7 @@ msgstr ""
"Hiçbir etki alanı yapılandırılmadı. Bunlar için sertifika alabilmek amacıyla "
"etki alanlarını yapılandırın."
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
@@ -3214,29 +3202,29 @@ msgstr ""
"{domain} etki alanı için sertifika başarılı olarak iptal edildi. Bunun "
"etkili olması birkaç dakika alabilir."
-#: plinth/modules/letsencrypt/views.py:47
+#: plinth/modules/letsencrypt/views.py:49
#, python-brace-format
msgid "Failed to revoke certificate for domain {domain}: {error}"
msgstr "{domain} etki alanı için sertifika iptal etme başarısız oldu: {error}"
-#: plinth/modules/letsencrypt/views.py:60
-#: plinth/modules/letsencrypt/views.py:77
+#: plinth/modules/letsencrypt/views.py:62
+#: plinth/modules/letsencrypt/views.py:79
#, python-brace-format
msgid "Certificate successfully obtained for domain {domain}"
msgstr "{domain} etki alanı için sertifika başarılı olarak elde edildi"
-#: plinth/modules/letsencrypt/views.py:65
-#: plinth/modules/letsencrypt/views.py:82
+#: plinth/modules/letsencrypt/views.py:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr "{domain} etki alanı için sertifika elde etme başarısız oldu: {error}"
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr "{domain} etki alanı için sertifika başarılı olarak silindi"
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr "{domain} etki alanı için sertifika silme başarısız oldu: {error}"
@@ -3268,7 +3256,7 @@ msgstr ""
"ihtiyaç duyar. Coturn uygulamasını yükleyin veya "
"harici bir sunucu yapılandırın."
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr "Matrix Synapse"
@@ -3411,12 +3399,12 @@ msgstr ""
"Bu viki'ye bağlantısı olan herkes bunu okuyabilir. Sadece oturum açmış "
"kullanıcılar içerikte değişiklik yapabilir."
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr "MediaWiki"
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr "Viki"
@@ -3490,39 +3478,39 @@ msgstr ""
"MediaWiki kurulumunuz için varsayılan bir kaplama seçin. Kullanıcılar tercih "
"ettikleri kaplamayı seçmek için seçeneğe sahiptir."
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "Parola güncellendi"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr "Parola güncelleme başarısız oldu. Lütfen daha güçlü bir parola seçin"
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr "Herkese açık kayıtlar etkinleştirildi"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr "Herkese açık kayıtlar etkisizleştirildi"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr "Özel kip etkinleştirildi"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr "Özel kip etkisizleştirildi"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr "Varsayılan kaplama değiştirildi"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr "Etki alanı adı güncellendi"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
msgid "Site name updated"
msgstr "Site adı güncellendi"
@@ -3539,11 +3527,11 @@ msgstr ""
"(30000) çalıştırılmasını sağlar. Sunucuya bağlanmak için bir Minetest istemcisi gereklidir."
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr "Minetest"
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr "Blok Kum Havuzu"
@@ -3595,7 +3583,7 @@ msgstr ""
msgid "Address"
msgstr "Adres"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3613,15 +3601,15 @@ msgstr ""
"Xbox 360 gibi) gibi ya da totem ve Kodi gibi uygulamalar da dahil olmak "
"üzere DLNA Sertifikası geçen tüm cihazlarla uyumludur."
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr "Ortam akış sunucusu"
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr "MiniDLNA"
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr "Basit Ortam Sunucusu"
@@ -3684,11 +3672,11 @@ msgstr ""
"bağlanabilirsiniz. Masaüstünüzden ve mobil cihazlarınızdan Mumble'a "
"bağlanmak için istemciler mevcuttur."
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr "Mumble"
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr "Sesli Sohbet"
@@ -3736,15 +3724,15 @@ msgstr "Mumblefly"
msgid "Mumla"
msgstr "Mumla"
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr "Süper Kullanıcı parolası başarılı olarak güncellendi."
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr "Katılma parolası değiştirildi"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr "Kök kanal adı değişti."
@@ -3762,7 +3750,7 @@ msgstr ""
"aracılığıyla gelen bağlantılar için etkinleştirildiği mi yoksa "
"etkisizleştirildiği mi gösterilir."
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "Ad Hizmetleri"
@@ -3782,7 +3770,7 @@ msgstr "Güvenli Kabuk"
msgid "Services"
msgstr "Hizmetler"
-#: plinth/modules/networks/__init__.py:36
+#: 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."
@@ -3790,7 +3778,7 @@ msgstr ""
"Ağ cihazlarını yapılandırın. İnternet'e Ethernet, Wi-Fi veya PPPoE ile "
"bağlanın. Bu bağlantıyı ağdaki diğer cihazlarla paylaşın."
-#: plinth/modules/networks/__init__.py:38
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
@@ -3798,15 +3786,10 @@ msgstr ""
"Diğer yöntemler aracılığıyla yönetilen cihazlar burada yapılandırma için "
"mevcut olmayabilir."
-#: plinth/modules/networks/__init__.py:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "Ağlar"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "IPv{kind} üzerinde DNSSEC kullanma"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "Bağlantı Türü"
@@ -4371,7 +4354,7 @@ msgid "This connection is not active."
msgstr "Bu bağlantı etkin değil."
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "Güvenlik"
@@ -4422,7 +4405,7 @@ msgid "Create Connection"
msgstr "Bağlantı Oluştur"
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "Bağlantıyı Sil"
@@ -4442,13 +4425,13 @@ msgstr "Aralık"
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "Ethernet"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "Kablosuz (Wi-Fi)"
@@ -4469,7 +4452,7 @@ msgid "Computer"
msgstr "Bilgisayar"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "Bağlantıyı Düzenle"
@@ -4479,13 +4462,13 @@ msgstr "Bağlantılar"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "Yakındaki Kablosuz (Wi-Fi) Ağları"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "Bağlantı Ekle"
@@ -4706,246 +4689,246 @@ msgstr ""
"kılavuzunu çevrimiçi olarak arayın. Bu, bu görevin nasıl "
"gerçekleştirileceğine dair tam talimatlar sağlayacak."
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr "etkisizleştirildi"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr "otomatik"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr "elle"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr "paylaşılmış"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr "bağlantı-yerel"
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr "bilinmiyor"
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr "yönetilmeyen"
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr "kullanılamaz"
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr "bağlantısı kesilmiş"
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr "hazırlanıyor"
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr "bağlanıyor"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr "kimlik doğrulaması gerekiyor"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr "adres isteniyor"
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr "denetleniyor"
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr "ikincil bekleniyor"
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr "etkinleştirildi"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr "devre dışı bırakılıyor"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr "sebep yok"
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr "bilinmeyen hata"
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr "aygıt artık yönetiliyor"
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr "aygıt artık yönetilemiyor"
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr "yapılandırma başarısız oldu"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr "gizli anahtarlar gerekli"
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr "DHCP istemcisini başlatma başarısız oldu"
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr "DHCP istemcisi hatası"
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr "DHCP istemcisi başarısız oldu"
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr "paylaşılan bağlantı hizmetini başlatma başarısız oldu"
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr "paylaşılan bağlantı hizmeti başarısız oldu"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr "aygıt kaldırıldı"
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr "aygıtın bağlantısı kullanıcı tarafından kesildi"
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr "bağlantının bir bağımlılığı başarısız oldu"
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr "Kablosuz (Wi-Fi) ağı bulunamadı"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr "ikincil bir bağlantı başarısız oldu"
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr "yeni bağlantı etkinleştirme sıraya alındı"
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr "yinelenen bir IP adresi algılandı"
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr "seçilen IP yöntemi desteklenmiyor"
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr "genel"
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr "TUN veya TAP arayüzü"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr "WireGuard"
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr "geçici"
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr "altyapı"
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr "erişim noktası"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr "ağ gözü noktası"
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "Ağ Bağlantıları"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr "Bağlantı gösterilemiyor: Bağlantı bulunamadı."
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr "Bağlantı Bilgileri"
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "Bağlantı düzenlenemiyor: Bağlantı bulunamadı."
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr "Bu tür bir bağlantı henüz anlaşılmamaktadır."
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr "{name} bağlantısı etkinleştirildi."
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr "Bağlantıyı etkinleştirme başarısız oldu: Bağlantı bulunamadı."
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
"{name} bağlantısını etkinleştirme başarısız oldu: Mevcut uygun bir cihaz yok."
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "{name} bağlantısı devre dışı bırakıldı."
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr "Bağlantıyı devre dışı bırakma başarısız oldu: Bağlantı bulunamadı."
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr "Yeni Genel Bağlantı Ekleme"
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "Yeni Ethernet Bağlantısı Ekleme"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "Yeni PPPoE Bağlantısı Ekleme"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "Yeni Kablosuz (Wi-Fi) Bağlantısı Ekleme"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "{name} bağlantısı silindi."
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr "Bağlantının silinmesi başarısız oldu: Bağlantı bulunamadı."
@@ -4966,20 +4949,20 @@ msgstr ""
"isim gizliliği sayesinde {box_name} aracılığıyla İnternet'e de "
"erişebilirsiniz."
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr "VPN hizmetlerine bağlan"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr "OpenVPN"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr "Sanal Özel Ağ"
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -5114,15 +5097,15 @@ msgstr ""
"href=\"https://pagekite.net\">pagekite.net. Gelecekte bunun için "
"arkadaşınızın {box_name} cihazını kullanmak mümkün olabilir."
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr "PageKite"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr "Herkese Açık Görünürlük"
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr "PageKite Etki Alanı"
@@ -5236,32 +5219,32 @@ msgstr ""
"dışındaki bağlantı noktalarında HTTPS'nin sorunlara neden olduğu "
"bilinmektedir."
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr "Web Sunucusu (HTTP)"
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
"Site http://{0} adresinde kullanılabilir olacaktır"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr "Web Sunucusu (HTTPS)"
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
"Site https://{0} adresinde kullanılabilir "
"olacaktır"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr "Güvenli Kabuk (SSH)"
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
@@ -5270,7 +5253,7 @@ msgstr ""
"SshOverPageKite/\">talimatlarına bakın"
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr "Performans"
@@ -5293,7 +5276,7 @@ msgstr ""
"Performans ölçümleri, Performance Co-Pilot tarafından toplanır ve Cockpit "
"uygulaması kullanılarak görüntülenebilir."
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr "Sistem İzleme"
@@ -5301,7 +5284,7 @@ msgstr "Sistem İzleme"
msgid "Restart or shut down the system."
msgstr "Sistemi yeniden başlatın veya kapatın."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "Güç"
@@ -5392,15 +5375,15 @@ msgstr ""
"href=\"https://www.privoxy.org\">https://www.privoxy.org adresinde "
"görebilirsiniz."
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr "Privoxy"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr "Web Vekil Sunucusu"
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr "Tcp{kind} üzerinde {proxy} vekil sunucusu ile {url} adresine erişin"
@@ -5434,11 +5417,11 @@ msgstr ""
"\">masaüstü ve mobil"
"a> cihazlarınızdan bağlanacak istemciler mevcuttur."
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr "IRC İstemcisi"
@@ -5471,12 +5454,12 @@ msgstr ""
"temel bir web arayüzü sağlar. Ayrı bir istemci kullanılarak yapılması "
"zorunlu olan olayların veya kişilerin eklenmesini desteklemez."
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr "Radicale"
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr "Takvim ve Adres Defteri"
@@ -5596,7 +5579,7 @@ msgstr ""
"gerekeceğini unutmayın (https://myaccount.google.com/lesssecureapps)."
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr "E-posta İstemcisi"
@@ -5643,16 +5626,16 @@ msgstr ""
"RSS ile RSS-Bridge'i kullanabilirsiniz. Bir bildirim eklerken, kimlik "
"doğrulamayı etkinleştirin ve {box_name} kimlik bilgilerinizi kullanın."
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr "Haber bildirimlerini oku ve abone ol"
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr "RSS-Bridge"
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr "RSS Bildirim Oluşturucu"
@@ -5698,15 +5681,15 @@ msgstr ""
"Ev paylaşımı - Freedombox paylaşım grubundaki her kullanıcı kendi özel "
"alanına sahip olabilir."
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr "Özel paylaşımlara erişim"
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr "Samba"
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr "Ağ Dosya Depolama"
@@ -5839,15 +5822,15 @@ msgstr ""
"Searx, arama motorları tarafından izlenmeyi ve profil oluşturmayı önlemek "
"için kullanılabilir. Varsayılan olarak hiçbir tanımlama bilgisi saklamaz."
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr "Web'de ara"
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr "Searx"
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr "Web Arama"
@@ -5942,7 +5925,7 @@ msgstr ""
"katkıda bulunanlar tarafından bakımları yapılır."
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr "Güvenlik Raporu"
@@ -6020,12 +6003,12 @@ msgstr "Hayır"
msgid "Not running"
msgstr "Çalışmıyor"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "Kısıtlı erişim ayarlanırken hata oldu: {exception}"
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr "Güvenlik yapılandırması güncellendi"
@@ -6041,11 +6024,11 @@ msgstr ""
"Shaarli'nin sadece ilk ziyaretinizde ayarlamanız gerekecek tek bir kullanıcı "
"hesabını desteklediğini unutmayın."
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "Shaarli"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr "Yer İşaretleri"
@@ -6085,11 +6068,11 @@ msgstr ""
"uygulamanızda SOCKS5 vekil sunucu URL'sini http://freedombox_adresi:1080/ "
"olarak ayarlayın"
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr "Shadowsocks"
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr "Socks5 Vekil Sunucusu"
@@ -6120,7 +6103,7 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr "Şifreleme yöntemi. Sunucudaki ayarla eşleşmek zorundadır."
-#: plinth/modules/sharing/__init__.py:20
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -6129,7 +6112,7 @@ msgstr ""
"Paylaşım, web üzerinden {box_name} cihazınızdaki dosyaları ve klasörleri, "
"seçilen kullanıcı gruplarıyla paylaşmanızı sağlar."
-#: plinth/modules/sharing/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr "Paylaşım"
@@ -6181,28 +6164,28 @@ msgstr "Bu ada sahip bir paylaşım zaten var."
msgid "Shares should be either public or shared with at least one group"
msgstr "Paylaşımlar herkese açık olmalı veya en az bir grupla paylaşılmalıdır"
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr "Paylaşım ekle"
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr "Şu anda yapılandırılmış paylaşımlar yok."
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr "Disk Yolu"
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr "Paylaşım Bitti"
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr "Gruplarla"
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr "herkese açık erişim"
@@ -6260,7 +6243,7 @@ msgstr ""
"depolanabildikleri için yedeklemelerin "
"yerine geçmez. "
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr "Depolama Anlık Görüntüleri"
@@ -6363,7 +6346,7 @@ msgstr "Tarih"
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr "Anlık Görüntüleri Sil"
@@ -6417,54 +6400,54 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr "#%(number)s Nolu Anlık Görüntüye Geri Al"
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr "el ile oluşturuldu"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr "zaman çizelgesi"
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr "apt"
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr "Anlık Görüntüleri Yönet"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr "Anlık görüntü oluşturuldu."
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr "Depolama anlık görüntü yapılandırması güncellendi"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Eylem hatası: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr "Seçilen anlık görüntüler silindi"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr "Anlık görüntü şu anda kullanımda. Lütfen daha sonra tekrar deneyin."
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "#{number} nolu anlık görüntüye geri alındı."
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
"Geri alma işlemini tamamlamak için sistem yeniden başlatılmak zorundadır."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr "Anlık Görüntüye Geri Al"
@@ -6480,7 +6463,7 @@ msgstr ""
"bağlantıları kullanarak yönetim görevlerini gerçekleştirebilir, dosyaları "
"kopyalayabilir veya diğer hizmetleri çalıştırabilir."
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr "Güvenli Kabuk (SSH) Sunucusu"
@@ -6526,7 +6509,7 @@ msgstr "Parola ile SSH kimlik doğrulaması etkisizleştirildi."
msgid "SSH authentication with password enabled."
msgstr "Parola ile SSH kimlik doğrulaması etkinleştirildi."
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr "Tek Oturum Açma"
@@ -6550,105 +6533,105 @@ msgstr ""
"ortamı bağlayabilir ve bağlantısını kaldırabilir, kök bölümünü vb. "
"genişletebilirsiniz."
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr "Depolama"
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} bayt"
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr "İşlem başarısız oldu."
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr "İşlem iptal edildi."
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr "Aygıtın zaten bağlantısı kaldırılıyor."
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr "Eksik sürücü/araç desteğinden dolayı işlem desteklenmiyor."
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr "İşlem zaman aşımına uğradı."
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr "İşlem, derin uyku durumunda olan bir diski uyandırır."
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr "Meşgul olan bir aygıtın bağlantısı kaldırılmaya çalışılıyor."
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr "İşlem zaten iptal edildi."
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr "İstenen işlemi gerçekleştirmek için yetkili değilsiniz."
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr "Aygıt zaten bağlı."
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr "Aygıt bağlı değil."
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr "İstenen seçeneği kullanmak için izin verilmedi."
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr "Aygıt başka bir kullanıcı tarafından bağlandı."
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
"Sistem bölümünde düşük alan: %{percent_used} kullanıldı, {free_space} boş."
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr "Düşük disk alanı"
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr "Disk arızası yakın"
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6803,16 +6786,16 @@ msgstr ""
"{box_name} cihazındaki web arayüzü sadece \"admin\" veya \"syncthing-access"
"\" grubuna ait kullanıcılar tarafından kullanılabilir."
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr "Syncthing uygulamasını yönet"
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr "Syncthing"
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr "Dosya Eşitleme"
@@ -6838,40 +6821,40 @@ msgstr ""
"9050 nolu TCP bağlantı noktası üzerindeki dahili ağlar için {box_name} "
"cihazınızda bir Tor SOCKS bağlantı noktası kullanılabilir."
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr "Tor"
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr "Tor Onion Hizmeti"
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr "Tor Socks Vekil Sunucusu"
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr "Tor Köprüsü Aktarımı"
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr "Tor aktarımı bağlantı noktası kullanılabilir"
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr "Obfs3 taşıma kayıtlı"
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr "Obfs4 taşıma kayıtlı"
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr "Tor aracılığıyla tcp{kind} üzerinde erişim URL'si {url}"
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "Tcp{kind} üzerinde {url} adresinde Tor kullanımını onaylama"
@@ -6999,7 +6982,7 @@ msgstr "Onion Hizmeti"
msgid "Ports"
msgstr "Bağlantı Noktaları"
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "Ayar değişmedi"
@@ -7057,7 +7040,7 @@ msgstr ""
"İndirme tamamlandıktan sonra, dosyalarınıza Paylaşım uygulamasını kullanarak da erişebilirsiniz."
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr "Transmission"
@@ -7089,11 +7072,11 @@ msgstr ""
"Tiny Tiny RSS için bir mobil veya masaüstü uygulaması kullanırken, bağlanmak "
"için /tt-rss-app URL'sini kullanın."
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr "Tiny Tiny RSS"
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr "Haber Bildirim Okuyucusu"
@@ -7119,22 +7102,22 @@ msgstr ""
"Eğer sistemin yeniden başlatılması gerekli görülürse, saat 02:00'da otomatik "
"olarak yapılır ve tüm uygulamalar kısa bir süre için kullanılamaz hale gelir."
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr "Yazılım Güncellemesi"
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr "FreedomBox Güncellendi"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr "Dağıtım güncellemesi başlatılamadı"
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
@@ -7144,11 +7127,11 @@ msgstr ""
"Lütfen en az 5 GB boş alan olduğundan emin olun. Dağıtım güncellemesi, "
"etkinleştirildiyse 24 saat sonra yeniden denenecektir."
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr "Dağıtım güncellemesi başlatıldı"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -7243,6 +7226,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr "Yoksay"
@@ -7366,15 +7350,15 @@ msgstr ""
"sadece admin grubunun kullanıcıları uygulamaları veya sistem "
"ayarlarını değiştirebilir."
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr "Kullanıcılar ve Gruplar"
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr "Tüm hizmetlere ve sistem ayarlarına erişim"
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "LDAP \"{search_item}\" girişini denetleme"
@@ -8004,12 +7988,12 @@ msgstr ""
"yükseltmesini el ile çalıştırmanız gerekir. Ek eklentiler veya temalar kendi "
"sorumluluğunuzda yüklenebilir ve yükseltilebilir."
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr "WordPress"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr "Web Sitesi ve Blog"
@@ -8059,11 +8043,11 @@ msgstr ""
"Ek kullanıcılar için hesaplar hem {box_name} cihazında hem de Zoph'da aynı "
"kullanıcı adıyla oluşturulmak zorundadır."
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr "Zoph"
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr "Fotoğraf Düzenleyici"
@@ -8101,37 +8085,112 @@ msgstr "PPPoE"
msgid "Generic"
msgstr "Genel"
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Anamakine adı ayarlanırken hata oldu: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, fuzzy, python-brace-format
+#| msgid "Service disabled: {name}"
+msgid "Finished: {name}"
+msgstr "Servis devre dışı bırakıldı: {name}"
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr "{expression} paketi yükleme için mevcut değil"
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr "{package_name} paketi en son sürümdür ({latest_version})"
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr "Kurulum sırasında hata oldu"
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr "yükleniyor"
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr "indiriliyor"
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr "ortam değiştirme"
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr "yapılandırma dosyası: {file}"
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "Uygulamaları Yükle"
+
+#: plinth/setup.py:46
+#, fuzzy
+#| msgid "Updating..."
+msgid "Updating app"
+msgstr "Güncelleniyor..."
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Uygulama yüklenirken hata oldu: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Uygulama yüklenirken hata oldu: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Uygulama yüklenirken hata oldu: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Uygulama yüklenirken hata oldu: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Uygulama yüklendi."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "Son güncelleme"
+
+#: plinth/setup.py:411
+#, fuzzy
+#| msgid "Upgrade Packages"
+msgid "Updating app packages"
+msgstr "Paketleri Yükselt"
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Yasak"
@@ -8449,6 +8508,10 @@ msgstr "Yönlendirici/WAN Bağlantı Noktalarından"
msgid "To %(box_name)s Ports"
msgstr "%(box_name)s Bağlantı Noktalarına"
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Uygulama yüklendi."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr "Bu uygulama yüklensin mi?"
@@ -8458,22 +8521,14 @@ msgid "This application needs an update. Update now?"
msgstr "Bu uygulamanın güncellenmesi gerekiyor. Şimdi güncellensin mi?"
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-"Başka bir kurulum veya yükseltme zaten çalışıyor. Tekrar denemeden önce "
-"lütfen biraz bekleyin."
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr "Bu uygulama şu anda dağıtımınızda mevcut değil."
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr "Tekrar denetle"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
@@ -8483,36 +8538,43 @@ msgstr ""
"uygulamanın kurulumuyla çakışıyor. Devam ederseniz aşağıdaki paketler "
"kaldırılacaktır:"
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr "Yükle"
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr "Güncelle"
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr "Yükleme öncesi işlemi gerçekleştiriliyor"
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr "Yükleme sonrası işlemi gerçekleştiriliyor"
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr "Yüklenen %(package_names)s: %(status)s"
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "%%%(percentage)s tamamlandı"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr "Gujarati"
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "IPv{kind} üzerinde DNSSEC kullanma"
+
+#~ msgid ""
+#~ "Another installation or upgrade is already running. Please wait for a few "
+#~ "moments before trying again."
+#~ msgstr ""
+#~ "Başka bir kurulum veya yükseltme zaten çalışıyor. Tekrar denemeden önce "
+#~ "lütfen biraz bekleyin."
+
+#~ msgid "Performing pre-install operation"
+#~ msgstr "Yükleme öncesi işlemi gerçekleştiriliyor"
+
+#~ msgid "Performing post-install operation"
+#~ msgstr "Yükleme sonrası işlemi gerçekleştiriliyor"
+
+#, python-format
+#~ msgid "Installing %(package_names)s: %(status)s"
+#~ msgstr "Yüklenen %(package_names)s: %(status)s"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "%%%(percentage)s tamamlandı"
+
#~ 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."
@@ -9491,9 +9553,6 @@ msgstr "Gujarati"
#~ msgid "Service enabled: {name}"
#~ msgstr "Servis etkinleştirildi: {name}"
-#~ msgid "Service disabled: {name}"
-#~ msgstr "Servis devre dışı bırakıldı: {name}"
-
#~ msgid "PageKite Account"
#~ msgstr "PageKite Hesabı"
@@ -9957,9 +10016,6 @@ msgstr "Gujarati"
#~ msgid "Automatic Upgrades"
#~ msgstr "Otomatik Yükseltmeler"
-#~ msgid "Upgrade Packages"
-#~ msgstr "Paketleri Yükselt"
-
#, fuzzy
#~| msgid "Create User"
#~ msgid "Create archive"
diff --git a/plinth/locale/uk/LC_MESSAGES/django.po b/plinth/locale/uk/LC_MESSAGES/django.po
index d4161a318..30417e4fd 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2022-08-05 21:15+0000\n"
"Last-Translator: Andrij Mizyk \n"
"Language-Team: Ukrainian будь-який користувач "
"на {box_name}, що належить до групи admin."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Cockpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "Адміністрування сервера"
@@ -1199,18 +1185,18 @@ msgstr ""
"Тут Ви можете задати деякі загальні параметри налаштувань, як-от назва "
"компʼютера, назва домена, домашня сторінка вебсервера тощо."
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "Загальні налаштування"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "Налаштування"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1387,11 +1373,11 @@ msgstr ""
"от Matrix Synapse або ejabberd"
"a> потрібно налаштовувати з урахуванням деталей наведених тут."
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "Coturn"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr "Помічник VoIP"
@@ -1417,11 +1403,11 @@ msgstr ""
"Сервер мережевого часу — це програма, що підтримує системний час "
"синхронізовано зі серверами в Інтернеті."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "Дата і час"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "Час синхронізовано зі сервером NTP"
@@ -1462,17 +1448,17 @@ msgstr ""
"Типовий пароль – 'deluge', але Ви можете ввійти і змінити його відразу після "
"ввімкнення цього сервісу."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "Завантаження файлів через застосунки BitTorrent"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "Deluge"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "Вебклієнт BitTorrent"
@@ -1492,50 +1478,50 @@ msgstr ""
"Тест діагностики системи запускає певну кількість перевірок, щоб упевнитися, "
"що застосунки і сервіси працюють так, як очікується."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "Діагностика"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr "пройдено"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr "невдало"
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr "помилка"
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr "попередження"
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr "МіБ"
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr "ҐіБ"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
"Ви повинні вимкнути деякі застосунки, щоб зменшити використання памʼяті."
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr "Не слід встановлювати нові застосунки в цій системі."
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
@@ -1544,7 +1530,7 @@ msgstr ""
"У системі бракує памʼяті: {percent_used}% використано, {memory_available} "
"{memory_available_unit} вільно. {advice_message}"
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr "Мало памʼяті"
@@ -1628,11 +1614,11 @@ msgid ""
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "Клієнт динамічної DNS"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr "Динамічна доменна назва"
@@ -1749,9 +1735,11 @@ msgid "This field is required."
msgstr "Це поле обовʼязкове."
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1836,12 +1824,12 @@ msgstr ""
"застосунок Coturn або налаштуйте зовнішній "
"сервер."
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "ejabberd"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "Сервер чату"
@@ -1949,7 +1937,7 @@ msgstr "Dino"
msgid "Gajim"
msgstr "Gajim"
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2000,19 +1988,19 @@ msgid ""
msgstr ""
"Під час встановлення всі інші сервери ел. пошти в системі буде видалено."
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr "Postfix/Dovecot"
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr "Сервер електронної пошти"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr "Мої псевдоніми ел. пошти"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr "Керування псевдонімами для скриньки"
@@ -2048,7 +2036,7 @@ msgstr "Не може бути числом"
msgid "Aliases"
msgstr "Псевдоніми"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr "Roundcube"
@@ -2132,7 +2120,7 @@ msgstr ""
"трафік Вашого {box_name}. Тримайте фаєрвол увімкненим і належно "
"налаштованим, це зменшить ризик загроз безпеці з Інтернету."
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "Фаєрвол"
@@ -2285,15 +2273,15 @@ msgstr ""
"Щоб дізнатися більше про те, як користуватися Git відвідайте навчання Git."
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr "Доступ до читання-запису репозиторіїв Git"
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr "Gitweb"
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr "Просте розміщення Git"
@@ -2390,54 +2378,54 @@ msgstr "Видалити Git-репозиторій %(name)s"
msgid "Delete this repository permanently?"
msgstr "Видалити цей репозиторій безповоротно?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr "Репозиторій створено."
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr "Помилка відбулася під час створення репозиторію."
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr "Репозиторій змінено."
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr "Змінити репозиторій"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "Документація"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr "Посібник"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr "Отримати підтримку"
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr "Надіслати відгук"
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "Співпрацювати"
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "Про FreedomBox"
@@ -2753,19 +2741,19 @@ msgid ""
msgstr ""
"Перше відвідування наданого вебінтерфейсу розпочне процес налаштування."
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr "Керування застосунком I2P"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr "I2P"
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr "Мережа анонімності"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr "Проксі I2P"
@@ -2826,15 +2814,15 @@ msgstr ""
"\"{users_url}\">налаштуваннях користувача Ви можете змінити ці права або "
"додавати нових користувачів."
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr "ikiwiki"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr "Вікі та блоґ"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr "Перегляд і редагування застосунків вікі"
@@ -2888,32 +2876,32 @@ msgid ""
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "Створено вікі {name}."
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "Не можливо створити вікі: {error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "Створено блоґ {name}."
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "Не можливо створити блоґ: {error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr "{title} видалено."
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr "Не можливо видалити {title}: {error}"
@@ -2933,11 +2921,11 @@ msgstr ""
"Gobby, стільничний клієнт і встановіть їх. Потім запустіть Gobby, "
"виберіть «Зʼєднатися зі сервером» і введіть Вашу доменну назву {box_name}."
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr "infinoted"
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr "Сервер Gobby"
@@ -2971,11 +2959,11 @@ msgstr "Входить проста кімната для відеоконфер
msgid "Coturn is required to use Janus."
msgstr "Для використання Janus потрібен Coturn."
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr "Janus"
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr "Відеокімната"
@@ -2997,11 +2985,11 @@ msgstr ""
"JSXC – це вебклієнт для XMPP. Як правило, використовується зі запущеним "
"локальним сервером XMPP."
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr "JSXC"
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr "Клієнт чату"
@@ -3023,15 +3011,15 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr "Let's Encrypt"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "Сертифікати"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr "Тестування не можливе: Нема налаштованих доменів."
@@ -3096,7 +3084,7 @@ msgstr ""
"Нема налаштованих доменів. Налаштуйте домени, "
"щоб мати можливість отримати сертифікати для них."
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
@@ -3105,29 +3093,29 @@ msgstr ""
"Сертифікат успішно відкликано для домена {domain}. Це може зайняти кілька "
"хвилин, перш ніж почне діяти."
-#: plinth/modules/letsencrypt/views.py:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr "Не вдалося отримати сертифікат для домену {domain}: {error}"
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr "Сертифікат успішно видалено для домену {domain}"
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr "Не вдалося видалити сертифікат для домену {domain}: {error}"
@@ -3149,7 +3137,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr "Matrix Synapse"
@@ -3272,12 +3260,12 @@ msgstr ""
"Будь-хто, хто має посилання на цю вікі може читати її. Лише користувачі, що "
"ввійшли можуть робити зміни вмісту."
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr "MediaWiki"
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr "Вікі"
@@ -3350,39 +3338,39 @@ msgstr ""
"Оберіть типову шкурку для Вашого встановлення MediaWiki. Користувачі мають "
"можливість вибирати бажану шкурку."
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "Пароль оновлено"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr "Не вдалося оновити пароль. Оберіть сильніший пароль"
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr "Публічні реєстрації дозволено"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr "Публічні реєстрації вимкнено"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr "Приватний режим дозволено"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr "Приватний режим вимкнено"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr "Типову шкурку змінено"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr "Доменну назву оновлено"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
msgid "Site name updated"
msgstr "Назву сайту оновлено"
@@ -3399,11 +3387,11 @@ msgstr ""
"портом (30000). Щоб підʼєднатися до сервера потрібено клієнт Minetest."
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr "Minetest"
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr "Блокова пісочниця"
@@ -3453,7 +3441,7 @@ msgstr ""
msgid "Address"
msgstr "Адреса"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3464,15 +3452,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr "Сервер потокового медія"
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr "MiniDLNA"
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr "Простий сервер медія"
@@ -3527,11 +3515,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr "Mumble"
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr "Голосовий чат"
@@ -3573,15 +3561,15 @@ msgstr "Mumblefly"
msgid "Mumla"
msgstr "Mumla"
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr "Пароль суперкористувача успішно оновлено."
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr "Долучення пароля змінено"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr "Змінено назву кореневого каналу."
@@ -3594,7 +3582,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "Назва сервісів"
@@ -3614,7 +3602,7 @@ msgstr "Захищена оболонка"
msgid "Services"
msgstr "Сервіси"
-#: plinth/modules/networks/__init__.py:36
+#: 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."
@@ -3622,7 +3610,7 @@ msgstr ""
"Налаштування мережевих пристроїв. Зʼєднання з Інтернетом через Ethernet, Wi-"
"Fi або PPPoE. Ділитися цим зʼєднанням з іншими пристроями в мережі."
-#: plinth/modules/networks/__init__.py:38
+#: plinth/modules/networks/__init__.py:37
msgid ""
"Devices administered through other methods may not be available for "
"configuration here."
@@ -3630,15 +3618,10 @@ msgstr ""
"Пристрої, що адмініструються іншими способами, можуть бути недоступними для "
"налаштування тут."
-#: plinth/modules/networks/__init__.py:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "Мережі"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "Використання DNSSEC на IPv{kind}"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "Тип зʼєднання"
@@ -3910,8 +3893,8 @@ msgid ""
"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 ""
-"Я маю публічну IP-адресу, яка час від часу змінюєтьсяЦе означає, що пристрої в Інтернеті можуть звʼязуватися з Вами, коли Ви "
+"Я маю публічну IP-адресу, яка час від часу змінюється
Це означає, що пристрої в Інтернеті можуть звʼязуватися з Вами, коли Ви "
"підключені до Інтернету. Кожного разу, коли Ви підʼєднуєтеся до Інтернету, "
"Ваш постачальник Інтернет-послуг (ISP) може надавати Вам іншу IP-адресу, "
"особливо після тривалого часу без мережі. Багато постачальників пропонують "
@@ -4165,7 +4148,7 @@ msgid "This connection is not active."
msgstr "Це зʼєднання неактивне."
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "Безпека"
@@ -4208,7 +4191,7 @@ msgid "Create Connection"
msgstr "Створити зʼєднання"
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "Видалити зʼєднання"
@@ -4228,13 +4211,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "Ethernet"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "Wi-Fi"
@@ -4255,7 +4238,7 @@ msgid "Computer"
msgstr "Компʼютер"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "Змінити зʼєднання"
@@ -4265,13 +4248,13 @@ msgstr "Зʼєднання"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "Мережі Wi-Fi поблизу"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "Додати зʼєднання"
@@ -4482,246 +4465,246 @@ msgstr ""
"Дізнайтеся номер моделі свого маршрутизатора і пошукайте в мережі для нього "
"посібник . Це надасть повну інструкцію для виконання цього завдання."
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr "вимкнено"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr "автоматично"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr "вручну"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr ""
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr "невідомо"
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr "недоступно"
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr "відʼєднано"
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr "зʼєднання"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr "потрібна автентифікація"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr "запит адреси"
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr "перевірка"
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr "активовано"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr "деактивовано"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr "нема причини"
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr "невідома помилка"
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr "конфіґурація невдала"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr "Не вдалося запустити клієнт DHCP"
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr "Помилка клієнта DHCP"
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr "Помилка клієнта DHCP"
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr "помилка сервісу спільного зʼєднання"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr "пристрій вилучено"
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr "пристрій відʼєднано користувачем"
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr "Не знайдено мережі Wi-Fi"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr "друге зʼєднання невдале"
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr "виявлено дублювання IP-адрес"
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr "вибраний метод IP не підтримується"
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr "загальний"
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr "інтерфейс TUN або TAP"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr "WireGuard"
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr "ad-hoc"
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr "інфраструктура"
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr "точка доступу"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr "точка mesh"
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "Мережеві зʼєднання"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr "Не можливо показати зʼєднання: Зʼєднання не знайдено."
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr "Інформація про зʼєднання"
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "Не можливо змінити зʼєднання: Зʼєднання не знайдено."
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr "Активовано зʼєднання {name}."
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr "Не вдалося активувати зʼєднання: Зʼєднання не знайдено."
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
"Не вдалося активувати зʼєднання {name}: Не доступний підходящий пристрій."
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "Деактивовано зʼєднання {name}."
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr "Не вдалося деактивувати зʼєднання: Зʼєднання не знайдено."
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "Додавання нового зʼєднання Ethernet"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "Додавання нового зʼєднання PPPoE"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "Додавання нового зʼєднання Wi-Fi"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "Зʼєднання {name} видалено."
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr "Не вдалося видалити зʼєднання: Зʼєднання не знайдено."
@@ -4736,20 +4719,20 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr "Підʼєднання до сервісів VPN"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr "OpenVPN"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr "Віртуальна приватна мережа"
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4864,15 +4847,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr "PageKite"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr "Публічна видимість"
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr "Домен PageKite"
@@ -4980,38 +4963,38 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr "Вебсервер (HTTP)"
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr "Сайт буде доступний за адресою http://{0}"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr "Вебсервер (HTTPS)"
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr "Сайт доступний за адресою https://{0}"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr "Захищена оболонка (SSH)"
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
-"Дивіться інструкції налаштування клієнта SSH"
+"Дивіться інструкції налаштування клієнта SSH"
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr "Продуктивність"
@@ -5028,7 +5011,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr "Моніторинг системи"
@@ -5036,7 +5019,7 @@ msgstr "Моніторинг системи"
msgid "Restart or shut down the system."
msgstr "Перезапустити або вимкнути систему."
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "Живлення"
@@ -5111,15 +5094,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr "Privoxy"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr "Веб-проксі"
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -5152,11 +5135,11 @@ msgstr ""
"клієнти для настільного ПК "
"і мобільного."
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr "Quassel"
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr "Клієнт IRC"
@@ -5186,12 +5169,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr "Radicale"
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr "Календар і адресна книга"
@@ -5301,7 +5284,7 @@ msgstr ""
"Google (https://www.google.com/settings/security/lesssecureapps)."
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr "Клієнт ел. пошти"
@@ -5328,8 +5311,8 @@ msgid ""
"When enabled, RSS-Bridge can be accessed by any "
"user belonging to the feed-reader group."
msgstr ""
-"Коли дозволено, RSS-Bridge може бути доступним для будь-якого користувача, що належить до групи feed-reader."
+"Коли дозволено, RSS-Bridge може бути доступним для будь-якого користувача, що належить до групи feed-reader."
#: plinth/modules/rssbridge/__init__.py:27
#, python-brace-format
@@ -5339,16 +5322,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr "Читати і підписатися на стрічки новин"
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5383,15 +5366,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr "Доступ до приватних поширень"
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr "Samba"
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr "Мережеве сховище файлів"
@@ -5515,15 +5498,15 @@ msgstr ""
"Searx може використовуватися для обходу стеження та профілювання пошуковими "
"системами."
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr "Пошук в Інтернеті"
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr "Searx"
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr "Вебпошук"
@@ -5612,7 +5595,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr "Звіт безпеки"
@@ -5677,12 +5660,12 @@ msgstr "Ні"
msgid "Not running"
msgstr "Не запущено"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr "Оновлено конфіґурацію безпеки"
@@ -5698,11 +5681,11 @@ msgstr ""
"Зауважте, що Shaarli підтримує лише одну користувацьку обліківку, яку можна "
"налаштувати під час початкового відвідування."
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "Shaarli"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr "Закладки"
@@ -5732,11 +5715,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr "Проксі Socks5"
@@ -5767,7 +5750,7 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr "Метод шифрування. Має відповідати налаштуванням на сервері."
-#: plinth/modules/sharing/__init__.py:20
+#: plinth/modules/sharing/__init__.py:21
#, python-brace-format
msgid ""
"Sharing allows you to share files and folders on your {box_name} over the "
@@ -5776,7 +5759,7 @@ msgstr ""
"Обмін дозволяє Вам обмінюватися файлами і теками з Вашого {box_name}, через "
"Інтернет, до обраної групи користувачів."
-#: plinth/modules/sharing/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr "Обмін"
@@ -5826,28 +5809,28 @@ msgstr "Ділянка з такою назвою вже існує."
msgid "Shares should be either public or shared with at least one group"
msgstr "Ділянка має бути спільною або публічною для щонайменше однієї групи"
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr "Додати ділянку"
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr "Ще нема налаштованих спільних ділянок."
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr "Шлях на диску"
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr "З групами"
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr "публічний доступ"
@@ -5902,7 +5885,7 @@ msgstr ""
"не є заміною резервних копій, поки вони "
"не зберігаються на одному розділі. "
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr "Зрізи сховища"
@@ -6005,7 +5988,7 @@ msgstr "Дата"
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr "Видалити зріз"
@@ -6053,53 +6036,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr "створено вручну"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr "за часом"
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr "apt"
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr "Керування зрізами"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr "Створено зріз."
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr "Налаштування зрізів сховища оновлено"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "Помилка дії: {0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr "Видалити вибрані зрізи"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr "Зріз зараз використовується. Повторіть пізніше."
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "Відкочено до зрізу #{number}."
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr "Систему потрібно перезапустити, щоб завершити відкат."
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -6111,7 +6094,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr "Сервер захищеної оболонки (SSH)"
@@ -6157,7 +6140,7 @@ msgstr "автентифікація SSH із вимкненим паролем.
msgid "SSH authentication with password enabled."
msgstr "автентифікація SSH із дозволеним паролем."
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -6176,110 +6159,110 @@ msgid ""
"You can view the storage media currently in use, mount and unmount removable "
"media, expand the root partition etc."
msgstr ""
-"Цей модуль дозволяє Вам керувати сховищем даних, яке привʼязане до {box_name}"
-". Під час використання сховище даних можна переглядати, монтувати і "
-"відмонтовувати знімні накопичувачі, розширювати розділ root тощо."
+"Цей модуль дозволяє Вам керувати сховищем даних, яке привʼязане до "
+"{box_name}. Під час використання сховище даних можна переглядати, монтувати "
+"і відмонтовувати знімні накопичувачі, розширювати розділ root тощо."
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr "Сховище"
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} байтів"
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} КБ"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} МБ"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} ҐБ"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} ТБ"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr "Операція невдала."
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr "Операцію скасовано."
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr "Пристрій вже відмонтований."
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr "Час операції вийшов."
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr "Операція вже була скасована."
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr "Пристрій уже змонтовано."
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr "Пристрій не змонтовано."
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr "Пристрій змонтовано іншим користувачем."
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
"Мало місця в розділі системи: {percent_used}% використано, {free_space} "
"вільно."
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr "Мало місця на диску"
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6415,16 +6398,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr "Адміністрування програми Syncthing"
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr "Syncthing"
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr "Синхронізація файлів"
@@ -6448,40 +6431,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr "Tor"
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6587,7 +6570,7 @@ msgstr "Сервіс Onion"
msgid "Ports"
msgstr "Порти"
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "Налаштування не змінено"
@@ -6639,7 +6622,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr "Transmission"
@@ -6671,11 +6654,11 @@ msgstr ""
"Коли використовуєте мобільний або стільничний застосунок для Tiny Tiny RSS, "
"використовуйте URL /tt-rss-app для зʼєднання."
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr "Tiny Tiny RSS"
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr "Читання новинних стрічок"
@@ -6696,33 +6679,33 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr "Оновлення ПЗ"
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr "FreedomBox оновлено"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr "Не можливо запустити оновлення дистрибутиву"
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr "Оновлення дистрибутиву розпочато"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6812,6 +6795,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr "Відхилити"
@@ -6923,15 +6907,15 @@ msgstr ""
"користувачі з групи admin можуть змінювати застосунки або системні "
"налаштування."
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr "Користувачі і групи"
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr "Доступ до всіх сервісів і налаштувань системи"
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "Перевірка запису LDAP \"{search_item}\""
@@ -7511,12 +7495,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr "WordPress"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr "Вебсайт і блоґ"
@@ -7563,11 +7547,11 @@ msgstr ""
"Для додаткових користувачів потрібно створити облікові записи і в "
"{box_name}, і в Zoph з тим же іменем користувача."
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr "Zoph"
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr "Упорядник світлин"
@@ -7603,37 +7587,109 @@ msgstr "PPPoE"
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Помилка параметру hostname: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr "Пакунок {package_name} має останню версію ({latest_version})"
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr "Помилка під час встановлення"
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr "встановлення"
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr "завантаження"
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr "зміна медія"
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr "файл конфіґурації: {file}"
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "Встановити застосунки"
+
+#: plinth/setup.py:46
+#, fuzzy
+#| msgid "Updating..."
+msgid "Updating app"
+msgstr "Оновлення..."
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Помилка при встановленні застосунку: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Помилка при встановленні застосунку: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Помилка при встановлені застосунку: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Помилка при встановлені застосунку: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Застосунок встановлено."
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "Востаннє оновлено"
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr "403 Недозволено"
@@ -7949,6 +8005,10 @@ msgstr "Від портів маршрутизатора/WAN"
msgid "To %(box_name)s Ports"
msgstr "До портів %(box_name)s"
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Застосунок встановлено."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr "Встановити цей застосунок?"
@@ -7958,22 +8018,14 @@ msgid "This application needs an update. Update now?"
msgstr "Цей застосунок потребує оновлення. Оновити зараз?"
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-"Інше встановлення або оновлення вже запущено. Будь ласка, зачекайте кілька "
-"хвилин і спробуйте ще раз."
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr "Цей застосунок поки що не доступний у Вашому дистрибутиві."
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr "Перевірити знову"
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
@@ -7983,36 +8035,43 @@ msgstr ""
"конфліктують зі встановленням цієї програми. Наступні пакунки видаляться, "
"якщо Ви продовжите:"
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr "Встановити"
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr "Оновити"
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr "Виконання передінсталяційних операцій"
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr "Виконання післяінсталяційних операцій"
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr "Встановлюється %(package_names)s: %(status)s"
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "%(percentage)s%% завершено"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr "Gujarati"
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "Використання DNSSEC на IPv{kind}"
+
+#~ msgid ""
+#~ "Another installation or upgrade is already running. Please wait for a few "
+#~ "moments before trying again."
+#~ msgstr ""
+#~ "Інше встановлення або оновлення вже запущено. Будь ласка, зачекайте "
+#~ "кілька хвилин і спробуйте ще раз."
+
+#~ msgid "Performing pre-install operation"
+#~ msgstr "Виконання передінсталяційних операцій"
+
+#~ msgid "Performing post-install operation"
+#~ msgstr "Виконання післяінсталяційних операцій"
+
+#, python-format
+#~ msgid "Installing %(package_names)s: %(status)s"
+#~ msgstr "Встановлюється %(package_names)s: %(status)s"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "%(percentage)s%% завершено"
+
#~ 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."
diff --git a/plinth/locale/vi/LC_MESSAGES/django.po b/plinth/locale/vi/LC_MESSAGES/django.po
index ed8582a53..08bda1003 100644
--- a/plinth/locale/vi/LC_MESSAGES/django.po
+++ b/plinth/locale/vi/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2021-07-28 08:34+0000\n"
"Last-Translator: bruh \n"
"Language-Team: Vietnamese bất kỳ người dùng nào"
"a> trên {box_name} thuộc về nhóm admin."
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Cockpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "Quản trị máy chủ"
@@ -1208,18 +1194,18 @@ msgstr ""
"Ở đây bạn có thể đặt một số tùy chọn thiết lập chung như tên máy chủ, tên "
"miền, trang chủ của máy chủ web, v.v."
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "Thiết lập chung"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "Thiết lập"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1395,11 +1381,11 @@ msgstr ""
"\"{e_url}\">ejabberd cần phải được thiết lập với các chi tiết được cung "
"cấp ở đây."
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "Coturn"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr "Trợ giúp cho VoIP"
@@ -1423,11 +1409,11 @@ msgstr ""
"Máy chủ thời gian mạng là một chương trình giữ cho thời gian hệ thống được "
"đồng bộ với các máy chủ trên Internet."
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "Ngày & Giờ"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "Đã đồng bộ thời gian đến máy chủ NTP"
@@ -1468,17 +1454,17 @@ msgstr ""
"Mật khẩu mặc định là 'deluge', nhưng bạn nên đăng nhập và đổi nó ngay lập "
"tức sau khi bật dịch vụ này."
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "Tải các tệp xuống bằng các ứng dụng BitTorrent"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "Deluge"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "Ứng dụng khách trên web cho BitTorrent"
@@ -1498,49 +1484,49 @@ msgstr ""
"Kiểm tra chẩn đoán hệ thống sẽ chạy một số phép thử trên hệ thống của bạn để "
"xác nhận rằng các ứng dụng và dịch vụ đang hoạt động như mong đợi."
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "Chẩn đoán"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr "đã qua"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr "đã trượt"
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr "lỗi"
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr "cảnh báo"
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr "MiB"
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr "GiB"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr "Bạn nên tắt một số ứng dụng để sử dụng ít bộ nhớ hơn."
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr "Bạn không nên cài đặt bất kỳ ứng dụng mới nào trên hệ thống này."
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
@@ -1549,7 +1535,7 @@ msgstr ""
"Hệ thống còn ít bộ nhớ: đã sử dụng {percent_used}%, còn trống "
"{memory_available} {memory_available_unit}. {advice_message}"
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr "Ít bộ nhớ"
@@ -1651,11 +1637,11 @@ msgstr ""
"phí dựa trên URL cập nhật tại freedns.afraid.org."
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "Ứng dụng khách DNS động"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr "Tên miền động"
@@ -1787,9 +1773,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1875,12 +1863,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr ""
@@ -1975,7 +1963,7 @@ msgstr ""
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -2020,23 +2008,23 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
#, fuzzy
#| msgid "Domain Name Server"
msgid "Email Server"
msgstr "Máy chủ tên miền"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
#, fuzzy
#| msgid "Manage Libraries"
msgid "My Email Aliases"
msgstr "Quản lý thư viện"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
#, fuzzy
#| msgid "Manage Libraries"
msgid "Manage Aliases for Mailbox"
@@ -2076,7 +2064,7 @@ msgstr ""
msgid "Aliases"
msgstr "Quản lý thư viện"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr ""
@@ -2163,7 +2151,7 @@ msgid ""
"configured reduces risk of security threat from the Internet."
msgstr ""
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr ""
@@ -2300,15 +2288,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2404,54 +2392,54 @@ msgstr ""
msgid "Delete this repository permanently?"
msgstr ""
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr ""
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr ""
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr ""
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr ""
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr ""
@@ -2729,19 +2717,19 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr ""
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr ""
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr ""
@@ -2794,15 +2782,15 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr ""
@@ -2856,32 +2844,32 @@ msgid ""
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
@@ -2898,11 +2886,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr ""
@@ -2934,11 +2922,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -2958,11 +2946,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr ""
@@ -2984,15 +2972,15 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -3055,36 +3043,36 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, 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:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
@@ -3106,7 +3094,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr ""
@@ -3210,12 +3198,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3278,41 +3266,41 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Domain name set"
msgid "Domain name updated"
msgstr "Đã đặt tên miền"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
#, fuzzy
#| msgid "Domain name set"
msgid "Site name updated"
@@ -3327,11 +3315,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr ""
@@ -3376,7 +3364,7 @@ msgstr ""
msgid "Address"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3387,15 +3375,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3448,11 +3436,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr ""
@@ -3494,17 +3482,17 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
#, fuzzy
#| msgid "Password added."
msgid "Join password changed"
msgstr "Đã thêm mật khẩu."
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3517,7 +3505,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr ""
@@ -3537,27 +3525,22 @@ msgstr ""
msgid "Services"
msgstr ""
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr ""
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr ""
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
@@ -4034,7 +4017,7 @@ msgid "This connection is not active."
msgstr ""
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr ""
@@ -4077,7 +4060,7 @@ msgid "Create Connection"
msgstr ""
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr ""
@@ -4097,13 +4080,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr ""
@@ -4124,7 +4107,7 @@ msgid "Computer"
msgstr ""
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr ""
@@ -4134,13 +4117,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr ""
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
@@ -4323,245 +4306,245 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr ""
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr ""
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr ""
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr ""
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr ""
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr ""
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr ""
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr ""
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr ""
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr ""
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr ""
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr ""
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr ""
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr ""
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr ""
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr ""
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr ""
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr ""
@@ -4576,20 +4559,20 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4697,15 +4680,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr ""
@@ -4811,36 +4794,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -4857,7 +4840,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr ""
@@ -4865,7 +4848,7 @@ msgstr ""
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr ""
@@ -4936,15 +4919,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -4968,11 +4951,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr ""
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr ""
@@ -4997,12 +4980,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -5092,7 +5075,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr ""
@@ -5133,16 +5116,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5177,15 +5160,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr ""
@@ -5305,15 +5288,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr ""
@@ -5394,7 +5377,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr ""
@@ -5459,12 +5442,12 @@ msgstr ""
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr ""
@@ -5478,11 +5461,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5512,11 +5495,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5545,14 +5528,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr ""
@@ -5600,28 +5583,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -5667,7 +5650,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr ""
@@ -5761,7 +5744,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr ""
@@ -5809,53 +5792,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr ""
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -5867,7 +5850,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -5908,7 +5891,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -5931,104 +5914,104 @@ msgstr ""
"của bạn. Bạn có thể xem phương tiện lưu trữ hiện đang sử dụng, gắn và bỏ gắn "
"phương tiện có thể rút ra, mở rộng phân vùng root, v.v."
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr "Thiết bị này đã đang bỏ gắn rồi."
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr "Đang thử bỏ gắn một thiết bị đang bận."
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr "Thiết bị này đã được gắn rồi."
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr "Thiết bị này chưa được gắn."
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr "Thiết bị này được một người dùng khác gắn."
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6162,16 +6145,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -6191,40 +6174,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6330,7 +6313,7 @@ msgstr ""
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr ""
@@ -6381,7 +6364,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr ""
@@ -6411,11 +6394,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6436,33 +6419,33 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6540,6 +6523,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6643,15 +6627,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -7216,12 +7200,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr ""
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr ""
@@ -7256,11 +7240,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7294,37 +7278,103 @@ msgstr ""
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "Lỗi khi đặt tên máy chủ: {exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+msgid "Installing app"
+msgstr ""
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "Lỗi khi cài đặt ứng dụng: {string} {details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "Lỗi khi cài đặt ứng dụng: {string} {details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "Lỗi khi cài đặt ứng dụng: {error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "Lỗi khi cài đặt ứng dụng: {error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "Ứng dụng đã được cài đặt."
+
+#: plinth/setup.py:91
+msgid "App updated"
+msgstr ""
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -7612,6 +7662,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr ""
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "Ứng dụng đã được cài đặt."
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr ""
@@ -7621,52 +7675,28 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr "Cập nhật"
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr ""
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr ""
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""
diff --git a/plinth/locale/zh_Hans/LC_MESSAGES/django.po b/plinth/locale/zh_Hans/LC_MESSAGES/django.po
index 75cd319cc..2b4ec03ca 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: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2022-07-20 07:18+0000\n"
"Last-Translator: Eric \n"
"Language-Team: Chinese (Simplified) calibre组的用户才能够访问该应用程序。所有有权限的用户都可以"
"使用所有的图书馆。"
-#: plinth/modules/calibre/__init__.py:57
+#: plinth/modules/calibre/__init__.py:55
msgid "Use calibre e-book libraries"
msgstr "使用 calibre 电子书库"
-#: plinth/modules/calibre/__init__.py:60 plinth/modules/calibre/manifest.py:6
+#: plinth/modules/calibre/__init__.py:58 plinth/modules/calibre/manifest.py:6
msgid "calibre"
msgstr "calibre"
-#: plinth/modules/calibre/__init__.py:61
+#: plinth/modules/calibre/__init__.py:59
msgid "E-book Library"
msgstr "电子书库"
@@ -1082,20 +1068,20 @@ msgstr "转到库%(library)s"
msgid "Delete library %(library)s"
msgstr "删除站点 %(library)s"
-#: plinth/modules/calibre/views.py:39
+#: plinth/modules/calibre/views.py:41
msgid "Library created."
msgstr "创建了库。"
-#: plinth/modules/calibre/views.py:50
+#: plinth/modules/calibre/views.py:52
msgid "An error occurred while creating the library."
msgstr "在创建库时发生了一个错误。"
-#: plinth/modules/calibre/views.py:64 plinth/modules/gitweb/views.py:138
+#: plinth/modules/calibre/views.py:66 plinth/modules/gitweb/views.py:141
#, python-brace-format
msgid "{name} deleted."
msgstr "{name} 已删除。"
-#: plinth/modules/calibre/views.py:68 plinth/modules/gitweb/views.py:142
+#: plinth/modules/calibre/views.py:70 plinth/modules/gitweb/views.py:145
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr "不能删除 {name}:{error}"
@@ -1130,12 +1116,12 @@ msgid ""
msgstr ""
"它可以由属于管理组的{box_name}上的任何用户访问。"
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Cockpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "服务器管理"
@@ -1145,18 +1131,18 @@ msgid ""
"name, webserver home page etc."
msgstr "在这里你可以设置一些一般的配置选项,如主机名、域名、网络服务器主页等。"
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "常规配置"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "配置"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1323,11 +1309,11 @@ msgstr ""
"它并不意味着可以被用户直接使用。诸如Matrix Synapse或"
"ejabberd等服务器需要用这里提供的细节进行配置。"
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "Coturn"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr "网络电话助手"
@@ -1349,11 +1335,11 @@ msgid ""
"synchronization with servers on the Internet."
msgstr "网络时间服务是与 Internet 上的服务器同步系统时间的一个程序。"
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "日期与时间"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "时间同步到NTP服务器"
@@ -1390,17 +1376,17 @@ msgid ""
"immediately after enabling this service."
msgstr "默认密码是“deluge”,但是你需要在启用此服务以后立刻登录并修改它。"
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "使用BitTorrent应用程序下载文件"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "启用 Deluge"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "BitTorrent 网页客户端"
@@ -1419,49 +1405,49 @@ msgid ""
msgstr ""
"系统诊断将运行测试程序检查您的系统以确认应用程序和服务正在按预期方式运行。"
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr "诊断程序"
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr "通过了"
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr "失败"
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr "错误"
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr "警告"
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr "MiB"
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr "GiB"
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr "你应该禁用一些应用程序以减少内存的使用。"
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr "你不应该在这个系统上安装任何新的应用程序。"
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
@@ -1470,7 +1456,7 @@ msgstr ""
"系统内存不足:已使用 {percent_used},{memory_available} "
"{memory_available_unit}可用。{advice_message}"
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr "低内存"
@@ -1562,11 +1548,11 @@ msgstr ""
"服务,或您可以在freedns.afraid.org 找到免费更新网址服务。"
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr "动态 DNS 客户端"
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr "动态域名"
@@ -1685,9 +1671,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1771,12 +1759,12 @@ msgstr ""
"ejabberd需要一个STUN/TURN服务器用于音频/视频呼叫。安装Coturn应用程序或配置一个外部服务器。"
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr "ejabberd"
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr "聊天服务器"
@@ -1874,7 +1862,7 @@ msgstr ""
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1922,19 +1910,19 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
msgid "Email Server"
msgstr "邮件服务器"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
msgid "My Email Aliases"
msgstr "我的邮箱别名"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
msgid "Manage Aliases for Mailbox"
msgstr "管理邮箱别名"
@@ -1968,7 +1956,7 @@ msgstr ""
msgid "Aliases"
msgstr "别名"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr "Roundcube"
@@ -2051,7 +2039,7 @@ msgstr ""
"防火墙控制你的 {box_name} 上的进出网络流量。启用并正确配置防火墙上可以减少来"
"自互联网的安全威胁。"
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr "防火墙"
@@ -2194,15 +2182,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2298,54 +2286,54 @@ msgstr "删除 Git 存储库 %(name)s "
msgid "Delete this repository permanently?"
msgstr "永久删除此存储库?"
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr "已创建储存库。"
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr "创建存储库时发生错误。"
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr "已编辑储存库。"
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr "编辑存储库"
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr "文档"
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr "手册"
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr "获取帮助"
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr "贡献"
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "关于"
@@ -2651,19 +2639,19 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr "管理 I2P 应用程序"
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr "匿名网络"
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr "I2P 代理"
@@ -2718,15 +2706,15 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr "ikiwiki"
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr "Wiki 和博客"
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr "查看和编辑 wiki 应用程序"
@@ -2781,32 +2769,32 @@ msgid ""
msgstr ""
"此操作将删除所有文章、 网页和评论包括修订历史记录。 永久删除此 wiki 或博客吗?"
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr "创建 wiki {name}。"
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr "不能创建 wiki:{error}"
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr "已创建的博客 {name}。"
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr "不能创建博客:{error}"
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr "{title} 已被删除。"
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr "无法删除 {title}: {error}"
@@ -2825,11 +2813,11 @@ msgstr ""
"要使用它, 下载 Gobby 的桌面客户端并"
"安装。然后启动 Gobby 并选择“连接到服务器”并书入你的 {box_name} 域名即可。"
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr "Gobby 服务器"
@@ -2861,11 +2849,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -2885,11 +2873,11 @@ msgid ""
"running locally."
msgstr "JSXC 是一个 XMPP 网页客户端,主要用于连接本地 XMPP 服务器的连接。"
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr "聊天客户端"
@@ -2917,15 +2905,15 @@ msgstr ""
"(ISRG)为公众利益而设立。请在使用此服务之前阅读并同意 Let's Encypt 订阅者协议。"
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr "Let's Encrypt"
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr "证书"
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -2990,36 +2978,36 @@ msgstr ""
"还没有配置域名。配置域名可以为它们获得相应的证"
"书。"
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, python-brace-format
msgid ""
"Certificate successfully revoked for domain {domain}.This may take a few "
"moments to take effect."
msgstr "成功吊销了域名 {domain} 的证书。可能需要一会儿才能生效。"
-#: plinth/modules/letsencrypt/views.py:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr "未能为域名 {domain} 获取证书:{error}"
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr "成功删除域名 {domain} 的证书"
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr "删除 {domain} 域名证书失败:{error}"
@@ -3041,7 +3029,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr "Matrix Synapse"
@@ -3147,12 +3135,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr "共笔文档"
@@ -3213,39 +3201,39 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr "密码已更新"
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr "公开注册已启用"
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr "已禁用公开注册"
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr "已启用私密模式"
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr "已禁用私密模式"
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr "默认皮肤已更改"
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
msgid "Domain name updated"
msgstr "域名已更新"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
msgid "Site name updated"
msgstr "站点名已更新"
@@ -3261,11 +3249,11 @@ msgstr ""
"(30000)上运行 Minetest 服务器。要连接到服务器,需要 Minetest 客户端。"
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr "方块沙盒"
@@ -3310,7 +3298,7 @@ msgstr "禁用后,玩家不能死或受到任何伤害。"
msgid "Address"
msgstr "地址"
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3321,15 +3309,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr "简单媒体服务器"
@@ -3384,11 +3372,11 @@ msgstr ""
"您可以使用常规端口 64738 连接到您的 Mumble 服务器。您可以从桌面和移动设备连"
"接 Mumble 客户端。"
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr "语音聊天"
@@ -3430,15 +3418,15 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr "超级用户密码更新成功。"
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
msgid "Join password changed"
msgstr "加入密码已更改"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3451,7 +3439,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr "名称服务"
@@ -3471,27 +3459,22 @@ msgstr "安全 Shell"
msgid "Services"
msgstr "服务"
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr "网络"
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr "在 IPv{kind} 上使用 DNSSEC"
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr "连接类型"
@@ -3978,7 +3961,7 @@ msgid "This connection is not active."
msgstr "此连接未处于激活状态。"
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr "安全"
@@ -4025,7 +4008,7 @@ msgid "Create Connection"
msgstr "创建连接"
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr "删除连接"
@@ -4045,13 +4028,13 @@ msgstr "间距"
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr "以太网"
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr "Wi-Fi"
@@ -4072,7 +4055,7 @@ msgid "Computer"
msgstr "计算机"
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr "编辑连接"
@@ -4082,13 +4065,13 @@ msgstr "连接"
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr "附近的无线网络"
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr "添加连接"
@@ -4271,245 +4254,245 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr "已禁用"
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr "自动"
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr "手动"
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr "共享"
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr "不受管理的"
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr "不可用"
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr "已断开连接"
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr "正在准备"
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr "连接"
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr "需要身份验证"
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr "已激活"
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr "停用"
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr "没有原因"
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr "设备现在处于受管状态"
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr "设备现在处于不受管状态"
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr "配置失败"
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr "DHCP 客户端失败"
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr "共享连接服务失败"
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr "设备被移除"
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr "用户断开了设备连接"
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr "未找到 Wi-Fi 网络"
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr "通用"
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr "TUN 或 TAP 接口"
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr "ad-hoc"
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr "基础架构"
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr "访问点"
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr "mesh 网络点"
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr "网络连接"
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr "不能显示连接: 找不到连接。"
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr "连接信息"
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr "不能编辑连接: 找不到连接。"
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr "这种类型的连接尚没有引入。"
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr "激活的连接 {name}。"
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr "未能激活连接: 找不到连接。"
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr "未能激活连接 {name}: 没有合适的设备是可用。"
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr "停用的连接 {name}。"
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr "无法取消激活连接: 找不到连接。"
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr "添加新的常规连接"
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr "添加新的以太网连接"
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr "添加新的 PPPoE 连接"
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr "添加新的 Wi-Fi 连接"
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr "连接 {name} 已删除。"
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr "删除连接失败: 找不到连接。"
@@ -4528,20 +4511,20 @@ msgstr ""
"供的私人/内部服务。您还可以通过 {box_name} 访问互联网的其他部分,以增加安全性"
"和匿名性。"
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr "连接到 VPN 服务"
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr "OpenVPN"
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr "虚拟专用网络"
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4658,15 +4641,15 @@ msgstr ""
"使用任何 pagekite 服务提供商,例如pagekite."
"net。将来,您或许可以使用好友的 {box_name} 来使用此服务。"
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr "PageKite"
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr "公开可见性"
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr "PageKite 域名"
@@ -4776,29 +4759,29 @@ msgstr ""
"警告:
您的 PageKite 前端服务器可能不支持您在此处定义的所有协议/端"
"口组合。例如,已知443以外的端口上的HTTPS会导致问题。"
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr "Web 服务器(HTTP)"
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr "网站可从 http://{0} 访问"
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr "Web 服务器(HTTPS)"
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr "网站可从 https://{0} 访问"
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr "安全 Shell(SSH)"
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
@@ -4807,7 +4790,7 @@ msgstr ""
"SshOverPageKite/\"> 说明"
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -4824,7 +4807,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr "系统监控"
@@ -4832,7 +4815,7 @@ msgstr "系统监控"
msgid "Restart or shut down the system."
msgstr "重新启动或关闭系统。"
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr "电源"
@@ -4910,15 +4893,15 @@ msgstr ""
"config.privoxy.org\">http://config.privoxy.org/ 或 http://p.p 中查看其配置详细信息和文档。"
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr "Privoxy"
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr "Web 代理"
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr "在 tcp{kind} 上通过 {proxy} 访问 {url}"
@@ -4949,11 +4932,11 @@ msgstr ""
"quassel-irc.org/downloads\">桌面和移动设备客户端连接到 Quassel 的核心。"
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr ""
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr "IRC 客户端"
@@ -4982,12 +4965,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr "日历和通讯录"
@@ -5089,7 +5072,7 @@ msgstr ""
"href=\"https://www.google.com/settings/security/lesssecureapps\">https://www."
"google.com/settings/security/lesssecureapps)中启用“安全性较低的应用”。"
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr "邮件客户端"
@@ -5127,16 +5110,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr "RSS-Bridge"
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5171,15 +5154,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr "网络文件存储"
@@ -5299,15 +5282,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr "Web 搜索"
@@ -5390,7 +5373,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr "安全报告"
@@ -5455,12 +5438,12 @@ msgstr ""
msgid "Not running"
msgstr "未运行"
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr "设置限制访问错误:{exception}"
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr "安全配置已更新"
@@ -5474,11 +5457,11 @@ msgid ""
"to setup on the initial visit."
msgstr "注意,Shaarli 只支持单用户帐户,您需要在初次访问时设置该帐户。"
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr "Shaarli"
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr "书签"
@@ -5508,11 +5491,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5541,14 +5524,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr "共享"
@@ -5596,28 +5579,28 @@ msgstr "已存在同名共享。"
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr "添加共享"
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr "共享方式"
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr "群组"
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -5665,7 +5648,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr "存储快照"
@@ -5759,7 +5742,7 @@ msgstr "日期"
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr "删除快照"
@@ -5809,53 +5792,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr "回滚到快照 #%(number)s"
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr "已手动创建"
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr "管理快照"
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr "创建快照。"
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr "存储快照配置已更新"
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr "操作错误:{0} [{1}] [{2}]"
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr "已删除选定的快照"
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr "回滚到快照 #{number}。"
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr "系统需要重启以完成完全回滚。"
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr "回滚到快照"
@@ -5867,7 +5850,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr "安全 Shell(SSH)服务器"
@@ -5908,7 +5891,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr "启用密码的 SSH 身份验证。"
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -5928,104 +5911,104 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr "存储"
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr "{disk_size:.1f} 字节"
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr "{disk_size:.1f} KiB"
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr "{disk_size:.1f} MiB"
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr "{disk_size:.1f} GiB"
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr "{disk_size:.1f} TiB"
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr "已经在卸载设备。"
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr "已挂载此设备。"
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr "此设备未挂载。"
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6163,16 +6146,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr "管理 Syncthing 程序"
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -6196,40 +6179,40 @@ msgid ""
"TCP port 9050."
msgstr "你的 {box_name} 有一个 Tor SOCKS 端口在 TCP 端口 9050 上对内网可用。"
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr "Tor 洋葱服务"
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr "Tor 网桥中继"
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr "Tor 中继端口可用"
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr "已注册 Obfs3 传输"
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr "已注册 Obfs4 传输"
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr "在 tcp{kind} 上通过 Tor 访问 {url}"
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr "确认使用 Tor 通过 tcp{kind} 访问 {url}"
@@ -6343,7 +6326,7 @@ msgstr "洋葱服务"
msgid "Ports"
msgstr "端口"
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr "设置未改变"
@@ -6391,7 +6374,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr "Transmission"
@@ -6420,11 +6403,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr "新闻源阅读器"
@@ -6445,33 +6428,33 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr "软件更新"
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr "FreedomBox 已更新"
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr "已启动分发更新"
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6554,6 +6537,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6659,15 +6643,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr "用户和组"
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr "请检查 LDAP 条目“{search_item}”"
@@ -7239,12 +7223,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr "WordPress"
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr "网站和博客"
@@ -7279,11 +7263,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7317,37 +7301,110 @@ msgstr "PPPoE"
msgid "Generic"
msgstr "通用"
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "设置主机名错误:{exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, fuzzy, python-brace-format
+#| msgid "Service disabled: {name}"
+msgid "Finished: {name}"
+msgstr "已禁用的服务:{name}"
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr "安装时错误"
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr "安装"
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr "下载中"
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr "媒体改变"
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr "配置文件:{file}"
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+#, fuzzy
+#| msgid "Install Apps"
+msgid "Installing app"
+msgstr "安装应用"
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "安装应用程序出错:{string}{details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "安装应用程序出错:{string}{details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "安装应用程序出错:{error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "安装应用程序出错:{error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "应用程序已安装。"
+
+#: plinth/setup.py:91
+#, fuzzy
+#| msgid "Last update"
+msgid "App updated"
+msgstr "最后一次更新"
+
+#: plinth/setup.py:411
+#, fuzzy
+#| msgid "Upgrade Packages"
+msgid "Updating app packages"
+msgstr "升级软件包"
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -7647,6 +7704,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr "到 %(box_name)s 端口"
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "应用程序已安装。"
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr "安装此应用程序?"
@@ -7656,56 +7717,50 @@ msgid "This application needs an update. Update now?"
msgstr "此应用程序需要一次更新。立即更新?"
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr "此应用程序目前在您的发行版中不可用。"
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr "安装"
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr "更新"
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr "执行安装前操作"
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr "执行安装后操作"
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr "正在安装 %(package_names)s:%(status)s"
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr "已完成 %(percentage)s%%"
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr "古吉拉特语"
+#, python-brace-format
+#~ msgid "Using DNSSEC on IPv{kind}"
+#~ msgstr "在 IPv{kind} 上使用 DNSSEC"
+
+#~ msgid "Performing pre-install operation"
+#~ msgstr "执行安装前操作"
+
+#~ msgid "Performing post-install operation"
+#~ msgstr "执行安装后操作"
+
+#, python-format
+#~ msgid "Installing %(package_names)s: %(status)s"
+#~ msgstr "正在安装 %(package_names)s:%(status)s"
+
+#, python-format
+#~ msgid "%(percentage)s%% complete"
+#~ msgstr "已完成 %(percentage)s%%"
+
#~ 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."
@@ -8460,9 +8515,6 @@ msgstr "古吉拉特语"
#~ msgid "Service enabled: {name}"
#~ msgstr "启用的服务:{name}"
-#~ msgid "Service disabled: {name}"
-#~ msgstr "已禁用的服务:{name}"
-
#~ msgid "PageKite Account"
#~ msgstr "PageKite 帐户"
@@ -8735,9 +8787,6 @@ msgstr "古吉拉特语"
#~ msgid "Automatic Upgrades"
#~ msgstr "自动升级"
-#~ msgid "Upgrade Packages"
-#~ msgstr "升级软件包"
-
#, fuzzy
#~| msgid "Create User"
#~ msgid "Create archive"
diff --git a/plinth/locale/zh_Hant/LC_MESSAGES/django.po b/plinth/locale/zh_Hant/LC_MESSAGES/django.po
index cd02ef7ec..06f3829d3 100644
--- a/plinth/locale/zh_Hant/LC_MESSAGES/django.po
+++ b/plinth/locale/zh_Hant/LC_MESSAGES/django.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2022-08-01 20:17-0400\n"
+"POT-Creation-Date: 2022-08-15 20:19-0400\n"
"PO-Revision-Date: 2021-12-23 12:50+0000\n"
"Last-Translator: pesder \n"
"Language-Team: Chinese (Traditional) calibre 群組的使用者可以存取這個 app。每個能存取的使用者都"
"可以使用所有的圖書館。"
-#: plinth/modules/calibre/__init__.py:57
+#: plinth/modules/calibre/__init__.py:55
msgid "Use calibre e-book libraries"
msgstr "使用 calibre 電子書庫"
-#: plinth/modules/calibre/__init__.py:60 plinth/modules/calibre/manifest.py:6
+#: plinth/modules/calibre/__init__.py:58 plinth/modules/calibre/manifest.py:6
msgid "calibre"
msgstr "calibre"
-#: plinth/modules/calibre/__init__.py:61
+#: plinth/modules/calibre/__init__.py:59
msgid "E-book Library"
msgstr "電子書圖書館"
@@ -1090,20 +1076,20 @@ msgstr "前往至圖書館 %(library)s"
msgid "Delete library %(library)s"
msgstr "刪除圖書館 %(library)s"
-#: plinth/modules/calibre/views.py:39
+#: plinth/modules/calibre/views.py:41
msgid "Library created."
msgstr "圖書已建立。"
-#: plinth/modules/calibre/views.py:50
+#: plinth/modules/calibre/views.py:52
msgid "An error occurred while creating the library."
msgstr "建立圖書館時發生錯誤。"
-#: plinth/modules/calibre/views.py:64 plinth/modules/gitweb/views.py:138
+#: plinth/modules/calibre/views.py:66 plinth/modules/gitweb/views.py:141
#, python-brace-format
msgid "{name} deleted."
msgstr "{name} 已刪除。"
-#: plinth/modules/calibre/views.py:68 plinth/modules/gitweb/views.py:142
+#: plinth/modules/calibre/views.py:70 plinth/modules/gitweb/views.py:145
#, python-brace-format
msgid "Could not delete {name}: {error}"
msgstr "無法刪除 {name}: {error}"
@@ -1139,12 +1125,12 @@ msgstr ""
"它可以由 {box_name} 上屬於 admin 群組的 任何使用者"
"a>存取。"
-#: plinth/modules/cockpit/__init__.py:54 plinth/modules/cockpit/manifest.py:9
+#: plinth/modules/cockpit/__init__.py:52 plinth/modules/cockpit/manifest.py:9
#: plinth/modules/performance/manifest.py:9
msgid "Cockpit"
msgstr "Cockpit"
-#: plinth/modules/cockpit/__init__.py:56
+#: plinth/modules/cockpit/__init__.py:54
msgid "Server Administration"
msgstr "伺服器管理"
@@ -1156,18 +1142,18 @@ msgstr ""
"在這裡您可以設定某些一般設定選項,像是主機名稱、網域名稱、網頁伺服器首頁等"
"等。"
-#: plinth/modules/config/__init__.py:55
+#: plinth/modules/config/__init__.py:53
msgid "General Configuration"
msgstr "一般配置"
-#: plinth/modules/config/__init__.py:60
+#: plinth/modules/config/__init__.py:58
#: plinth/modules/names/templates/names.html:30
#: plinth/modules/names/templates/names.html:44
-#: plinth/modules/snapshot/views.py:35 plinth/templates/index.html:38
+#: plinth/modules/snapshot/views.py:36 plinth/templates/index.html:38
msgid "Configure"
msgstr "配置"
-#: plinth/modules/config/__init__.py:73 plinth/modules/config/forms.py:68
+#: plinth/modules/config/__init__.py:71 plinth/modules/config/forms.py:68
#: plinth/modules/dynamicdns/forms.py:82
#: plinth/modules/names/templates/names.html:16
msgid "Domain Name"
@@ -1334,11 +1320,11 @@ msgstr ""
"這不是讓使用者直接使用的。伺服器如 Matrix Synapse "
"或 ejabberd 都需要以在這裡提供的資料來設定。"
-#: plinth/modules/coturn/__init__.py:57
+#: plinth/modules/coturn/__init__.py:56
msgid "Coturn"
msgstr "Coturn"
-#: plinth/modules/coturn/__init__.py:58
+#: plinth/modules/coturn/__init__.py:57
msgid "VoIP Helper"
msgstr "VoIP 協助程式"
@@ -1360,11 +1346,11 @@ msgid ""
"synchronization with servers on the Internet."
msgstr "網路時刻伺服器是一種透過網際網路與伺服器同步以維護系統時刻的程式。"
-#: plinth/modules/datetime/__init__.py:68
+#: plinth/modules/datetime/__init__.py:66
msgid "Date & Time"
msgstr "日期 & 時刻"
-#: plinth/modules/datetime/__init__.py:117
+#: plinth/modules/datetime/__init__.py:115
msgid "Time synchronized to NTP server"
msgstr "時刻與 NTP 伺服器同步"
@@ -1401,17 +1387,17 @@ msgid ""
"immediately after enabling this service."
msgstr "預設的密碼是「deluge」,但啟用這個服務後您應該登入並立即改變它。"
-#: plinth/modules/deluge/__init__.py:44
-#: plinth/modules/transmission/__init__.py:64
+#: plinth/modules/deluge/__init__.py:42
+#: plinth/modules/transmission/__init__.py:62
msgid "Download files using BitTorrent applications"
msgstr "使用 BitTorrent 應用程式下載檔案"
-#: plinth/modules/deluge/__init__.py:48 plinth/modules/deluge/manifest.py:6
+#: plinth/modules/deluge/__init__.py:46 plinth/modules/deluge/manifest.py:6
msgid "Deluge"
msgstr "Deluge"
-#: plinth/modules/deluge/__init__.py:50
-#: plinth/modules/transmission/__init__.py:70
+#: plinth/modules/deluge/__init__.py:48
+#: plinth/modules/transmission/__init__.py:68
msgid "BitTorrent Web Client"
msgstr "BitTorrent 網頁客戶端"
@@ -1429,56 +1415,56 @@ msgid ""
"confirm that applications and services are working as expected."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:50
-#: plinth/modules/diagnostics/__init__.py:236
+#: plinth/modules/diagnostics/__init__.py:48
+#: plinth/modules/diagnostics/__init__.py:239
msgid "Diagnostics"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:97
+#: plinth/modules/diagnostics/__init__.py:100
msgid "passed"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:98
-#: plinth/modules/networks/views.py:49
+#: plinth/modules/diagnostics/__init__.py:101
+#: plinth/modules/networks/views.py:50
msgid "failed"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:99
+#: plinth/modules/diagnostics/__init__.py:102
msgid "error"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:100
+#: plinth/modules/diagnostics/__init__.py:103
msgid "warning"
msgstr ""
#. Translators: This is the unit of computer storage Mebibyte similar to
#. Megabyte.
-#: plinth/modules/diagnostics/__init__.py:202
+#: plinth/modules/diagnostics/__init__.py:205
msgid "MiB"
msgstr ""
#. Translators: This is the unit of computer storage Gibibyte similar to
#. Gigabyte.
-#: plinth/modules/diagnostics/__init__.py:207
+#: plinth/modules/diagnostics/__init__.py:210
msgid "GiB"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:214
+#: plinth/modules/diagnostics/__init__.py:217
msgid "You should disable some apps to reduce memory usage."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:219
+#: plinth/modules/diagnostics/__init__.py:222
msgid "You should not install any new apps on this system."
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:231
+#: plinth/modules/diagnostics/__init__.py:234
#, no-python-format, python-brace-format
msgid ""
"System is low on memory: {percent_used}% used, {memory_available} "
"{memory_available_unit} free. {advice_message}"
msgstr ""
-#: plinth/modules/diagnostics/__init__.py:233
+#: plinth/modules/diagnostics/__init__.py:236
msgid "Low Memory"
msgstr ""
@@ -1556,11 +1542,11 @@ msgid ""
"href='http://freedns.afraid.org/' target='_blank'>freedns.afraid.org."
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:64
+#: plinth/modules/dynamicdns/__init__.py:62
msgid "Dynamic DNS Client"
msgstr ""
-#: plinth/modules/dynamicdns/__init__.py:77
+#: plinth/modules/dynamicdns/__init__.py:75
msgid "Dynamic Domain Name"
msgstr ""
@@ -1670,9 +1656,11 @@ msgid "This field is required."
msgstr ""
#: plinth/modules/dynamicdns/templates/dynamicdns.html:11
+#: plinth/modules/ejabberd/templates/ejabberd.html:13
#: plinth/modules/firewall/templates/firewall.html:16
#: plinth/modules/firewall/templates/firewall.html:36
#: plinth/modules/letsencrypt/templates/letsencrypt.html:17
+#: plinth/modules/matrixsynapse/templates/matrix-synapse.html:12
#: plinth/modules/networks/templates/connection_show.html:254
#: plinth/modules/samba/templates/samba.html:67
#: plinth/modules/tor/templates/tor.html:12
@@ -1756,12 +1744,12 @@ msgid ""
"href={coturn_url}>Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:65
+#: plinth/modules/ejabberd/__init__.py:63
msgid "ejabberd"
msgstr ""
-#: plinth/modules/ejabberd/__init__.py:66
-#: plinth/modules/matrixsynapse/__init__.py:71
+#: plinth/modules/ejabberd/__init__.py:64
+#: plinth/modules/matrixsynapse/__init__.py:69
msgid "Chat Server"
msgstr ""
@@ -1856,7 +1844,7 @@ msgstr ""
msgid "Gajim"
msgstr ""
-#: plinth/modules/ejabberd/templates/ejabberd.html:19
+#: plinth/modules/ejabberd/templates/ejabberd.html:18
#, python-format
msgid ""
"Your XMPP server domain is set to %(domainname)s. User IDs will look "
@@ -1901,23 +1889,23 @@ msgid ""
"uninstalled."
msgstr ""
-#: plinth/modules/email/__init__.py:62
+#: plinth/modules/email/__init__.py:61
msgid "Postfix/Dovecot"
msgstr ""
-#: plinth/modules/email/__init__.py:64
+#: plinth/modules/email/__init__.py:63
#, fuzzy
#| msgid "Domain Name Server"
msgid "Email Server"
msgstr "域名服務器 DNS"
-#: plinth/modules/email/__init__.py:84
+#: plinth/modules/email/__init__.py:83
#, fuzzy
#| msgid "Manage Libraries"
msgid "My Email Aliases"
msgstr "管理圖書館"
-#: plinth/modules/email/__init__.py:85
+#: plinth/modules/email/__init__.py:84
#, fuzzy
#| msgid "Manage Libraries"
msgid "Manage Aliases for Mailbox"
@@ -1955,7 +1943,7 @@ msgstr ""
msgid "Aliases"
msgstr "管理圖書館"
-#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:51
+#: plinth/modules/email/manifest.py:12 plinth/modules/roundcube/__init__.py:49
#: plinth/modules/roundcube/manifest.py:6
msgid "Roundcube"
msgstr ""
@@ -2042,7 +2030,7 @@ msgid ""
"configured reduces risk of security threat from the Internet."
msgstr ""
-#: plinth/modules/firewall/__init__.py:62
+#: plinth/modules/firewall/__init__.py:60
msgid "Firewall"
msgstr ""
@@ -2179,15 +2167,15 @@ msgid ""
"gittutorial\">Git tutorial."
msgstr ""
-#: plinth/modules/gitweb/__init__.py:51
+#: plinth/modules/gitweb/__init__.py:49
msgid "Read-write access to Git repositories"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:56 plinth/modules/gitweb/manifest.py:10
+#: plinth/modules/gitweb/__init__.py:54 plinth/modules/gitweb/manifest.py:10
msgid "Gitweb"
msgstr ""
-#: plinth/modules/gitweb/__init__.py:57
+#: plinth/modules/gitweb/__init__.py:55
msgid "Simple Git Hosting"
msgstr ""
@@ -2283,54 +2271,54 @@ msgstr ""
msgid "Delete this repository permanently?"
msgstr ""
-#: plinth/modules/gitweb/views.py:45
+#: plinth/modules/gitweb/views.py:47
msgid "Repository created."
msgstr ""
-#: plinth/modules/gitweb/views.py:69
+#: plinth/modules/gitweb/views.py:71
msgid "An error occurred while creating the repository."
msgstr ""
-#: plinth/modules/gitweb/views.py:84
+#: plinth/modules/gitweb/views.py:86
msgid "Repository edited."
msgstr ""
-#: plinth/modules/gitweb/views.py:89
+#: plinth/modules/gitweb/views.py:91
msgid "Edit repository"
msgstr ""
-#: plinth/modules/help/__init__.py:35
+#: plinth/modules/help/__init__.py:33
msgid "Documentation"
msgstr ""
-#: plinth/modules/help/__init__.py:39 plinth/templates/help-menu.html:20
+#: plinth/modules/help/__init__.py:37 plinth/templates/help-menu.html:20
#: plinth/templates/help-menu.html:21 plinth/templates/index.html:120
msgctxt "User guide"
msgid "Manual"
msgstr ""
-#: plinth/modules/help/__init__.py:43
+#: plinth/modules/help/__init__.py:41
#: plinth/modules/help/templates/help_support.html:9
#: plinth/modules/help/views.py:90 plinth/templates/help-menu.html:27
#: plinth/templates/help-menu.html:28
msgid "Get Support"
msgstr ""
-#: plinth/modules/help/__init__.py:47
+#: plinth/modules/help/__init__.py:45
#: plinth/modules/help/templates/help_feedback.html:9
#: plinth/modules/help/views.py:84 plinth/templates/help-menu.html:33
#: plinth/templates/help-menu.html:34
msgid "Submit Feedback"
msgstr ""
-#: plinth/modules/help/__init__.py:51
+#: plinth/modules/help/__init__.py:49
#: plinth/modules/help/templates/help_contribute.html:9
#: plinth/modules/help/views.py:73 plinth/templates/help-menu.html:39
#: plinth/templates/help-menu.html:40
msgid "Contribute"
msgstr ""
-#: plinth/modules/help/__init__.py:55 plinth/templates/help-menu.html:46
+#: plinth/modules/help/__init__.py:53 plinth/templates/help-menu.html:46
#: plinth/templates/help-menu.html:47
msgid "About"
msgstr "關於"
@@ -2608,19 +2596,19 @@ msgid ""
"configuration process."
msgstr ""
-#: plinth/modules/i2p/__init__.py:52
+#: plinth/modules/i2p/__init__.py:50
msgid "Manage I2P application"
msgstr ""
-#: plinth/modules/i2p/__init__.py:55 plinth/modules/i2p/manifest.py:13
+#: plinth/modules/i2p/__init__.py:53 plinth/modules/i2p/manifest.py:13
msgid "I2P"
msgstr ""
-#: plinth/modules/i2p/__init__.py:56 plinth/modules/tor/__init__.py:55
+#: plinth/modules/i2p/__init__.py:54 plinth/modules/tor/__init__.py:53
msgid "Anonymity Network"
msgstr ""
-#: plinth/modules/i2p/__init__.py:82
+#: plinth/modules/i2p/__init__.py:80
msgid "I2P Proxy"
msgstr ""
@@ -2673,15 +2661,15 @@ msgid ""
"Configuration you can change these permissions or add new users."
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:49 plinth/modules/ikiwiki/manifest.py:6
+#: plinth/modules/ikiwiki/__init__.py:47 plinth/modules/ikiwiki/manifest.py:6
msgid "ikiwiki"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:50
+#: plinth/modules/ikiwiki/__init__.py:48
msgid "Wiki and Blog"
msgstr ""
-#: plinth/modules/ikiwiki/__init__.py:77
+#: plinth/modules/ikiwiki/__init__.py:75
msgid "View and edit wiki applications"
msgstr ""
@@ -2735,32 +2723,32 @@ msgid ""
"history. Delete this wiki or blog permanently?"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:70
+#: plinth/modules/ikiwiki/views.py:74
#, python-brace-format
msgid "Created wiki {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:73
+#: plinth/modules/ikiwiki/views.py:77
#, python-brace-format
msgid "Could not create wiki: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:83
+#: plinth/modules/ikiwiki/views.py:87
#, python-brace-format
msgid "Created blog {name}."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:86
+#: plinth/modules/ikiwiki/views.py:90
#, python-brace-format
msgid "Could not create blog: {error}"
msgstr ""
-#: plinth/modules/ikiwiki/views.py:101
+#: plinth/modules/ikiwiki/views.py:106
#, python-brace-format
msgid "{title} deleted."
msgstr ""
-#: plinth/modules/ikiwiki/views.py:105
+#: plinth/modules/ikiwiki/views.py:110
#, python-brace-format
msgid "Could not delete {title}: {error}"
msgstr ""
@@ -2777,11 +2765,11 @@ msgid ""
"enter your {box_name}'s domain name."
msgstr ""
-#: plinth/modules/infinoted/__init__.py:44
+#: plinth/modules/infinoted/__init__.py:42
msgid "infinoted"
msgstr ""
-#: plinth/modules/infinoted/__init__.py:45
+#: plinth/modules/infinoted/__init__.py:43
msgid "Gobby Server"
msgstr ""
@@ -2813,11 +2801,11 @@ msgstr ""
msgid "Coturn is required to use Janus."
msgstr ""
-#: plinth/modules/janus/__init__.py:44
+#: plinth/modules/janus/__init__.py:42
msgid "Janus"
msgstr ""
-#: plinth/modules/janus/__init__.py:46
+#: plinth/modules/janus/__init__.py:44
msgid "Video Room"
msgstr ""
@@ -2837,11 +2825,11 @@ msgid ""
"running locally."
msgstr ""
-#: plinth/modules/jsxc/__init__.py:44 plinth/modules/jsxc/manifest.py:7
+#: plinth/modules/jsxc/__init__.py:42 plinth/modules/jsxc/manifest.py:7
msgid "JSXC"
msgstr ""
-#: plinth/modules/jsxc/__init__.py:45
+#: plinth/modules/jsxc/__init__.py:43
msgid "Chat Client"
msgstr ""
@@ -2863,15 +2851,15 @@ msgid ""
"\">Let's Encrypt Subscriber Agreement before using this service."
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:61
+#: plinth/modules/letsencrypt/__init__.py:59
msgid "Let's Encrypt"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:62
+#: plinth/modules/letsencrypt/__init__.py:60
msgid "Certificates"
msgstr ""
-#: plinth/modules/letsencrypt/__init__.py:98
+#: plinth/modules/letsencrypt/__init__.py:96
msgid "Cannot test: No domains are configured."
msgstr ""
@@ -2934,36 +2922,36 @@ msgid ""
"domains to be able to obtain certificates for them."
msgstr ""
-#: plinth/modules/letsencrypt/views.py:41
+#: plinth/modules/letsencrypt/views.py:43
#, 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:47
+#: plinth/modules/letsencrypt/views.py:49
#, 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:62
+#: plinth/modules/letsencrypt/views.py:79
#, 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:67
+#: plinth/modules/letsencrypt/views.py:84
#, python-brace-format
msgid "Failed to obtain certificate for domain {domain}: {error}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:94
+#: plinth/modules/letsencrypt/views.py:96
#, python-brace-format
msgid "Certificate successfully deleted for domain {domain}"
msgstr ""
-#: plinth/modules/letsencrypt/views.py:99
+#: plinth/modules/letsencrypt/views.py:101
#, python-brace-format
msgid "Failed to delete certificate for domain {domain}: {error}"
msgstr ""
@@ -2985,7 +2973,7 @@ msgid ""
"Coturn app or configure an external server."
msgstr ""
-#: plinth/modules/matrixsynapse/__init__.py:70
+#: plinth/modules/matrixsynapse/__init__.py:68
msgid "Matrix Synapse"
msgstr ""
@@ -3089,12 +3077,12 @@ msgid ""
"can make changes to the content."
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:56
+#: plinth/modules/mediawiki/__init__.py:54
#: plinth/modules/mediawiki/manifest.py:6
msgid "MediaWiki"
msgstr ""
-#: plinth/modules/mediawiki/__init__.py:57 plinth/templates/index.html:124
+#: plinth/modules/mediawiki/__init__.py:55 plinth/templates/index.html:124
msgid "Wiki"
msgstr ""
@@ -3157,41 +3145,41 @@ msgid ""
"to select their preferred skin."
msgstr ""
-#: plinth/modules/mediawiki/views.py:52
+#: plinth/modules/mediawiki/views.py:54
msgid "Password updated"
msgstr ""
-#: plinth/modules/mediawiki/views.py:57
+#: plinth/modules/mediawiki/views.py:59
msgid "Password update failed. Please choose a stronger password"
msgstr ""
-#: plinth/modules/mediawiki/views.py:67
+#: plinth/modules/mediawiki/views.py:69
msgid "Public registrations enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:76
+#: plinth/modules/mediawiki/views.py:78
msgid "Public registrations disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:81
+#: plinth/modules/mediawiki/views.py:83
msgid "Private mode enabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:88
+#: plinth/modules/mediawiki/views.py:90
msgid "Private mode disabled"
msgstr ""
-#: plinth/modules/mediawiki/views.py:95
+#: plinth/modules/mediawiki/views.py:98
msgid "Default skin changed"
msgstr ""
-#: plinth/modules/mediawiki/views.py:99
+#: plinth/modules/mediawiki/views.py:102
#, fuzzy
#| msgid "Domain name set"
msgid "Domain name updated"
msgstr "網域名稱設定"
-#: plinth/modules/mediawiki/views.py:103
+#: plinth/modules/mediawiki/views.py:106
#, fuzzy
#| msgid "Domain name set"
msgid "Site name updated"
@@ -3206,11 +3194,11 @@ msgid ""
"downloads/\">Minetest client is needed."
msgstr ""
-#: plinth/modules/minetest/__init__.py:60 plinth/modules/minetest/manifest.py:9
+#: plinth/modules/minetest/__init__.py:58 plinth/modules/minetest/manifest.py:9
msgid "Minetest"
msgstr ""
-#: plinth/modules/minetest/__init__.py:61
+#: plinth/modules/minetest/__init__.py:59
msgid "Block Sandbox"
msgstr ""
@@ -3255,7 +3243,7 @@ msgstr ""
msgid "Address"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:20
+#: plinth/modules/minidlna/__init__.py:21
msgid ""
"MiniDLNA is a simple media server software, with the aim of being fully "
"compliant with DLNA/UPnP-AV clients. The MiniDLNA daemon serves media files "
@@ -3266,15 +3254,15 @@ msgid ""
"Kodi."
msgstr ""
-#: plinth/modules/minidlna/__init__.py:43
+#: plinth/modules/minidlna/__init__.py:42
msgid "Media streaming server"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:46
+#: plinth/modules/minidlna/__init__.py:45
msgid "MiniDLNA"
msgstr ""
-#: plinth/modules/minidlna/__init__.py:47
+#: plinth/modules/minidlna/__init__.py:46
msgid "Simple Media Server"
msgstr ""
@@ -3327,11 +3315,11 @@ msgid ""
"desktop and mobile devices are available."
msgstr ""
-#: plinth/modules/mumble/__init__.py:47 plinth/modules/mumble/manifest.py:9
+#: plinth/modules/mumble/__init__.py:45 plinth/modules/mumble/manifest.py:9
msgid "Mumble"
msgstr ""
-#: plinth/modules/mumble/__init__.py:48
+#: plinth/modules/mumble/__init__.py:46
msgid "Voice Chat"
msgstr ""
@@ -3373,17 +3361,17 @@ msgstr ""
msgid "Mumla"
msgstr ""
-#: plinth/modules/mumble/views.py:41
+#: plinth/modules/mumble/views.py:43
msgid "SuperUser password successfully updated."
msgstr ""
-#: plinth/modules/mumble/views.py:46
+#: plinth/modules/mumble/views.py:48
#, fuzzy
#| msgid "Password added."
msgid "Join password changed"
msgstr "密碼已新增。"
-#: plinth/modules/mumble/views.py:51
+#: plinth/modules/mumble/views.py:53
msgid "Root channel name changed."
msgstr ""
@@ -3396,7 +3384,7 @@ msgid ""
"enabled or disabled for incoming connections through the given name."
msgstr ""
-#: plinth/modules/names/__init__.py:43
+#: plinth/modules/names/__init__.py:41
msgid "Name Services"
msgstr ""
@@ -3416,27 +3404,22 @@ msgstr ""
msgid "Services"
msgstr ""
-#: plinth/modules/networks/__init__.py:36
+#: 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:38
+#: 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:59
+#: plinth/modules/networks/__init__.py:56
msgid "Networks"
msgstr ""
-#: plinth/modules/networks/__init__.py:180
-#, python-brace-format
-msgid "Using DNSSEC on IPv{kind}"
-msgstr ""
-
#: plinth/modules/networks/forms.py:16
msgid "Connection Type"
msgstr ""
@@ -3913,7 +3896,7 @@ msgid "This connection is not active."
msgstr ""
#: plinth/modules/networks/templates/connection_show.html:259
-#: plinth/modules/security/__init__.py:42
+#: plinth/modules/security/__init__.py:40
msgid "Security"
msgstr ""
@@ -3956,7 +3939,7 @@ msgid "Create Connection"
msgstr ""
#: plinth/modules/networks/templates/connections_delete.html:11
-#: plinth/modules/networks/views.py:517
+#: plinth/modules/networks/views.py:518
msgid "Delete Connection"
msgstr ""
@@ -3976,13 +3959,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:29
#: plinth/modules/networks/templates/connections_diagram.html:59
-#: plinth/modules/networks/views.py:99 plinth/network.py:27
+#: plinth/modules/networks/views.py:100 plinth/network.py:27
msgid "Ethernet"
msgstr ""
#: plinth/modules/networks/templates/connections_diagram.html:32
#: plinth/modules/networks/templates/connections_diagram.html:62
-#: plinth/modules/networks/views.py:100 plinth/network.py:28
+#: plinth/modules/networks/views.py:101 plinth/network.py:28
msgid "Wi-Fi"
msgstr ""
@@ -4003,7 +3986,7 @@ msgid "Computer"
msgstr ""
#: plinth/modules/networks/templates/connections_edit.html:20
-#: plinth/modules/networks/views.py:237 plinth/modules/networks/views.py:321
+#: plinth/modules/networks/views.py:238 plinth/modules/networks/views.py:322
msgid "Edit Connection"
msgstr ""
@@ -4013,13 +3996,13 @@ msgstr ""
#: plinth/modules/networks/templates/connections_list.html:12
#: plinth/modules/networks/templates/connections_list.html:14
-#: plinth/modules/networks/views.py:370
+#: plinth/modules/networks/views.py:371
msgid "Nearby Wi-Fi Networks"
msgstr ""
#: plinth/modules/networks/templates/connections_list.html:17
#: plinth/modules/networks/templates/connections_list.html:19
-#: plinth/modules/networks/views.py:394
+#: plinth/modules/networks/views.py:395
#: plinth/modules/wireguard/templates/wireguard_add_server.html:19
msgid "Add Connection"
msgstr ""
@@ -4202,245 +4185,245 @@ msgid ""
"full instructions on how to perform this task."
msgstr ""
-#: plinth/modules/networks/views.py:27
+#: plinth/modules/networks/views.py:28
msgid "disabled"
msgstr ""
-#: plinth/modules/networks/views.py:28
+#: plinth/modules/networks/views.py:29
msgid "automatic"
msgstr ""
-#: plinth/modules/networks/views.py:29
+#: plinth/modules/networks/views.py:30
msgid "manual"
msgstr ""
-#: plinth/modules/networks/views.py:30
+#: plinth/modules/networks/views.py:31
msgid "shared"
msgstr ""
-#: plinth/modules/networks/views.py:31
+#: plinth/modules/networks/views.py:32
msgid "link-local"
msgstr ""
-#: plinth/modules/networks/views.py:37 plinth/modules/networks/views.py:98
-#: plinth/modules/networks/views.py:109
+#: plinth/modules/networks/views.py:38 plinth/modules/networks/views.py:99
+#: plinth/modules/networks/views.py:110
msgid "unknown"
msgstr ""
-#: plinth/modules/networks/views.py:38
+#: plinth/modules/networks/views.py:39
msgid "unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:39
+#: plinth/modules/networks/views.py:40
msgid "unavailable"
msgstr ""
-#: plinth/modules/networks/views.py:40
+#: plinth/modules/networks/views.py:41
msgid "disconnected"
msgstr ""
-#: plinth/modules/networks/views.py:41
+#: plinth/modules/networks/views.py:42
msgid "preparing"
msgstr ""
-#: plinth/modules/networks/views.py:42
+#: plinth/modules/networks/views.py:43
msgid "connecting"
msgstr ""
-#: plinth/modules/networks/views.py:43
+#: plinth/modules/networks/views.py:44
msgid "needs authentication"
msgstr ""
-#: plinth/modules/networks/views.py:44
+#: plinth/modules/networks/views.py:45
msgid "requesting address"
msgstr ""
-#: plinth/modules/networks/views.py:45
+#: plinth/modules/networks/views.py:46
msgid "checking"
msgstr ""
-#: plinth/modules/networks/views.py:46
+#: plinth/modules/networks/views.py:47
msgid "waiting for secondary"
msgstr ""
-#: plinth/modules/networks/views.py:47
+#: plinth/modules/networks/views.py:48
msgid "activated"
msgstr ""
-#: plinth/modules/networks/views.py:48
+#: plinth/modules/networks/views.py:49
msgid "deactivating"
msgstr ""
-#: plinth/modules/networks/views.py:56
+#: plinth/modules/networks/views.py:57
msgid "no reason"
msgstr ""
-#: plinth/modules/networks/views.py:58
+#: plinth/modules/networks/views.py:59
msgid "unknown error"
msgstr ""
-#: plinth/modules/networks/views.py:60
+#: plinth/modules/networks/views.py:61
msgid "device is now managed"
msgstr ""
-#: plinth/modules/networks/views.py:62
+#: plinth/modules/networks/views.py:63
msgid "device is now unmanaged"
msgstr ""
-#: plinth/modules/networks/views.py:64
+#: plinth/modules/networks/views.py:65
msgid "configuration failed"
msgstr ""
-#: plinth/modules/networks/views.py:66
+#: plinth/modules/networks/views.py:67
msgid "secrets required"
msgstr ""
-#: plinth/modules/networks/views.py:68
+#: plinth/modules/networks/views.py:69
msgid "DHCP client failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:70
+#: plinth/modules/networks/views.py:71
msgid "DHCP client error"
msgstr ""
-#: plinth/modules/networks/views.py:72
+#: plinth/modules/networks/views.py:73
msgid "DHCP client failed"
msgstr ""
-#: plinth/modules/networks/views.py:74
+#: plinth/modules/networks/views.py:75
msgid "shared connection service failed to start"
msgstr ""
-#: plinth/modules/networks/views.py:76
+#: plinth/modules/networks/views.py:77
msgid "shared connection service failed"
msgstr ""
-#: plinth/modules/networks/views.py:78
+#: plinth/modules/networks/views.py:79
msgid "device was removed"
msgstr ""
-#: plinth/modules/networks/views.py:80
+#: plinth/modules/networks/views.py:81
msgid "device disconnected by user"
msgstr ""
-#: plinth/modules/networks/views.py:82
+#: plinth/modules/networks/views.py:83
msgid "a dependency of the connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:84
+#: plinth/modules/networks/views.py:85
msgid "Wi-Fi network not found"
msgstr ""
-#: plinth/modules/networks/views.py:86
+#: plinth/modules/networks/views.py:87
msgid "a secondary connection failed"
msgstr ""
-#: plinth/modules/networks/views.py:88
+#: plinth/modules/networks/views.py:89
msgid "new connection activation was enqueued"
msgstr ""
-#: plinth/modules/networks/views.py:90
+#: plinth/modules/networks/views.py:91
msgid "a duplicate IP address was detected"
msgstr ""
-#: plinth/modules/networks/views.py:92
+#: plinth/modules/networks/views.py:93
msgid "selected IP method is not supported"
msgstr ""
-#: plinth/modules/networks/views.py:101
+#: plinth/modules/networks/views.py:102
msgid "generic"
msgstr ""
-#: plinth/modules/networks/views.py:102
+#: plinth/modules/networks/views.py:103
msgid "TUN or TAP interface"
msgstr ""
-#: plinth/modules/networks/views.py:103 plinth/modules/wireguard/__init__.py:49
+#: plinth/modules/networks/views.py:104 plinth/modules/wireguard/__init__.py:47
#: plinth/modules/wireguard/manifest.py:14
msgid "WireGuard"
msgstr ""
-#: plinth/modules/networks/views.py:110
+#: plinth/modules/networks/views.py:111
msgid "ad-hoc"
msgstr ""
-#: plinth/modules/networks/views.py:111
+#: plinth/modules/networks/views.py:112
msgid "infrastructure"
msgstr ""
-#: plinth/modules/networks/views.py:112
+#: plinth/modules/networks/views.py:113
msgid "access point"
msgstr ""
-#: plinth/modules/networks/views.py:113
+#: plinth/modules/networks/views.py:114
msgid "mesh point"
msgstr ""
-#: plinth/modules/networks/views.py:127
+#: plinth/modules/networks/views.py:128
msgid "Network Connections"
msgstr ""
-#: plinth/modules/networks/views.py:142
+#: plinth/modules/networks/views.py:143
msgid "Cannot show connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:195
+#: plinth/modules/networks/views.py:196
msgid "Connection Information"
msgstr ""
-#: plinth/modules/networks/views.py:209
+#: plinth/modules/networks/views.py:210
msgid "Cannot edit connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:215
+#: plinth/modules/networks/views.py:216
msgid "This type of connection is not yet understood."
msgstr ""
-#: plinth/modules/networks/views.py:333
+#: plinth/modules/networks/views.py:334
#, python-brace-format
msgid "Activated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:337
+#: plinth/modules/networks/views.py:338
msgid "Failed to activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:343
+#: plinth/modules/networks/views.py:344
#, python-brace-format
msgid "Failed to activate connection {name}: No suitable device is available."
msgstr ""
-#: plinth/modules/networks/views.py:356
+#: plinth/modules/networks/views.py:357
#, python-brace-format
msgid "Deactivated connection {name}."
msgstr ""
-#: plinth/modules/networks/views.py:360
+#: plinth/modules/networks/views.py:361
msgid "Failed to de-activate connection: Connection not found."
msgstr ""
-#: plinth/modules/networks/views.py:412
+#: plinth/modules/networks/views.py:413
msgid "Adding New Generic Connection"
msgstr ""
-#: plinth/modules/networks/views.py:430
+#: plinth/modules/networks/views.py:431
msgid "Adding New Ethernet Connection"
msgstr ""
-#: plinth/modules/networks/views.py:448
+#: plinth/modules/networks/views.py:449
msgid "Adding New PPPoE Connection"
msgstr ""
-#: plinth/modules/networks/views.py:483
+#: plinth/modules/networks/views.py:484
msgid "Adding New Wi-Fi Connection"
msgstr ""
-#: plinth/modules/networks/views.py:498
+#: plinth/modules/networks/views.py:499
#, python-brace-format
msgid "Connection {name} deleted."
msgstr ""
-#: plinth/modules/networks/views.py:502 plinth/modules/networks/views.py:512
+#: plinth/modules/networks/views.py:503 plinth/modules/networks/views.py:513
msgid "Failed to delete connection: Connection not found."
msgstr ""
@@ -4455,20 +4438,20 @@ msgid ""
"security and anonymity."
msgstr ""
-#: plinth/modules/openvpn/__init__.py:55
+#: plinth/modules/openvpn/__init__.py:53
msgid "Connect to VPN services"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:58 plinth/modules/openvpn/manifest.py:17
+#: plinth/modules/openvpn/__init__.py:56 plinth/modules/openvpn/manifest.py:17
msgid "OpenVPN"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:59
-#: plinth/modules/wireguard/__init__.py:51
+#: plinth/modules/openvpn/__init__.py:57
+#: plinth/modules/wireguard/__init__.py:49
msgid "Virtual Private Network"
msgstr ""
-#: plinth/modules/openvpn/__init__.py:70
+#: plinth/modules/openvpn/__init__.py:68
#, python-brace-format
msgid ""
"Download Profile"
@@ -4576,15 +4559,15 @@ msgid ""
"the future it might be possible to use your buddy's {box_name} for this."
msgstr ""
-#: plinth/modules/pagekite/__init__.py:63
+#: plinth/modules/pagekite/__init__.py:61
msgid "PageKite"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:64
+#: plinth/modules/pagekite/__init__.py:62
msgid "Public Visibility"
msgstr ""
-#: plinth/modules/pagekite/__init__.py:77
+#: plinth/modules/pagekite/__init__.py:75
msgid "PageKite Domain"
msgstr ""
@@ -4690,36 +4673,36 @@ msgid ""
"HTTPS on ports other than 443 is known to cause problems."
msgstr ""
-#: plinth/modules/pagekite/utils.py:45
+#: plinth/modules/pagekite/utils.py:46
msgid "Web Server (HTTP)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:47
+#: plinth/modules/pagekite/utils.py:48
#, python-brace-format
msgid "Site will be available at http://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:59
+#: plinth/modules/pagekite/utils.py:60
msgid "Web Server (HTTPS)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:61
+#: plinth/modules/pagekite/utils.py:62
#, python-brace-format
msgid "Site will be available at https://{0}"
msgstr ""
-#: plinth/modules/pagekite/utils.py:73
+#: plinth/modules/pagekite/utils.py:74
msgid "Secure Shell (SSH)"
msgstr ""
-#: plinth/modules/pagekite/utils.py:75
+#: plinth/modules/pagekite/utils.py:76
msgid ""
"See SSH client setup instructions"
msgstr ""
#: plinth/modules/performance/__init__.py:16
-#: plinth/modules/performance/__init__.py:42
+#: plinth/modules/performance/__init__.py:40
msgid "Performance"
msgstr ""
@@ -4736,7 +4719,7 @@ msgid ""
"using the Cockpit app."
msgstr ""
-#: plinth/modules/performance/__init__.py:43
+#: plinth/modules/performance/__init__.py:41
msgid "System Monitoring"
msgstr ""
@@ -4744,7 +4727,7 @@ msgstr ""
msgid "Restart or shut down the system."
msgstr ""
-#: plinth/modules/power/__init__.py:31
+#: plinth/modules/power/__init__.py:29
msgid "Power"
msgstr ""
@@ -4815,15 +4798,15 @@ msgid ""
"\">http://p.p."
msgstr ""
-#: plinth/modules/privoxy/__init__.py:53
+#: plinth/modules/privoxy/__init__.py:51
msgid "Privoxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:54
+#: plinth/modules/privoxy/__init__.py:52
msgid "Web Proxy"
msgstr ""
-#: plinth/modules/privoxy/__init__.py:116
+#: plinth/modules/privoxy/__init__.py:113
#, python-brace-format
msgid "Access {url} with proxy {proxy} on tcp{kind}"
msgstr ""
@@ -4847,11 +4830,11 @@ msgid ""
"\">mobile devices are available."
msgstr ""
-#: plinth/modules/quassel/__init__.py:56 plinth/modules/quassel/manifest.py:9
+#: plinth/modules/quassel/__init__.py:54 plinth/modules/quassel/manifest.py:9
msgid "Quassel"
msgstr ""
-#: plinth/modules/quassel/__init__.py:57
+#: plinth/modules/quassel/__init__.py:55
msgid "IRC Client"
msgstr ""
@@ -4876,12 +4859,12 @@ msgid ""
"which must be done using a separate client."
msgstr ""
-#: plinth/modules/radicale/__init__.py:55
+#: plinth/modules/radicale/__init__.py:53
#: plinth/modules/radicale/manifest.py:74
msgid "Radicale"
msgstr ""
-#: plinth/modules/radicale/__init__.py:56
+#: plinth/modules/radicale/__init__.py:54
msgid "Calendar and Addressbook"
msgstr ""
@@ -4971,7 +4954,7 @@ msgid ""
"a>)."
msgstr ""
-#: plinth/modules/roundcube/__init__.py:52
+#: plinth/modules/roundcube/__init__.py:50
msgid "Email Client"
msgstr ""
@@ -5012,16 +4995,16 @@ msgid ""
"your {box_name} credentials."
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:47 plinth/modules/ttrss/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:45 plinth/modules/ttrss/__init__.py:48
msgid "Read and subscribe to news feeds"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:50
+#: plinth/modules/rssbridge/__init__.py:48
#: plinth/modules/rssbridge/manifest.py:10
msgid "RSS-Bridge"
msgstr ""
-#: plinth/modules/rssbridge/__init__.py:51
+#: plinth/modules/rssbridge/__init__.py:49
msgid "RSS Feed Generator"
msgstr ""
@@ -5056,15 +5039,15 @@ msgid ""
"private space."
msgstr ""
-#: plinth/modules/samba/__init__.py:56
+#: plinth/modules/samba/__init__.py:54
msgid "Access to the private shares"
msgstr ""
-#: plinth/modules/samba/__init__.py:59
+#: plinth/modules/samba/__init__.py:57
msgid "Samba"
msgstr ""
-#: plinth/modules/samba/__init__.py:60
+#: plinth/modules/samba/__init__.py:58
msgid "Network File Storage"
msgstr ""
@@ -5184,15 +5167,15 @@ msgid ""
"stores no cookies by default."
msgstr ""
-#: plinth/modules/searx/__init__.py:42
+#: plinth/modules/searx/__init__.py:40
msgid "Search the web"
msgstr ""
-#: plinth/modules/searx/__init__.py:45 plinth/modules/searx/manifest.py:6
+#: plinth/modules/searx/__init__.py:43 plinth/modules/searx/manifest.py:6
msgid "Searx"
msgstr ""
-#: plinth/modules/searx/__init__.py:46
+#: plinth/modules/searx/__init__.py:44
msgid "Web Search"
msgstr ""
@@ -5273,7 +5256,7 @@ msgid ""
msgstr ""
#: plinth/modules/security/templates/security_report.html:10
-#: plinth/modules/security/views.py:74
+#: plinth/modules/security/views.py:75
msgid "Security Report"
msgstr ""
@@ -5338,12 +5321,12 @@ msgstr ""
msgid "Not running"
msgstr ""
-#: plinth/modules/security/views.py:56
+#: plinth/modules/security/views.py:57
#, python-brace-format
msgid "Error setting restricted access: {exception}"
msgstr ""
-#: plinth/modules/security/views.py:59
+#: plinth/modules/security/views.py:60
msgid "Updated security configuration"
msgstr ""
@@ -5357,11 +5340,11 @@ msgid ""
"to setup on the initial visit."
msgstr ""
-#: plinth/modules/shaarli/__init__.py:38 plinth/modules/shaarli/manifest.py:25
+#: plinth/modules/shaarli/__init__.py:36 plinth/modules/shaarli/manifest.py:25
msgid "Shaarli"
msgstr ""
-#: plinth/modules/shaarli/__init__.py:39
+#: plinth/modules/shaarli/__init__.py:37
msgid "Bookmarks"
msgstr ""
@@ -5391,11 +5374,11 @@ msgid ""
"browser or application to http://freedombox_address:1080/"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:51
+#: plinth/modules/shadowsocks/__init__.py:49
msgid "Shadowsocks"
msgstr ""
-#: plinth/modules/shadowsocks/__init__.py:53
+#: plinth/modules/shadowsocks/__init__.py:51
msgid "Socks5 Proxy"
msgstr ""
@@ -5424,14 +5407,14 @@ msgstr ""
msgid "Encryption method. Must match setting on server."
msgstr ""
-#: plinth/modules/sharing/__init__.py:20
+#: 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/__init__.py:39
+#: plinth/modules/sharing/__init__.py:38
msgid "Sharing"
msgstr ""
@@ -5479,28 +5462,28 @@ msgstr ""
msgid "Shares should be either public or shared with at least one group"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:19
-#: plinth/modules/sharing/templates/sharing.html:22
+#: plinth/modules/sharing/templates/sharing.html:18
+#: plinth/modules/sharing/templates/sharing.html:21
msgid "Add share"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:27
+#: plinth/modules/sharing/templates/sharing.html:26
msgid "No shares currently configured."
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:34
+#: plinth/modules/sharing/templates/sharing.html:33
msgid "Disk Path"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:35
+#: plinth/modules/sharing/templates/sharing.html:34
msgid "Shared Over"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:36
+#: plinth/modules/sharing/templates/sharing.html:35
msgid "With Groups"
msgstr ""
-#: plinth/modules/sharing/templates/sharing.html:53
+#: plinth/modules/sharing/templates/sharing.html:52
msgid "public access"
msgstr ""
@@ -5546,7 +5529,7 @@ msgid ""
"backups\">backups since they can only be stored on the same partition. "
msgstr ""
-#: plinth/modules/snapshot/__init__.py:54
+#: plinth/modules/snapshot/__init__.py:52
msgid "Storage Snapshots"
msgstr ""
@@ -5640,7 +5623,7 @@ msgstr ""
#: plinth/modules/snapshot/templates/snapshot_delete_selected.html:42
#: plinth/modules/snapshot/templates/snapshot_manage.html:20
-#: plinth/modules/snapshot/views.py:196
+#: plinth/modules/snapshot/views.py:200
msgid "Delete Snapshots"
msgstr ""
@@ -5688,53 +5671,53 @@ msgstr ""
msgid "Rollback to Snapshot #%(number)s"
msgstr ""
-#: plinth/modules/snapshot/views.py:27
+#: plinth/modules/snapshot/views.py:28
msgid "manually created"
msgstr ""
-#: plinth/modules/snapshot/views.py:28
+#: plinth/modules/snapshot/views.py:29
msgid "timeline"
msgstr ""
-#: plinth/modules/snapshot/views.py:29
+#: plinth/modules/snapshot/views.py:30
msgid "apt"
msgstr ""
-#: plinth/modules/snapshot/views.py:39
+#: plinth/modules/snapshot/views.py:40
msgid "Manage Snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:88
+#: plinth/modules/snapshot/views.py:91
msgid "Created snapshot."
msgstr ""
-#: plinth/modules/snapshot/views.py:151
+#: plinth/modules/snapshot/views.py:155
msgid "Storage snapshots configuration updated"
msgstr ""
-#: plinth/modules/snapshot/views.py:155 plinth/modules/tor/views.py:62
+#: plinth/modules/snapshot/views.py:159 plinth/modules/tor/views.py:64
#, python-brace-format
msgid "Action error: {0} [{1}] [{2}]"
msgstr ""
-#: plinth/modules/snapshot/views.py:183
+#: plinth/modules/snapshot/views.py:187
msgid "Deleted selected snapshots"
msgstr ""
-#: plinth/modules/snapshot/views.py:188
+#: plinth/modules/snapshot/views.py:192
msgid "Snapshot is currently in use. Please try again later."
msgstr ""
-#: plinth/modules/snapshot/views.py:207
+#: plinth/modules/snapshot/views.py:211
#, python-brace-format
msgid "Rolled back to snapshot #{number}."
msgstr ""
-#: plinth/modules/snapshot/views.py:210
+#: plinth/modules/snapshot/views.py:214
msgid "The system must be restarted to complete the rollback."
msgstr ""
-#: plinth/modules/snapshot/views.py:222
+#: plinth/modules/snapshot/views.py:226
msgid "Rollback to Snapshot"
msgstr ""
@@ -5746,7 +5729,7 @@ msgid ""
"connections."
msgstr ""
-#: plinth/modules/ssh/__init__.py:45
+#: plinth/modules/ssh/__init__.py:43
msgid "Secure Shell (SSH) Server"
msgstr ""
@@ -5787,7 +5770,7 @@ msgstr ""
msgid "SSH authentication with password enabled."
msgstr ""
-#: plinth/modules/sso/__init__.py:28
+#: plinth/modules/sso/__init__.py:26
msgid "Single Sign On"
msgstr ""
@@ -5807,104 +5790,104 @@ msgid ""
"media, expand the root partition etc."
msgstr ""
-#: plinth/modules/storage/__init__.py:51 plinth/modules/storage/__init__.py:322
-#: plinth/modules/storage/__init__.py:353
+#: plinth/modules/storage/__init__.py:49 plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:350
msgid "Storage"
msgstr ""
-#: plinth/modules/storage/__init__.py:216
+#: plinth/modules/storage/__init__.py:227
#, python-brace-format
msgid "{disk_size:.1f} bytes"
msgstr ""
-#: plinth/modules/storage/__init__.py:220
+#: plinth/modules/storage/__init__.py:231
#, python-brace-format
msgid "{disk_size:.1f} KiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:224
+#: plinth/modules/storage/__init__.py:235
#, python-brace-format
msgid "{disk_size:.1f} MiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:228
+#: plinth/modules/storage/__init__.py:239
#, python-brace-format
msgid "{disk_size:.1f} GiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:231
+#: plinth/modules/storage/__init__.py:242
#, python-brace-format
msgid "{disk_size:.1f} TiB"
msgstr ""
-#: plinth/modules/storage/__init__.py:243
+#: plinth/modules/storage/__init__.py:254
msgid "The operation failed."
msgstr ""
-#: plinth/modules/storage/__init__.py:245
+#: plinth/modules/storage/__init__.py:256
msgid "The operation was cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:247
+#: plinth/modules/storage/__init__.py:258
msgid "The device is already unmounting."
msgstr ""
-#: plinth/modules/storage/__init__.py:249
+#: plinth/modules/storage/__init__.py:260
msgid "The operation is not supported due to missing driver/tool support."
msgstr ""
-#: plinth/modules/storage/__init__.py:252
+#: plinth/modules/storage/__init__.py:263
msgid "The operation timed out."
msgstr ""
-#: plinth/modules/storage/__init__.py:254
+#: plinth/modules/storage/__init__.py:265
msgid "The operation would wake up a disk that is in a deep-sleep state."
msgstr ""
-#: plinth/modules/storage/__init__.py:257
+#: plinth/modules/storage/__init__.py:268
msgid "Attempting to unmount a device that is busy."
msgstr ""
-#: plinth/modules/storage/__init__.py:259
+#: plinth/modules/storage/__init__.py:270
msgid "The operation has already been cancelled."
msgstr ""
-#: plinth/modules/storage/__init__.py:261
-#: plinth/modules/storage/__init__.py:263
-#: plinth/modules/storage/__init__.py:265
+#: plinth/modules/storage/__init__.py:272
+#: plinth/modules/storage/__init__.py:274
+#: plinth/modules/storage/__init__.py:276
msgid "Not authorized to perform the requested operation."
msgstr ""
-#: plinth/modules/storage/__init__.py:267
+#: plinth/modules/storage/__init__.py:278
msgid "The device is already mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:269
+#: plinth/modules/storage/__init__.py:280
msgid "The device is not mounted."
msgstr ""
-#: plinth/modules/storage/__init__.py:271
+#: plinth/modules/storage/__init__.py:282
msgid "Not permitted to use the requested option."
msgstr ""
-#: plinth/modules/storage/__init__.py:273
+#: plinth/modules/storage/__init__.py:284
msgid "The device is mounted by another user."
msgstr ""
-#: plinth/modules/storage/__init__.py:317
+#: plinth/modules/storage/__init__.py:314
#, no-python-format, python-brace-format
msgid "Low space on system partition: {percent_used}% used, {free_space} free."
msgstr ""
-#: plinth/modules/storage/__init__.py:319
+#: plinth/modules/storage/__init__.py:316
msgid "Low disk space"
msgstr ""
-#: plinth/modules/storage/__init__.py:347
+#: plinth/modules/storage/__init__.py:344
msgid "Disk failure imminent"
msgstr ""
-#: plinth/modules/storage/__init__.py:349
+#: plinth/modules/storage/__init__.py:346
#, python-brace-format
msgid ""
"Disk {id} is reporting that it is likely to fail in the near future. Copy "
@@ -6038,16 +6021,16 @@ msgid ""
"\"syncthing-access\" group."
msgstr ""
-#: plinth/modules/syncthing/__init__.py:57
+#: plinth/modules/syncthing/__init__.py:55
msgid "Administer Syncthing application"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:61
+#: plinth/modules/syncthing/__init__.py:59
#: plinth/modules/syncthing/manifest.py:12
msgid "Syncthing"
msgstr ""
-#: plinth/modules/syncthing/__init__.py:62
+#: plinth/modules/syncthing/__init__.py:60
msgid "File Synchronization"
msgstr ""
@@ -6067,40 +6050,40 @@ msgid ""
"TCP port 9050."
msgstr ""
-#: plinth/modules/tor/__init__.py:54
+#: plinth/modules/tor/__init__.py:52
msgid "Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:71
+#: plinth/modules/tor/__init__.py:69
msgid "Tor Onion Service"
msgstr ""
-#: plinth/modules/tor/__init__.py:75
+#: plinth/modules/tor/__init__.py:73
msgid "Tor Socks Proxy"
msgstr ""
-#: plinth/modules/tor/__init__.py:79
+#: plinth/modules/tor/__init__.py:77
msgid "Tor Bridge Relay"
msgstr ""
-#: plinth/modules/tor/__init__.py:121
+#: plinth/modules/tor/__init__.py:119
msgid "Tor relay port available"
msgstr ""
-#: plinth/modules/tor/__init__.py:131
+#: plinth/modules/tor/__init__.py:129
msgid "Obfs3 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:141
+#: plinth/modules/tor/__init__.py:139
msgid "Obfs4 transport registered"
msgstr ""
-#: plinth/modules/tor/__init__.py:210
+#: plinth/modules/tor/__init__.py:207
#, python-brace-format
msgid "Access URL {url} on tcp{kind} via Tor"
msgstr ""
-#: plinth/modules/tor/__init__.py:221
+#: plinth/modules/tor/__init__.py:218
#, python-brace-format
msgid "Confirm Tor usage at {url} on tcp{kind}"
msgstr ""
@@ -6206,7 +6189,7 @@ msgstr ""
msgid "Ports"
msgstr ""
-#: plinth/modules/tor/views.py:139 plinth/views.py:222
+#: plinth/modules/tor/views.py:142 plinth/views.py:220
msgid "Setting unchanged"
msgstr ""
@@ -6257,7 +6240,7 @@ msgid ""
"href=\"{sharing_url}\">Sharing app."
msgstr ""
-#: plinth/modules/transmission/__init__.py:68
+#: plinth/modules/transmission/__init__.py:66
#: plinth/modules/transmission/manifest.py:6
msgid "Transmission"
msgstr ""
@@ -6287,11 +6270,11 @@ msgid ""
"href=\"/tt-rss-app/\">/tt-rss-app for connecting."
msgstr ""
-#: plinth/modules/ttrss/__init__.py:53 plinth/modules/ttrss/manifest.py:18
+#: plinth/modules/ttrss/__init__.py:51 plinth/modules/ttrss/manifest.py:18
msgid "Tiny Tiny RSS"
msgstr ""
-#: plinth/modules/ttrss/__init__.py:54
+#: plinth/modules/ttrss/__init__.py:52
msgid "News Feed Reader"
msgstr ""
@@ -6312,33 +6295,33 @@ msgid ""
"automatically at 02:00 causing all apps to be unavailable briefly."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:74
-#: plinth/modules/upgrades/__init__.py:129
+#: plinth/modules/upgrades/__init__.py:72
+#: plinth/modules/upgrades/__init__.py:127
#: plinth/modules/upgrades/templates/update-firstboot-progress.html:11
#: plinth/modules/upgrades/templates/update-firstboot.html:11
msgid "Software Update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:132
+#: plinth/modules/upgrades/__init__.py:130
msgid "FreedomBox Updated"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:217
+#: plinth/modules/upgrades/__init__.py:214
msgid "Could not start distribution update"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:219
+#: plinth/modules/upgrades/__init__.py:216
msgid ""
"There is not enough free space in the root partition to start the "
"distribution update. Please ensure at least 5 GB is free. Distribution "
"update will be retried after 24 hours, if enabled."
msgstr ""
-#: plinth/modules/upgrades/__init__.py:230
+#: plinth/modules/upgrades/__init__.py:227
msgid "Distribution update started"
msgstr ""
-#: plinth/modules/upgrades/__init__.py:232
+#: plinth/modules/upgrades/__init__.py:229
msgid ""
"Started update to next stable release. This may take a long time to complete."
msgstr ""
@@ -6416,6 +6399,7 @@ msgstr ""
#: plinth/modules/upgrades/templates/upgrades-new-release.html:22
#: plinth/templates/notifications.html:44
+#: plinth/templates/operation-notification.html:23
msgid "Dismiss"
msgstr ""
@@ -6519,15 +6503,15 @@ msgid ""
"group may alter apps or system settings."
msgstr ""
-#: plinth/modules/users/__init__.py:57
+#: plinth/modules/users/__init__.py:55
msgid "Users and Groups"
msgstr ""
-#: plinth/modules/users/__init__.py:77
+#: plinth/modules/users/__init__.py:75
msgid "Access to all services and system settings"
msgstr ""
-#: plinth/modules/users/__init__.py:113
+#: plinth/modules/users/__init__.py:111
#, python-brace-format
msgid "Check LDAP entry \"{search_item}\""
msgstr ""
@@ -7092,12 +7076,12 @@ msgid ""
"and upgraded at your own risk."
msgstr ""
-#: plinth/modules/wordpress/__init__.py:58
+#: plinth/modules/wordpress/__init__.py:56
#: plinth/modules/wordpress/manifest.py:6
msgid "WordPress"
msgstr ""
-#: plinth/modules/wordpress/__init__.py:59
+#: plinth/modules/wordpress/__init__.py:57
msgid "Website and Blog"
msgstr ""
@@ -7132,11 +7116,11 @@ msgid ""
"in Zoph with the same user name."
msgstr ""
-#: plinth/modules/zoph/__init__.py:58 plinth/modules/zoph/manifest.py:6
+#: plinth/modules/zoph/__init__.py:56 plinth/modules/zoph/manifest.py:6
msgid "Zoph"
msgstr ""
-#: plinth/modules/zoph/__init__.py:59
+#: plinth/modules/zoph/__init__.py:57
msgid "Photo Organizer"
msgstr ""
@@ -7170,37 +7154,103 @@ msgstr ""
msgid "Generic"
msgstr ""
-#: plinth/package.py:188
+#: plinth/operation.py:116
+#, fuzzy, python-brace-format
+#| msgid "Error setting hostname: {exception}"
+msgid "Error: {name}: {exception_message}"
+msgstr "設定主機名稱時發生錯誤︰{exception}"
+
+#: plinth/operation.py:119
+#, python-brace-format
+msgid "Waiting to start: {name}"
+msgstr ""
+
+#: plinth/operation.py:125
+#, python-brace-format
+msgid "Finished: {name}"
+msgstr ""
+
+#: plinth/package.py:187
#, python-brace-format
msgid "Package {expression} is not available for install"
msgstr ""
-#: plinth/package.py:201
+#: plinth/package.py:200
#, python-brace-format
msgid "Package {package_name} is the latest version ({latest_version})"
msgstr ""
-#: plinth/package.py:355
+#: plinth/package.py:354
msgid "Error during installation"
msgstr ""
-#: plinth/package.py:377
+#: plinth/package.py:376
msgid "installing"
msgstr ""
-#: plinth/package.py:379
+#: plinth/package.py:378
msgid "downloading"
msgstr ""
-#: plinth/package.py:381
+#: plinth/package.py:380
msgid "media change"
msgstr ""
-#: plinth/package.py:383
+#: plinth/package.py:382
#, python-brace-format
msgid "configuration file: {file}"
msgstr ""
+#: plinth/package.py:410
+msgid "Timeout waiting for package manager"
+msgstr ""
+
+#: plinth/setup.py:44
+msgid "Installing app"
+msgstr ""
+
+#: plinth/setup.py:46
+msgid "Updating app"
+msgstr ""
+
+#: plinth/setup.py:72
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error installing app: {string} {details}"
+msgstr "安裝過程中遇到錯誤:{string}{details}"
+
+#: plinth/setup.py:76
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {string} {details}"
+msgid "Error updating app: {string} {details}"
+msgstr "安裝過程中遇到錯誤:{string}{details}"
+
+#: plinth/setup.py:82
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error installing app: {error}"
+msgstr "安裝應用遇到錯誤:{error}"
+
+#: plinth/setup.py:85
+#, fuzzy, python-brace-format
+#| msgid "Error installing application: {error}"
+msgid "Error updating app: {error}"
+msgstr "安裝應用遇到錯誤:{error}"
+
+#: plinth/setup.py:89
+#, fuzzy
+#| msgid "Application installed."
+msgid "App installed."
+msgstr "應用已完成安裝。"
+
+#: plinth/setup.py:91
+msgid "App updated"
+msgstr ""
+
+#: plinth/setup.py:411
+msgid "Updating app packages"
+msgstr ""
+
#: plinth/templates/403.html:10
msgid "403 Forbidden"
msgstr ""
@@ -7488,6 +7538,10 @@ msgstr ""
msgid "To %(box_name)s Ports"
msgstr ""
+#: plinth/templates/setup.html:18
+msgid "Application installed."
+msgstr "應用已完成安裝。"
+
#: plinth/templates/setup.html:24
msgid "Install this application?"
msgstr ""
@@ -7497,52 +7551,28 @@ msgid "This application needs an update. Update now?"
msgstr ""
#: plinth/templates/setup.html:39
-msgid ""
-"Another installation or upgrade is already running. Please wait for a few "
-"moments before trying again."
-msgstr ""
-
-#: plinth/templates/setup.html:46
msgid "This application is currently not available in your distribution."
msgstr ""
-#: plinth/templates/setup.html:50
+#: plinth/templates/setup.html:43
msgid "Check again"
msgstr ""
-#: plinth/templates/setup.html:55
+#: plinth/templates/setup.html:48
msgid ""
"Conflicting Packages: Some packages installed on the system "
"conflict with the installation of this app. The following packages will be "
"removed if you proceed:"
msgstr ""
-#: plinth/templates/setup.html:71
+#: plinth/templates/setup.html:64
msgid "Install"
msgstr ""
-#: plinth/templates/setup.html:73
+#: plinth/templates/setup.html:66
msgid "Update"
msgstr ""
-#: plinth/templates/setup.html:83
-msgid "Performing pre-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:88
-msgid "Performing post-install operation"
-msgstr ""
-
-#: plinth/templates/setup.html:94
-#, python-format
-msgid "Installing %(package_names)s: %(status)s"
-msgstr ""
-
-#: plinth/templates/setup.html:104
-#, python-format
-msgid "%(percentage)s%% complete"
-msgstr ""
-
#: plinth/web_framework.py:114
msgid "Gujarati"
msgstr ""