diff --git a/container b/container index d6b5e532a..120b8c616 100755 --- a/container +++ b/container @@ -121,6 +121,7 @@ import os import pathlib import platform import re +import shlex import shutil import subprocess import sys @@ -245,6 +246,8 @@ export FREEDOMBOX_SAMBA_PORT=445 chmod --recursive --silent a+rw .pytest_cache/ chmod --recursive --silent a+w htmlcov chmod --silent a+w .coverage + +exit 0 ''' logger = logging.getLogger(__name__) @@ -1079,19 +1082,20 @@ def subcommand_ssh(arguments): def subcommand_run_tests(arguments): """Run tests in the container.""" distribution = arguments.distribution - pytest_args = ' '.join(arguments.pytest_args or []) + pytest_args_list = arguments.pytest_args or [] + pytest_args = ' '.join((shlex.quote(arg) for arg in pytest_args_list)) + ip_address = _wait_for(lambda: _get_ip_address(distribution)) ssh_command = _get_ssh_command(ip_address, distribution) - # Disable cache as root has no rights to overwrite files on /freedombox - pytest_command = f'py.test-3 {pytest_args}' + pytest_command = f'py.test-3 --color=yes {pytest_args}' logger.info('Pytest command: %s', pytest_command) test_script = SETUP_AND_RUN_TESTS_SCRIPT.format( pytest_command=pytest_command, distribution=distribution) - setup_and_run_command = ['sudo', 'bash', '-c', f"'{test_script}'"] - command = ssh_command + setup_and_run_command - os.execlp('ssh', *command) + command = ssh_command + ['sudo', 'bash'] + process = subprocess.run(command, input=test_script.encode(), check=False) + sys.exit(process.returncode) def subcommand_stop(arguments): @@ -1108,11 +1112,11 @@ def subcommand_destroy(arguments): def subcommand_update(arguments): """Update the disk image.""" if _is_update_required(arguments.distribution): - logger.info("Updating...") + logger.info('Updating...') _download_disk_image(arguments.distribution, arguments.hkp_client, force=True) else: - logger.info("Already using the latest image") + logger.info('Already using the latest image') def set_URLs(): diff --git a/debian/changelog b/debian/changelog index 03ede90e2..8e4acd254 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,49 @@ +freedombox (24.24) unstable; urgency=medium + + [ Burak Yavuz ] + * Translated using Weblate (Turkish) + + [ 大王叫我来巡山 ] + * Translated using Weblate (Chinese (Simplified Han script)) + + [ 109247019824 ] + * Translated using Weblate (Bulgarian) + + [ Besnik Bleta ] + * Translated using Weblate (Albanian) + + [ Sunil Mohan Adapa ] + * networks: Fix editing wireless connections with SSID field + * networks: Fix display of mangled SSIDs when scanning Wi-Fi networks + * networks: Fix display of strength and channel for Wi-Fi connections + * networks: Improve styling of badges in the information tables + * tests: functional: Wait for uninstall page load before uninstalling + * i18n: Fix translation of FreedomBox name in various places + * rssbridge: Mention miniflux in app description similar to tt-rss + * tests: functional: Don't enable/disable app during tests + * tests: functional: Fix visit() returning prematurely before page load + * networks: Overhaul Wi-Fi network scan page + * networks: wifi: In new connection page set form defaults properly + * ui: Drop logo backgrounds for index, apps, and system pages + * ui: Drop box shadow around the card in card lists + * nextcloud: Switch to using FreedomBox container registry + * nextcloud: Drop diagnostic for checking availability of docker.com + + [ Dietmar ] + * Translated using Weblate (German) + + [ Jiří Podhorecký ] + * Translated using Weblate (Czech) + + [ Veiko Aasa ] + * container: Quote arguments that contain spaces when restoring pytest args + + [ James Valleroy ] + * locale: Update translation strings + * doc: Fetch latest manual + + -- James Valleroy Mon, 18 Nov 2024 20:39:56 -0500 + freedombox (24.23~bpo12+1) bookworm-backports; urgency=medium * Rebuild for bookworm-backports. diff --git a/doc/manual/en/ReleaseNotes.raw.wiki b/doc/manual/en/ReleaseNotes.raw.wiki index d2163cf75..3608fd7ac 100644 --- a/doc/manual/en/ReleaseNotes.raw.wiki +++ b/doc/manual/en/ReleaseNotes.raw.wiki @@ -8,11 +8,37 @@ For more technical details, see the [[https://salsa.debian.org/freedombox-team/f The following are the release notes for each !FreedomBox version. +== FreedomBox 24.24 (2024-11-18) == + +=== Highlights === + + * nextcloud: Switch to using !FreedomBox container registry + * networks: Overhaul Wi-Fi network scan page + +=== Other Changes === + + * container: Quote arguments that contain spaces when restoring pytest args + * i18n: Fix translation of !FreedomBox name in various places + * locale: Update translations for Albanian, Bulgarian, Chinese (Simplified Han script), Czech, German, Turkish + * networks: Fix display of mangled SSIDs when scanning Wi-Fi networks + * networks: Fix display of strength and channel for Wi-Fi connections + * networks: Fix editing wireless connections with SSID field + * networks: Improve styling of badges in the information tables + * networks: wifi: In new connection page set form defaults properly + * nextcloud: Drop diagnostic for checking availability of docker.com + * rssbridge: Mention miniflux in app description similar to tt-rss + * tests: functional: Don't enable/disable app during tests + * tests: functional: Fix visit() returning prematurely before page load + * tests: functional: Wait for uninstall page load before uninstalling + * ui: Drop box shadow around the card in card lists + * ui: Drop logo backgrounds for index, apps, and system pages + == FreedomBox 24.23 (2024-11-04) == * backups: Better explanation for the format of upload file * backups: Sort list of apps in backup, restore, and schedules * base: Add link to about for unauthenticated users + * debian: Drop python3-flake8 build dependency * ejabberd: Set mod_mam default to always * functional tests: Add pytest testinfra plugin * help: Add all footer links to about page diff --git a/doc/manual/es/ReleaseNotes.raw.wiki b/doc/manual/es/ReleaseNotes.raw.wiki index d2163cf75..3608fd7ac 100644 --- a/doc/manual/es/ReleaseNotes.raw.wiki +++ b/doc/manual/es/ReleaseNotes.raw.wiki @@ -8,11 +8,37 @@ For more technical details, see the [[https://salsa.debian.org/freedombox-team/f The following are the release notes for each !FreedomBox version. +== FreedomBox 24.24 (2024-11-18) == + +=== Highlights === + + * nextcloud: Switch to using !FreedomBox container registry + * networks: Overhaul Wi-Fi network scan page + +=== Other Changes === + + * container: Quote arguments that contain spaces when restoring pytest args + * i18n: Fix translation of !FreedomBox name in various places + * locale: Update translations for Albanian, Bulgarian, Chinese (Simplified Han script), Czech, German, Turkish + * networks: Fix display of mangled SSIDs when scanning Wi-Fi networks + * networks: Fix display of strength and channel for Wi-Fi connections + * networks: Fix editing wireless connections with SSID field + * networks: Improve styling of badges in the information tables + * networks: wifi: In new connection page set form defaults properly + * nextcloud: Drop diagnostic for checking availability of docker.com + * rssbridge: Mention miniflux in app description similar to tt-rss + * tests: functional: Don't enable/disable app during tests + * tests: functional: Fix visit() returning prematurely before page load + * tests: functional: Wait for uninstall page load before uninstalling + * ui: Drop box shadow around the card in card lists + * ui: Drop logo backgrounds for index, apps, and system pages + == FreedomBox 24.23 (2024-11-04) == * backups: Better explanation for the format of upload file * backups: Sort list of apps in backup, restore, and schedules * base: Add link to about for unauthenticated users + * debian: Drop python3-flake8 build dependency * ejabberd: Set mod_mam default to always * functional tests: Add pytest testinfra plugin * help: Add all footer links to about page diff --git a/plinth/__init__.py b/plinth/__init__.py index f46f597ac..9907d5d12 100644 --- a/plinth/__init__.py +++ b/plinth/__init__.py @@ -3,4 +3,4 @@ Package init file. """ -__version__ = '24.23' +__version__ = '24.24' diff --git a/plinth/locale/ar/LC_MESSAGES/django.po b/plinth/locale/ar/LC_MESSAGES/django.po index 59b927d98..3ff1396ad 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2023-10-19 06:18+0000\n" "Last-Translator: Shaik \n" "Language-Team: Arabic Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -8366,7 +8387,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/ar_SA/LC_MESSAGES/django.po b/plinth/locale/ar_SA/LC_MESSAGES/django.po index 8e562e6c9..11f0d1a0c 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2020-06-10 15:41+0000\n" "Last-Translator: aiman an \n" "Language-Team: Arabic (Saudi Arabia) Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -8389,7 +8410,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/be/LC_MESSAGES/django.po b/plinth/locale/be/LC_MESSAGES/django.po index 671aaf88d..5bb2852f2 100644 --- a/plinth/locale/be/LC_MESSAGES/django.po +++ b/plinth/locale/be/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Automatically generated\n" "Language-Team: none\n" @@ -4771,7 +4771,7 @@ msgid "" msgstr "" #: modules/networks/templates/connection_show.html:316 -#: modules/networks/templates/connections_diagram.html:24 network.py:24 +#: modules/networks/templates/connections_diagram.html:24 network.py:25 msgid "External" msgstr "" @@ -4787,7 +4787,7 @@ msgid "Create Connection" msgstr "" #: modules/networks/templates/connections_delete.html:11 -#: modules/networks/views.py:536 +#: modules/networks/views.py:545 msgid "Delete Connection" msgstr "" @@ -4807,14 +4807,14 @@ msgstr "" #: modules/networks/templates/connections_diagram.html:29 #: modules/networks/templates/connections_diagram.html:59 -#: modules/networks/views.py:101 network.py:27 +#: modules/networks/views.py:101 network.py:28 msgid "Ethernet" msgstr "" #: modules/networks/templates/connections_diagram.html:32 #: modules/networks/templates/connections_diagram.html:62 #: modules/networks/templates/connections_fields_wifi.html:16 -#: modules/networks/views.py:102 network.py:28 +#: modules/networks/views.py:102 network.py:29 msgid "Wi-Fi" msgstr "" @@ -4825,7 +4825,7 @@ msgstr "" msgid "Show connection %(name)s" msgstr "" -#: modules/networks/templates/connections_diagram.html:53 network.py:24 +#: modules/networks/templates/connections_diagram.html:53 network.py:25 msgid "Internal" msgstr "" @@ -4834,7 +4834,7 @@ msgid "Computer" msgstr "" #: modules/networks/templates/connections_edit.html:19 -#: modules/networks/views.py:253 modules/networks/views.py:340 +#: modules/networks/views.py:253 modules/networks/views.py:341 msgid "Edit Connection" msgstr "" @@ -4842,7 +4842,7 @@ msgstr "" msgid "General" msgstr "" -#: modules/networks/templates/connections_fields_pppoe.html:16 network.py:29 +#: modules/networks/templates/connections_fields_pppoe.html:16 network.py:30 msgid "PPPoE" msgstr "" @@ -4852,13 +4852,13 @@ msgstr "" #: modules/networks/templates/connections_list.html:12 #: modules/networks/templates/connections_list.html:14 -#: modules/networks/views.py:389 +#: modules/networks/views.py:395 msgid "Nearby Wi-Fi Networks" msgstr "" #: modules/networks/templates/connections_list.html:17 #: modules/networks/templates/connections_list.html:19 -#: modules/networks/views.py:413 +#: modules/networks/views.py:420 #: modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "" @@ -5032,6 +5032,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" +#: modules/networks/templates/wifi_scan.html:14 +msgid "No Wi-Fi device detected." +msgstr "" + +#: modules/networks/templates/wifi_scan.html:21 +#, python-format +msgid "Device: %(interface_name)s" +msgstr "" + +#: modules/networks/templates/wifi_scan.html:27 +msgid "Last scanned: " +msgstr "" + +#: modules/networks/templates/wifi_scan.html:31 +msgid "never" +msgstr "" + +#: modules/networks/templates/wifi_scan.html:52 +msgid "No Wi-Fi networks found." +msgstr "" + #: modules/networks/views.py:27 msgid "disabled" msgstr "" @@ -5229,51 +5250,51 @@ msgstr "" msgid "This type of connection is not yet understood." msgstr "" -#: modules/networks/views.py:352 +#: modules/networks/views.py:353 #, python-brace-format msgid "Activated connection {name}." msgstr "" -#: modules/networks/views.py:356 +#: modules/networks/views.py:357 msgid "Failed to activate connection: Connection not found." msgstr "" -#: modules/networks/views.py:362 +#: modules/networks/views.py:363 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" -#: modules/networks/views.py:375 +#: modules/networks/views.py:376 #, python-brace-format msgid "Deactivated connection {name}." msgstr "" -#: modules/networks/views.py:379 +#: modules/networks/views.py:380 msgid "Failed to de-activate connection: Connection not found." msgstr "" -#: modules/networks/views.py:431 +#: modules/networks/views.py:438 msgid "Adding New Generic Connection" msgstr "" -#: modules/networks/views.py:449 +#: modules/networks/views.py:456 msgid "Adding New Ethernet Connection" msgstr "" -#: modules/networks/views.py:467 +#: modules/networks/views.py:474 msgid "Adding New PPPoE Connection" msgstr "" -#: modules/networks/views.py:502 +#: modules/networks/views.py:511 msgid "Adding New Wi-Fi Connection" msgstr "" -#: modules/networks/views.py:517 +#: modules/networks/views.py:526 #, python-brace-format msgid "Connection {name} deleted." msgstr "" -#: modules/networks/views.py:521 modules/networks/views.py:531 +#: modules/networks/views.py:530 modules/networks/views.py:540 msgid "Failed to delete connection: Connection not found." msgstr "" @@ -5974,20 +5995,20 @@ msgstr "" #: modules/rssbridge/__init__.py:28 #, python-brace-format msgid "" -"You can use RSS-Bridge with Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -8346,7 +8367,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/bg/LC_MESSAGES/django.po b/plinth/locale/bg/LC_MESSAGES/django.po index 9204fc241..9a1d2fcfb 100644 --- a/plinth/locale/bg/LC_MESSAGES/django.po +++ b/plinth/locale/bg/LC_MESSAGES/django.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-04 20:11-0500\n" -"PO-Revision-Date: 2024-10-23 05:15+0000\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" +"PO-Revision-Date: 2024-11-06 05:06+0000\n" "Last-Translator: 109247019824 \n" "Language-Team: Bulgarian \n" @@ -17,7 +17,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 5.8.2-dev\n" +"X-Generator: Weblate 5.8.2\n" #: config.py:103 #, python-brace-format @@ -244,7 +244,7 @@ msgid "" "This many latest backups are kept and the rest are removed. A value of \"0\" " "disables backups of this type. Triggered at specified hour every day." msgstr "" -"Такова броя от последните резервни копия ще бъдат запазвани, а останалите - " +"Такова броя от последните резервни копия ще бъдат запазвани, а останалите – " "премахвани. Стойност „0“ изключва този вид резервно копие. Изпълнява се в " "определен час всеки ден." @@ -326,6 +326,9 @@ msgid "" "file previously downloaded from the result of a successful backup on a " "{box_name}. It must have a .tar.gz extension." msgstr "" +"Изберете файла с резервно копие, който да изпратите от компютъра. Това " +"трябва да бъде файл, резултат от успешно резервно копие на {box_name}, който " +"е бил изтеглен предварително. Трябва да има разширение .tar.gz." #: modules/backups/forms.py:152 msgid "Repository path format incorrect." @@ -2776,10 +2779,8 @@ msgid "" msgstr "" #: modules/help/templates/help_about.html:85 -#, fuzzy -#| msgid "Learn more" msgid "Learn" -msgstr "Научете повече" +msgstr "Научете" #: modules/help/templates/help_about.html:88 msgid "Homepage" @@ -2791,17 +2792,15 @@ msgstr "Дарение" #: modules/help/templates/help_about.html:107 msgid "Join project" -msgstr "" +msgstr "Присъединете се към проекта" #: modules/help/templates/help_about.html:111 msgid "Translate" -msgstr "" +msgstr "Превеждане" #: modules/help/templates/help_about.html:117 -#, fuzzy -#| msgid "Get Support" msgid "Support" -msgstr "Получаване на помощ" +msgstr "Поддръжка" #: modules/help/templates/help_about.html:121 msgid "Forum" @@ -5016,7 +5015,7 @@ msgid "" msgstr "" #: modules/networks/templates/connection_show.html:316 -#: modules/networks/templates/connections_diagram.html:24 network.py:24 +#: modules/networks/templates/connections_diagram.html:24 network.py:25 msgid "External" msgstr "" @@ -5032,7 +5031,7 @@ msgid "Create Connection" msgstr "" #: modules/networks/templates/connections_delete.html:11 -#: modules/networks/views.py:536 +#: modules/networks/views.py:545 msgid "Delete Connection" msgstr "" @@ -5052,14 +5051,14 @@ msgstr "" #: modules/networks/templates/connections_diagram.html:29 #: modules/networks/templates/connections_diagram.html:59 -#: modules/networks/views.py:101 network.py:27 +#: modules/networks/views.py:101 network.py:28 msgid "Ethernet" msgstr "" #: modules/networks/templates/connections_diagram.html:32 #: modules/networks/templates/connections_diagram.html:62 #: modules/networks/templates/connections_fields_wifi.html:16 -#: modules/networks/views.py:102 network.py:28 +#: modules/networks/views.py:102 network.py:29 msgid "Wi-Fi" msgstr "" @@ -5070,7 +5069,7 @@ msgstr "" msgid "Show connection %(name)s" msgstr "" -#: modules/networks/templates/connections_diagram.html:53 network.py:24 +#: modules/networks/templates/connections_diagram.html:53 network.py:25 msgid "Internal" msgstr "" @@ -5079,7 +5078,7 @@ msgid "Computer" msgstr "" #: modules/networks/templates/connections_edit.html:19 -#: modules/networks/views.py:253 modules/networks/views.py:340 +#: modules/networks/views.py:253 modules/networks/views.py:341 msgid "Edit Connection" msgstr "Редактиране на връзката" @@ -5087,7 +5086,7 @@ msgstr "Редактиране на връзката" msgid "General" msgstr "" -#: modules/networks/templates/connections_fields_pppoe.html:16 network.py:29 +#: modules/networks/templates/connections_fields_pppoe.html:16 network.py:30 msgid "PPPoE" msgstr "PPPoE" @@ -5097,13 +5096,13 @@ msgstr "" #: modules/networks/templates/connections_list.html:12 #: modules/networks/templates/connections_list.html:14 -#: modules/networks/views.py:389 +#: modules/networks/views.py:395 msgid "Nearby Wi-Fi Networks" msgstr "" #: modules/networks/templates/connections_list.html:17 #: modules/networks/templates/connections_list.html:19 -#: modules/networks/views.py:413 +#: modules/networks/views.py:420 #: modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "" @@ -5277,6 +5276,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" +#: modules/networks/templates/wifi_scan.html:14 +msgid "No Wi-Fi device detected." +msgstr "" + +#: modules/networks/templates/wifi_scan.html:21 +#, python-format +msgid "Device: %(interface_name)s" +msgstr "" + +#: modules/networks/templates/wifi_scan.html:27 +msgid "Last scanned: " +msgstr "" + +#: modules/networks/templates/wifi_scan.html:31 +msgid "never" +msgstr "" + +#: modules/networks/templates/wifi_scan.html:52 +msgid "No Wi-Fi networks found." +msgstr "" + #: modules/networks/views.py:27 msgid "disabled" msgstr "" @@ -5474,51 +5494,51 @@ msgstr "Връзката не може да бъде променена: връ msgid "This type of connection is not yet understood." msgstr "" -#: modules/networks/views.py:352 +#: modules/networks/views.py:353 #, python-brace-format msgid "Activated connection {name}." msgstr "" -#: modules/networks/views.py:356 +#: modules/networks/views.py:357 msgid "Failed to activate connection: Connection not found." msgstr "" -#: modules/networks/views.py:362 +#: modules/networks/views.py:363 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" -#: modules/networks/views.py:375 +#: modules/networks/views.py:376 #, python-brace-format msgid "Deactivated connection {name}." msgstr "" -#: modules/networks/views.py:379 +#: modules/networks/views.py:380 msgid "Failed to de-activate connection: Connection not found." msgstr "" -#: modules/networks/views.py:431 +#: modules/networks/views.py:438 msgid "Adding New Generic Connection" msgstr "" -#: modules/networks/views.py:449 +#: modules/networks/views.py:456 msgid "Adding New Ethernet Connection" msgstr "" -#: modules/networks/views.py:467 +#: modules/networks/views.py:474 msgid "Adding New PPPoE Connection" msgstr "" -#: modules/networks/views.py:502 +#: modules/networks/views.py:511 msgid "Adding New Wi-Fi Connection" msgstr "" -#: modules/networks/views.py:517 +#: modules/networks/views.py:526 #, python-brace-format msgid "Connection {name} deleted." msgstr "" -#: modules/networks/views.py:521 modules/networks/views.py:531 +#: modules/networks/views.py:530 modules/networks/views.py:540 msgid "Failed to delete connection: Connection not found." msgstr "" @@ -6244,25 +6264,29 @@ msgstr "" "потребител, принадлежащ към групата feed-reader." #: modules/rssbridge/__init__.py:28 -#, python-brace-format +#, fuzzy, python-brace-format +#| msgid "" +#| "You can use RSS-Bridge with Tiny Tiny RSS to " +#| "follow various websites. When adding a feed, enable authentication and " +#| "use your {box_name} credentials." msgid "" -"You can use RSS-Bridge with Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" "Можете да използвате RSS-Bridge заедно с Tiny Tiny " "RSS, за да следвате различни страници. При добавяне на емисия, включете " "удостоверяването и използвайте данните за вход на {box_name}." -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "Четене и абонамент за новинарски емисии" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "RSS-Bridge" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "Създател на емисии на RSS" @@ -8147,8 +8171,6 @@ msgstr "" "бъдат пренебрегнати." #: modules/users/forms.py:252 -#, fuzzy -#| msgid "Delete User" msgid "Delete user" msgstr "Премахване на потребител" @@ -8157,12 +8179,12 @@ msgid "" "Deleting the user account will also remove all the files related to the " "user. Deleting files can be avoided by setting the user account as inactive." msgstr "" +"Премахването на профил на потребител ще премахне и всички прилежащи файлове. " +"Премахването на файлове може да бъде избегнато, като профилът бъде изключен." #: modules/users/forms.py:305 -#, fuzzy -#| msgid "Failed to add user to group." msgid "Failed to delete user." -msgstr "Потребителят не е добавен към групата." +msgstr "Потребителят не е премахнат." #: modules/users/forms.py:320 msgid "Renaming LDAP user failed." @@ -8288,31 +8310,32 @@ msgid "Save Changes" msgstr "Запазване на промените" #: modules/users/templates/users_update.html:41 -#, fuzzy, python-format -#| msgid "Delete user %(username)s permanently?" +#, python-format msgid "Delete user %(username)s and all the user's files?" msgstr "" -"Потвърждавате ли премахването на потребителя %(username)s?" +"Потвърждавате ли премахването на потребителя %(username)s и всички " +"негови файлове?" #: modules/users/templates/users_update.html:46 templates/messages.html:11 msgid "Close" -msgstr "" +msgstr "Затваряне" #: modules/users/templates/users_update.html:51 msgid "" "Deleting a user account also removes all the files user's home directory. If " "you wish to keep these files, disable the user account instead." msgstr "" +"При премахване на профил на потребител се премахват и всички файлове от " +"домашната му папка. Ако желаете тези файлове да бъдат запазени, вместо да " +"премахвате профила го изключете.." #: modules/users/templates/users_update.html:59 -#, fuzzy -#| msgid "Delete %(username)s" msgid "Delete user and files" -msgstr "Премахване на %(username)s" +msgstr "Премахване на файловете на %(username)s" #: modules/users/templates/users_update.html:62 msgid "Cancel" -msgstr "" +msgstr "Отказ" #: modules/users/views.py:41 #, python-format @@ -8329,10 +8352,9 @@ msgid "Edit User" msgstr "Промяна на потребител" #: modules/users/views.py:111 -#, fuzzy, python-format -#| msgid "User %(username)s created." +#, python-format msgid "User %(username)s deleted." -msgstr "Потребителят %(username)s е създаден." +msgstr "Потребителят %(username)s е премахнат." #: modules/users/views.py:130 msgid "Change Password" @@ -8730,7 +8752,7 @@ msgstr "Zoph" #: modules/zoph/__init__.py:57 msgid "Photo Organizer" -msgstr "" +msgstr "Организатор на фотографии" #: modules/zoph/forms.py:14 msgid "Enable OpenStreetMap for maps" @@ -8746,7 +8768,7 @@ msgstr "" #: modules/zoph/manifest.py:26 msgid "Photo" -msgstr "" +msgstr "Фотографии" #: modules/zoph/manifest.py:26 msgid "Organizer" @@ -8764,7 +8786,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" @@ -8946,7 +8968,7 @@ msgstr "Услугата %(service_name)s не работи." #: templates/apps.html:29 msgid "Search with tags" -msgstr "" +msgstr "Търсене по етикети" #: templates/base.html:31 msgid "" diff --git a/plinth/locale/bn/LC_MESSAGES/django.po b/plinth/locale/bn/LC_MESSAGES/django.po index e7bf7a53f..4a7b7a170 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2021-06-16 07:33+0000\n" "Last-Translator: Oymate \n" "Language-Team: Bengali Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -8404,7 +8425,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/cs/LC_MESSAGES/django.po b/plinth/locale/cs/LC_MESSAGES/django.po index 658aa7d75..7d9d2b5f3 100644 --- a/plinth/locale/cs/LC_MESSAGES/django.po +++ b/plinth/locale/cs/LC_MESSAGES/django.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-04 20:11-0500\n" -"PO-Revision-Date: 2024-10-24 15:15+0000\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" +"PO-Revision-Date: 2024-11-07 15:00+0000\n" "Last-Translator: Jiří Podhorecký \n" "Language-Team: Czech \n" @@ -17,7 +17,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=((n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2);\n" -"X-Generator: Weblate 5.8.2-dev\n" +"X-Generator: Weblate 5.8.2\n" #: config.py:103 #, python-brace-format @@ -322,6 +322,9 @@ msgid "" "file previously downloaded from the result of a successful backup on a " "{box_name}. It must have a .tar.gz extension." msgstr "" +"Vyberte záložní soubor, který chcete nahrát z místního počítače. Musí se " +"jednat o soubor, který byl dříve stažen jako výsledek úspěšného zálohování " +"na {box_name}. Musí mít příponu .tar.gz." #: modules/backups/forms.py:152 msgid "Repository path format incorrect." @@ -2946,8 +2949,6 @@ msgstr "" "source package_name \" v terminálu (pomocí Cockpit nebo SSH)." #: modules/help/templates/help_about.html:85 -#, fuzzy -#| msgid "Learn more" msgid "Learn" msgstr "Více informací" @@ -2961,17 +2962,15 @@ msgstr "Podpořit vývoj darem" #: modules/help/templates/help_about.html:107 msgid "Join project" -msgstr "" +msgstr "Připojte se k projektu" #: modules/help/templates/help_about.html:111 msgid "Translate" -msgstr "" +msgstr "Přeložte" #: modules/help/templates/help_about.html:117 -#, fuzzy -#| msgid "Get Support" msgid "Support" -msgstr "Získejte podporu" +msgstr "Podpora" #: modules/help/templates/help_about.html:121 msgid "Forum" @@ -5399,7 +5398,7 @@ msgstr "" "dostupné pouze vnitřně nebudou dostupné." #: modules/networks/templates/connection_show.html:316 -#: modules/networks/templates/connections_diagram.html:24 network.py:24 +#: modules/networks/templates/connections_diagram.html:24 network.py:25 msgid "External" msgstr "Vnější" @@ -5417,7 +5416,7 @@ msgid "Create Connection" msgstr "Vytvořit připojení" #: modules/networks/templates/connections_delete.html:11 -#: modules/networks/views.py:536 +#: modules/networks/views.py:545 msgid "Delete Connection" msgstr "Smazat připojení" @@ -5437,14 +5436,14 @@ msgstr "Mezery" #: modules/networks/templates/connections_diagram.html:29 #: modules/networks/templates/connections_diagram.html:59 -#: modules/networks/views.py:101 network.py:27 +#: modules/networks/views.py:101 network.py:28 msgid "Ethernet" msgstr "Ethernet" #: modules/networks/templates/connections_diagram.html:32 #: modules/networks/templates/connections_diagram.html:62 #: modules/networks/templates/connections_fields_wifi.html:16 -#: modules/networks/views.py:102 network.py:28 +#: modules/networks/views.py:102 network.py:29 msgid "Wi-Fi" msgstr "Wi-Fi" @@ -5455,7 +5454,7 @@ msgstr "Wi-Fi" msgid "Show connection %(name)s" msgstr "Zobrazit připojení %(name)s" -#: modules/networks/templates/connections_diagram.html:53 network.py:24 +#: modules/networks/templates/connections_diagram.html:53 network.py:25 msgid "Internal" msgstr "Vnitřní" @@ -5464,7 +5463,7 @@ msgid "Computer" msgstr "Počítač" #: modules/networks/templates/connections_edit.html:19 -#: modules/networks/views.py:253 modules/networks/views.py:340 +#: modules/networks/views.py:253 modules/networks/views.py:341 msgid "Edit Connection" msgstr "Upravit připojení" @@ -5472,7 +5471,7 @@ msgstr "Upravit připojení" msgid "General" msgstr "Obecné" -#: modules/networks/templates/connections_fields_pppoe.html:16 network.py:29 +#: modules/networks/templates/connections_fields_pppoe.html:16 network.py:30 msgid "PPPoE" msgstr "PPPoE" @@ -5482,13 +5481,13 @@ msgstr "Připojení" #: modules/networks/templates/connections_list.html:12 #: modules/networks/templates/connections_list.html:14 -#: modules/networks/views.py:389 +#: modules/networks/views.py:395 msgid "Nearby Wi-Fi Networks" msgstr "Wi-Fi sítě poblíž" #: modules/networks/templates/connections_list.html:17 #: modules/networks/templates/connections_list.html:19 -#: modules/networks/views.py:413 +#: modules/networks/views.py:420 #: modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "Přidat připojení" @@ -5704,6 +5703,32 @@ msgstr "" "směrovače a vyhledejte na internetu jeho příručku. Ten vám poskytne úplné " "pokyny k provedení tohoto úkolu." +#: modules/networks/templates/wifi_scan.html:14 +msgid "No Wi-Fi device detected." +msgstr "" + +#: modules/networks/templates/wifi_scan.html:21 +#, fuzzy, python-format +#| msgid "Delete %(username)s" +msgid "Device: %(interface_name)s" +msgstr "Smazat %(username)s" + +#: modules/networks/templates/wifi_scan.html:27 +#, fuzzy +#| msgid "Last Connected Time" +msgid "Last scanned: " +msgstr "Čas posledního připojení" + +#: modules/networks/templates/wifi_scan.html:31 +msgid "never" +msgstr "" + +#: modules/networks/templates/wifi_scan.html:52 +#, fuzzy +#| msgid "Wi-Fi network not found" +msgid "No Wi-Fi networks found." +msgstr "Síť Wi-Fi nebyla nalezena" + #: modules/networks/views.py:27 msgid "disabled" msgstr "vypnuto" @@ -5901,53 +5926,53 @@ msgstr "Připojení nelze upravit: Připojení neexistuje." msgid "This type of connection is not yet understood." msgstr "Tento typ připojení ještě není podporován." -#: modules/networks/views.py:352 +#: modules/networks/views.py:353 #, python-brace-format msgid "Activated connection {name}." msgstr "Připojení {name} aktivováno." -#: modules/networks/views.py:356 +#: modules/networks/views.py:357 msgid "Failed to activate connection: Connection not found." msgstr "Aktivace připojení se nezdařila: Připojení nenalezeno." -#: modules/networks/views.py:362 +#: modules/networks/views.py:363 #, 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í." -#: modules/networks/views.py:375 +#: modules/networks/views.py:376 #, python-brace-format msgid "Deactivated connection {name}." msgstr "Připojení {name} deaktivováno." -#: modules/networks/views.py:379 +#: modules/networks/views.py:380 msgid "Failed to de-activate connection: Connection not found." msgstr "Deaktivace připojení se nezdařila: Připojení nenalezeno." -#: modules/networks/views.py:431 +#: modules/networks/views.py:438 msgid "Adding New Generic Connection" msgstr "Přidávání nového generického připojení" -#: modules/networks/views.py:449 +#: modules/networks/views.py:456 msgid "Adding New Ethernet Connection" msgstr "Přidávání nového ethernetového připojení" -#: modules/networks/views.py:467 +#: modules/networks/views.py:474 msgid "Adding New PPPoE Connection" msgstr "Přidávání nového PPPoE připojení" -#: modules/networks/views.py:502 +#: modules/networks/views.py:511 msgid "Adding New Wi-Fi Connection" msgstr "Přidávání nového Wi-Fi připojení" -#: modules/networks/views.py:517 +#: modules/networks/views.py:526 #, python-brace-format msgid "Connection {name} deleted." msgstr "Připojení {name} smazáno." -#: modules/networks/views.py:521 modules/networks/views.py:531 +#: modules/networks/views.py:530 modules/networks/views.py:540 msgid "Failed to delete connection: Connection not found." msgstr "Smazání připojení se nezdařilo: Připojení nenalezeno." @@ -6795,25 +6820,29 @@ msgstr "" "href=\"{users_url}\">každý uživatel patřící do skupiny feed-reader." #: modules/rssbridge/__init__.py:28 -#, python-brace-format +#, fuzzy, python-brace-format +#| msgid "" +#| "You can use RSS-Bridge with Tiny Tiny RSS to " +#| "follow various websites. When adding a feed, enable authentication and " +#| "use your {box_name} credentials." msgid "" -"You can use RSS-Bridge with Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" "RSS-Bridge můžete používat s Tiny Tiny RSS pro " "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}." -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "Číst a přihlásit se k odběru novinek" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "RSS-Bridge" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "Generátor kanálů RSS" @@ -8834,8 +8863,6 @@ msgstr "" "řádek. Prázdné řádky a ty, které začínají na znak # budou ignorovány." #: modules/users/forms.py:252 -#, fuzzy -#| msgid "Delete User" msgid "Delete user" msgstr "Smazat uživatele" @@ -8844,12 +8871,13 @@ msgid "" "Deleting the user account will also remove all the files related to the " "user. Deleting files can be avoided by setting the user account as inactive." msgstr "" +"Odstraněním uživatelského účtu se odstraní také všechny soubory související " +"s uživatelem. Odstranění souborů lze zabránit nastavením uživatelského účtu " +"jako neaktivního." #: modules/users/forms.py:305 -#, fuzzy -#| msgid "Failed to add user to group." msgid "Failed to delete user." -msgstr "Přidání uživatele do skupiny se nezdařilo." +msgstr "Uživatele se nepodařilo odstranit." #: modules/users/forms.py:320 msgid "Renaming LDAP user failed." @@ -8974,10 +9002,9 @@ msgid "Save Changes" msgstr "Uložit změny" #: modules/users/templates/users_update.html:41 -#, fuzzy, python-format -#| msgid "Delete user %(username)s permanently?" +#, python-format msgid "Delete user %(username)s and all the user's files?" -msgstr "Nevratně smazat uživatele %(username)s?" +msgstr "Smazat uživatele %(username)s a všechny jeho soubory?" #: modules/users/templates/users_update.html:46 templates/messages.html:11 msgid "Close" @@ -8988,12 +9015,13 @@ msgid "" "Deleting a user account also removes all the files user's home directory. If " "you wish to keep these files, disable the user account instead." msgstr "" +"Odstraněním uživatelského účtu se odstraní také všechny soubory domovského " +"adresáře uživatele. Pokud si přejete tyto soubory zachovat, zakažte raději " +"uživatelský účet." #: modules/users/templates/users_update.html:59 -#, fuzzy -#| msgid "Delete files" msgid "Delete user and files" -msgstr "Smazat soubory" +msgstr "Odstranit uživatele a soubory" #: modules/users/templates/users_update.html:62 msgid "Cancel" @@ -9014,10 +9042,9 @@ msgid "Edit User" msgstr "Upravit uživatele" #: modules/users/views.py:111 -#, fuzzy, python-format -#| msgid "User %(username)s created." +#, python-format msgid "User %(username)s deleted." -msgstr "Uživatel %(username)s vytvořen." +msgstr "Uživatel %(username)s smazán." #: modules/users/views.py:130 msgid "Change Password" @@ -9508,7 +9535,7 @@ msgstr "" "Uživatelský účet %(username)s se stane administrátorským " "účtem pro Zoph." -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "Obecné" @@ -9985,10 +10012,6 @@ msgstr "gudžarátština" #~ "Více informací o projektu %(box_name)s naleznete na %(box_name)s Wiki." -#, python-format -#~ msgid "Delete %(username)s" -#~ msgstr "Smazat %(username)s" - #, python-format #~ msgid "Delete user %(username)s" #~ msgstr "Smazat uživatele %(username)s" diff --git a/plinth/locale/da/LC_MESSAGES/django.po b/plinth/locale/da/LC_MESSAGES/django.po index c677e7342..225801648 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2022-09-14 17:19+0000\n" "Last-Translator: ikmaak \n" "Language-Team: Danish Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 #, fuzzy #| msgid "Bridge" msgid "RSS-Bridge" msgstr "Bro" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -9692,7 +9718,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" @@ -10209,10 +10235,6 @@ msgstr "" #~ "For mere information om %(box_name)s-projektet, se %(box_name)s Wiki-siden." -#, python-format -#~ msgid "Delete %(username)s" -#~ msgstr "Slet %(username)s" - #, python-format #~ msgid "Delete user %(username)s" #~ msgstr "Slet bruger %(username)s" diff --git a/plinth/locale/de/LC_MESSAGES/django.po b/plinth/locale/de/LC_MESSAGES/django.po index 57f23b6b9..118bb9f54 100644 --- a/plinth/locale/de/LC_MESSAGES/django.po +++ b/plinth/locale/de/LC_MESSAGES/django.po @@ -9,9 +9,9 @@ msgid "" msgstr "" "Project-Id-Version: FreedomBox UI\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-04 20:11-0500\n" -"PO-Revision-Date: 2024-10-26 23:15+0000\n" -"Last-Translator: Ettore Atalan \n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" +"PO-Revision-Date: 2024-11-07 15:00+0000\n" +"Last-Translator: Dietmar \n" "Language-Team: German \n" "Language: de\n" @@ -19,7 +19,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 5.8.2-dev\n" +"X-Generator: Weblate 5.8.2\n" #: config.py:103 #, python-brace-format @@ -330,6 +330,10 @@ msgid "" "file previously downloaded from the result of a successful backup on a " "{box_name}. It must have a .tar.gz extension." msgstr "" +"Wählen Sie die Sicherungsdatei aus, die vom lokalen Computer hochgeladen " +"werden soll. Es muss sich um eine Datei handeln, die zuvor nach einer " +"erfolgreichen Sicherung einer {box_name} heruntergeladen wurde. Sie muss " +"eine .tar.gz-Erweiterung haben." #: modules/backups/forms.py:152 msgid "Repository path format incorrect." @@ -1249,16 +1253,12 @@ msgid "Server Administration" msgstr "Serververwaltung" #: modules/config/__init__.py:18 -#, fuzzy -#| msgid "" -#| "Here you can set some general configuration options like hostname, domain " -#| "name, webserver home page etc." msgid "" "Here you can set some general configuration options like webserver home page " "etc." msgstr "" -"Hier können Sie einige allgemeine Konfigurationsoptionen wie Hostname, " -"Domainname, Webserver-Homepage usw. festlegen." +"Hier können Sie einige allgemeine Konfigurationsoptionen wie die Startseite " +"des Webservers usw. einstellen." #: modules/config/__init__.py:40 msgid "General Configuration" @@ -2084,35 +2084,24 @@ msgid "XMPP" msgstr "XMPP" #: modules/ejabberd/templates/ejabberd.html:18 -#, fuzzy, python-format -#| msgid "" -#| "Your XMPP server domain is set to %(domainname)s. User IDs will " -#| "look like username@%(domainname)s. You can setup your domain on " -#| "the system Configure page." +#, python-format msgid "" "Your XMPP server domain is set to %(domain_name)s. User IDs will look " "like username@%(domain_name)s. You can setup your domain on the " "system Name Services page." msgstr "" -"Ihre XMPP-Serverdomain ist auf %(domainname)s eingestellt. Benutzer-" -"IDs erscheinen als username@%(domainname)s. Sie können Ihre Domain " -"auf der Seite Systemeinstellungen " -"konfigurieren." +"Ihre XMPP-Serverdomain ist auf %(domain_name)s eingestellt. Benutzer-" +"IDs erscheinen als username@%(domain_name)s. Sie können Ihre Domain " +"auf der Seite Namen Dienste konfigurieren." #: modules/ejabberd/templates/ejabberd.html:25 -#, fuzzy, python-format -#| msgid "" -#| "Your XMPP server domain is set to %(domainname)s. User IDs will " -#| "look like username@%(domainname)s. You can setup your domain on " -#| "the system Configure page." +#, python-format msgid "" "Your XMPP server domain is not set. You can setup your domain on the system " "Name Services page." msgstr "" -"Ihre XMPP-Serverdomain ist auf %(domainname)s eingestellt. Benutzer-" -"IDs erscheinen als username@%(domainname)s. Sie können Ihre Domain " -"auf der Seite Systemeinstellungen " -"konfigurieren." +"Die Domäne Ihres XMPP-Servers ist nicht festgelegt. Sie können Ihre Domäne " +"auf der Seite Namensdienste konfigurieren." #: modules/email/__init__.py:26 msgid "" @@ -2244,7 +2233,7 @@ msgstr "IMAP" #: modules/email/manifest.py:82 msgid "Spam control" -msgstr "" +msgstr "Spam-Kontrolle" #: modules/email/templates/email-aliases.html:13 #: modules/email/templates/email.html:15 @@ -2311,6 +2300,10 @@ msgid "" "a single HTML file on your {box_name}. You can use it as a personal wiki, as " "a web notebook, or for project documentation." msgstr "" +"Feather Wiki ist ein Werkzeug zur Erstellung einfacher, in sich " +"geschlossener Wikis, die jeweils in einer einzigen HTML-Datei auf Ihrer " +"{box_name} gespeichert sind. Sie können es als persönliches Wiki, als Web-" +"Notizbuch oder zur Projektdokumentation verwenden." #: modules/featherwiki/__init__.py:29 msgid "" @@ -2318,6 +2311,9 @@ msgid "" "wiki per topic. Customize each wiki to your liking with extensions and other " "customization options." msgstr "" +"Jedes Wiki ist eine kleine Datei. Sie können so viele Wikis erstellen, wie " +"Sie möchten, z. B. ein Wiki pro Thema. Passen Sie jedes Wiki nach Ihren " +"Wünschen mit Erweiterungen und anderen Anpassungsoptionen an." #: modules/featherwiki/__init__.py:33 #, python-brace-format @@ -2325,6 +2321,8 @@ msgid "" "Feather Wiki is downloaded from {box_name} website and not from Debian. " "Wikis need to be upgraded to newer version manually." msgstr "" +"Feather Wiki wird von der {box_name} Website heruntergeladen und nicht von " +"Debian. Wikis müssen manuell auf eine neuere Version aktualisiert werden." #: modules/featherwiki/__init__.py:37 modules/tiddlywiki/__init__.py:41 #, python-brace-format @@ -2334,6 +2332,11 @@ msgid "" "{box_name} belonging to the wiki group. Simultaneous editing is not " "supported." msgstr "" +"Wikis sind standardmäßig nicht öffentlich, aber sie können zum Teilen oder " +"Veröffentlichen heruntergeladen werden. Sie können von jedem Benutzer auf {box_name}, der zur Wiki-" +"Gruppe gehört, bearbeitet werden. Gleichzeitige Bearbeitung wird nicht " +"unterstützt." #: modules/featherwiki/__init__.py:56 modules/ikiwiki/__init__.py:80 #: modules/tiddlywiki/__init__.py:61 @@ -2346,37 +2349,40 @@ msgstr "Feather-Wiki" #: modules/featherwiki/__init__.py:61 msgid "Personal Notebooks" -msgstr "" +msgstr "Persönliche Notizbücher" #: modules/featherwiki/forms.py:13 modules/tiddlywiki/forms.py:13 msgid "Name of the wiki file, with file extension \".html\"" -msgstr "" +msgstr "Name der Wiki-Datei, mit Dateierweiterung „.html“" #: modules/featherwiki/forms.py:15 modules/tiddlywiki/forms.py:15 msgid "" "Wiki title and description can be set from within the wiki. This file name " "is independent of the wiki title." msgstr "" +"Wiki-Titel und -Beschreibung können innerhalb des Wikis festgelegt werden. " +"Dieser Dateiname ist unabhängig vom Titel des Wikis." #: modules/featherwiki/forms.py:23 modules/tiddlywiki/forms.py:23 msgid "New name for the wiki file, with file extension \".html\"" -msgstr "" +msgstr "Neuer Name für die Wiki-Datei, mit Dateierweiterung „.html“" #: modules/featherwiki/forms.py:25 modules/tiddlywiki/forms.py:25 msgid "Renaming the file has no effect on the title of the wiki." msgstr "" +"Die Umbenennung der Datei hat keine Auswirkung auf den Titel des Wikis." #: modules/featherwiki/forms.py:32 msgid "A Feather Wiki file with .html file extension" -msgstr "" +msgstr "Eine Feather-Wiki-Datei mit der Dateierweiterung .html" #: modules/featherwiki/forms.py:35 msgid "Feather Wiki files must be in HTML format" -msgstr "" +msgstr "Feather-Wiki-Dateien müssen im HTML-Format vorliegen" #: modules/featherwiki/forms.py:37 msgid "Upload an existing Feather Wiki file from this computer." -msgstr "" +msgstr "Laden Sie eine bestehende Feather-Wiki-Datei von diesem Computer hoch." #: modules/featherwiki/manifest.py:18 modules/help/templates/help_about.html:96 #: modules/ikiwiki/manifest.py:15 modules/mediawiki/__init__.py:52 @@ -2459,6 +2465,8 @@ msgid "" "Hint: You can download a copy of this wiki from within " "Feather Wiki before deleting it." msgstr "" +"Hinweis: Sie können eine Kopie dieses Wikis aus dem Feather " +"Wiki herunterladen, bevor Sie es löschen." #: modules/featherwiki/templates/featherwiki_delete.html:25 #: modules/tiddlywiki/templates/tiddlywiki_delete.html:25 @@ -2658,6 +2666,9 @@ msgid "" "Automatic software update " "runs daily by default. For the first time, manually run it now." msgstr "" +"Die automatische Softwareaktualisierung läuft standardmäßig täglich. " +"Führen Sie es jetzt zum ersten Mal manuell aus." #: modules/first_boot/templates/firstboot_complete.html:27 #: modules/upgrades/templates/upgrades_configure.html:108 @@ -2669,6 +2680,8 @@ msgstr "Jetzt aktualisieren" msgid "" "Review privacy options." msgstr "" +"Überprüfen Sie die Datenschutzoptionen." #: modules/first_boot/templates/firstboot_complete.html:46 #, python-format @@ -2676,12 +2689,17 @@ msgid "" "Review and setup network " "connections. Change the default Wi-Fi password, if applicable." msgstr "" +"Überprüfen und richten Sie Netzwerkverbindungen ein. Ändern Sie das Standard-Wi-" +"Fi-Passwort, falls erforderlich." #: modules/first_boot/templates/firstboot_complete.html:57 #, python-format msgid "" "Configure a domain name." msgstr "" +"Konfigurieren Sie einen Domainnamen." #: modules/first_boot/templates/firstboot_complete.html:67 #, python-format @@ -2689,6 +2707,8 @@ msgid "" "Configure and schedule remote backups." msgstr "" +"Konfigurieren und planen Sie Remote Backups." #: modules/first_boot/templates/firstboot_complete.html:78 #, python-format @@ -2696,6 +2716,8 @@ msgid "" "Put %(box_name)s to use by installing apps." msgstr "" +"Verwenden Sie %(box_name)s, indem Sie apps installieren." #: modules/first_boot/templates/firstboot_welcome.html:29 msgid "Start Setup" @@ -3006,11 +3028,11 @@ msgstr "Spenden" #: modules/help/templates/help_about.html:107 msgid "Join project" -msgstr "" +msgstr "Dem Projekt beitreten" #: modules/help/templates/help_about.html:111 msgid "Translate" -msgstr "" +msgstr "Übersetzen" #: modules/help/templates/help_about.html:117 #, fuzzy @@ -3331,7 +3353,7 @@ msgstr "Anonymisierungsnetzwerk" #: modules/shadowsocks/manifest.py:19 modules/shadowsocksserver/manifest.py:18 #: modules/tor/manifest.py:60 modules/torproxy/manifest.py:57 msgid "Censorship resistance" -msgstr "" +msgstr "Schutz vor Zensur" #: modules/i2p/templates/i2p.html:12 msgid "I2P Proxies and Tunnels" @@ -3417,7 +3439,7 @@ msgstr "Admin-Konto-Passwort" #: modules/ikiwiki/manifest.py:15 modules/wordpress/manifest.py:26 msgid "Blog" -msgstr "" +msgstr "Blog" #: modules/ikiwiki/templates/ikiwiki_configure.html:12 msgid "Manage Wikis and Blogs" @@ -3534,7 +3556,7 @@ msgstr "" #: modules/infinoted/manifest.py:46 msgid "Collaborative editing" -msgstr "" +msgstr "Gemeinschaftliche Bearbeitung" #: modules/janus/__init__.py:23 msgid "Janus is a lightweight WebRTC server." @@ -3564,14 +3586,12 @@ msgid "Janus Video Room" msgstr "Janus-Videoraum" #: modules/janus/manifest.py:16 -#, fuzzy -#| msgid "WebRTC server" msgid "WebRTC" -msgstr "WebRTC-Server" +msgstr "WebRTC" #: modules/janus/manifest.py:16 msgid "Web conference" -msgstr "" +msgstr "Web-Konferenz" #: modules/janus/templates/janus_video_room.html:205 #: modules/jsxc/templates/jsxc_launch.html:117 templates/base.html:263 @@ -3595,16 +3615,14 @@ msgid "Chat Client" msgstr "Chatclient" #: modules/jsxc/manifest.py:16 -#, fuzzy -#| msgid "Web Search" msgid "Web chat" -msgstr "Websuche" +msgstr "Web-Chat" #: modules/jsxc/manifest.py:16 modules/quassel/manifest.py:54 #, fuzzy #| msgid "IRC Client" msgid "Client" -msgstr "IRC-Client" +msgstr "Client" #: modules/kiwix/__init__.py:21 msgid "" @@ -3680,22 +3698,18 @@ msgstr "" "sofort gelöscht, um Speicherplatz zu sparen." #: modules/kiwix/manifest.py:23 -#, fuzzy -#| msgid "Offline Wikipedia" msgid "Offline reader" -msgstr "Wikipedia offline" +msgstr "Offline-Leser" #: modules/kiwix/manifest.py:24 #, fuzzy #| msgid "Archive name" msgid "Archival" -msgstr "Archivname" +msgstr "Archivierung" #: modules/kiwix/manifest.py:26 -#, fuzzy -#| msgid "Offline Wikipedia" msgid "Wikipedia" -msgstr "Wikipedia offline" +msgstr "Wikipedia" #: modules/kiwix/templates/kiwix-add-package.html:24 #, python-format @@ -3749,10 +3763,8 @@ msgid "Add a new content package" msgstr "Ein neues Inhaltspaket hinzufügen" #: modules/kiwix/views.py:76 -#, fuzzy -#| msgid "Content package added." msgid "Content package already exists." -msgstr "Inhaltspaket hinzugefügt." +msgstr "Das Inhaltspaket existiert bereits." #: modules/kiwix/views.py:79 msgid "Failed to add content package." @@ -3849,16 +3861,13 @@ msgid "Obtain" msgstr "Beziehen" #: modules/letsencrypt/templates/letsencrypt.html:112 -#, fuzzy, python-format -#| msgid "" -#| "No domains have been configured. Configure " -#| "domains to be able to obtain certificates for them." +#, python-format msgid "" "No domains have been configured. Configure " "domains to be able to obtain certificates for them." msgstr "" "Es wurden keine Domains konfiguriert. Um Zertifikate erhalten zu können, " -"müssen Domains konfiguriert werden." +"müssen Domains konfiguriert werden." #: modules/letsencrypt/views.py:40 #, python-brace-format @@ -3984,16 +3993,12 @@ msgid "FluffyChat" msgstr "FluffyChat" #: modules/matrixsynapse/manifest.py:101 modules/quassel/manifest.py:54 -#, fuzzy -#| msgid "IRC Chatroom" msgid "Chat room" -msgstr "IRC-Chatraum" +msgstr "Chatraum" #: modules/matrixsynapse/manifest.py:105 -#, fuzzy -#| msgid "Media streaming server" msgid "Matrix server" -msgstr "Medien-Streaming-Server" +msgstr "Matrix Server" #: modules/matrixsynapse/templates/matrix-synapse-pre-setup.html:15 #: modules/miniflux/templates/miniflux.html:12 @@ -4338,10 +4343,8 @@ msgstr "" "erleiden." #: modules/minetest/manifest.py:49 -#, fuzzy -#| msgid "Updated server." msgid "Game server" -msgstr "Aktualisierter Server." +msgstr "Spiele Server" #: modules/minetest/manifest.py:49 #, fuzzy @@ -4351,7 +4354,7 @@ msgstr "Block-Sandkasten" #: modules/minetest/manifest.py:49 msgid "Platform" -msgstr "" +msgstr "Plattform" #: modules/minetest/templates/minetest.html:17 modules/networks/forms.py:105 #: modules/networks/forms.py:145 @@ -4414,24 +4417,20 @@ msgid "totem" msgstr "Totem" #: modules/minidlna/manifest.py:116 -#, fuzzy -#| msgid "Simple Media Server" msgid "Media server" -msgstr "Einfacher Medienserver" +msgstr "Medienserver" #: modules/minidlna/manifest.py:116 msgid "Television" -msgstr "" +msgstr "Television" #: modules/minidlna/manifest.py:116 msgid "UPnP" -msgstr "" +msgstr "UPnP" #: modules/minidlna/manifest.py:116 -#, fuzzy -#| msgid "MiniDLNA" msgid "DLNA" -msgstr "MiniDLNA" +msgstr "DLNA" #: modules/minidlna/views.py:33 msgid "Updated media directory" @@ -4445,6 +4444,12 @@ msgid "" "subscribe to your favorite sites and access full article contents within the " "reader itself." msgstr "" +"Miniflux ist ein webbasiertes Werkzeug, das Nachrichten und Blog-Updates von " +"verschiedenen Websites in einem zentralen, leicht zu lesenden Format " +"zusammenfasst. Es hat eine einfache Schnittstelle und konzentriert sich auf " +"ein ablenkungsfreies Leseerlebnis. Sie können Ihre Lieblingsseiten " +"abonnieren und auf den kompletten Inhalt der Artikel direkt im Reader " +"zugreifen." #: modules/miniflux/__init__.py:23 msgid "" @@ -4454,45 +4459,40 @@ msgid "" "are several third-party clients as well." msgstr "" +"Zu den wichtigsten Funktionen gehören Tastaturkürzel für die schnelle " +"Navigation, Volltextsuche, Filtern von Artikeln, Kategorien und Favoriten. " +"Miniflux wahrt die Privatsphäre der Nutzer, indem es Tracker entfernt. Die " +"primäre Schnittstelle ist webbasiert. Es gibt auch mehrere Clients von " +"Drittanbietern." #: modules/miniflux/__init__.py:42 modules/miniflux/manifest.py:10 msgid "Miniflux" -msgstr "" +msgstr "Miniflux" #: modules/miniflux/__init__.py:44 modules/ttrss/__init__.py:51 msgid "News Feed Reader" msgstr "Feedreader" #: modules/miniflux/forms.py:12 -#, fuzzy -#| msgid "Enter a valid username." msgid "Enter a username for the user." -msgstr "Einen gültigen Benutzernamen eingeben." +msgstr "Geben Sie einen Namen für den Benutzer ein." #: modules/miniflux/forms.py:16 msgid "Enter a strong password with a minimum of 6 characters." -msgstr "" +msgstr "Geben Sie ein sicheres Passwort mit mindestens 6 Zeichen ein." #: modules/miniflux/forms.py:18 -#, fuzzy -#| msgid "Updating configuration" msgid "Password confirmation" -msgstr "Aktualisieren der Konfiguration" +msgstr "Bestätigung des Passworts" #: modules/miniflux/forms.py:20 -#, fuzzy -#| msgid "" -#| "Enter the password for user \"{user}\" to authorize account modifications." msgid "Enter the same password for confirmation." -msgstr "" -"Geben Sie das Passwort für den Benutzer „{user}“ ein, um Kontoänderungen zu " -"autorisieren." +msgstr "Geben Sie zur Bestätigung das gleiche Passwort ein." #: modules/miniflux/forms.py:31 -#, fuzzy -#| msgid "Password updated" msgid "Passwords do not match." -msgstr "Passwort geändert" +msgstr "Passwörter stimmen nicht überein." #: modules/miniflux/manifest.py:18 msgid "Fluent Reader Lite" @@ -4502,7 +4502,7 @@ msgstr "" #, fuzzy #| msgid "News Feed Reader" msgid "Fluent Reader" -msgstr "Feedreader" +msgstr "Fluent Reader" #: modules/miniflux/manifest.py:46 msgid "FluxNews" @@ -4524,7 +4524,7 @@ msgstr "" #, fuzzy #| msgid "Read" msgid "Read You" -msgstr "Lesen" +msgstr "Read You" #: modules/miniflux/manifest.py:106 msgid "RSS Guard" @@ -4538,14 +4538,14 @@ msgstr "Feedreader" #: modules/miniflux/manifest.py:138 modules/ttrss/manifest.py:55 msgid "News aggregation" -msgstr "" +msgstr "Aggregation von Nachrichten" #: modules/miniflux/manifest.py:138 modules/rssbridge/manifest.py:16 #: modules/ttrss/manifest.py:55 #, fuzzy #| msgid "SSH" msgid "RSS" -msgstr "SSH" +msgstr "RSS" #: modules/miniflux/manifest.py:138 modules/rssbridge/manifest.py:16 #: modules/ttrss/manifest.py:55 @@ -4557,6 +4557,8 @@ msgid "" "Create an admin user to get started. Other users can be created from within " "Miniflux." msgstr "" +"Erstellen Sie einen Admin-Benutzer, um zu beginnen. Weitere Benutzer können " +"von Miniflux aus erstellt werden." #: modules/miniflux/templates/miniflux.html:22 #: modules/miniflux/templates/miniflux.html:24 @@ -4729,6 +4731,7 @@ msgstr "Secure Shell" #: modules/names/forms.py:21 msgid "Use DNS-over-TLS for resolving domains (global preference)" msgstr "" +"DNS-over-TLS für die Auflösung von Domänen verwenden (globale Präferenz)" #: modules/names/forms.py:49 msgid "Use DNSSEC when resolving domains (global preference)" @@ -5040,6 +5043,8 @@ msgid "" "Link-local: Configure automatically to use an address that is only relevant " "to this network." msgstr "" +"Link-local: Automatisch konfigurieren, um eine Adresse zu verwenden, die nur " +"für dieses Netzwerk relevant ist." #: modules/networks/forms.py:141 msgid "Ignore: Ignore this addressing method" @@ -5521,7 +5526,7 @@ msgstr "" "Dienste, die nur intern zur Verfügung stehen sollten, nicht verfügbar sein." #: modules/networks/templates/connection_show.html:316 -#: modules/networks/templates/connections_diagram.html:24 network.py:24 +#: modules/networks/templates/connections_diagram.html:24 network.py:25 msgid "External" msgstr "Extern" @@ -5539,7 +5544,7 @@ msgid "Create Connection" msgstr "Verbindung anlegen" #: modules/networks/templates/connections_delete.html:11 -#: modules/networks/views.py:536 +#: modules/networks/views.py:545 msgid "Delete Connection" msgstr "Verbindung löschen" @@ -5559,14 +5564,14 @@ msgstr "Abstand" #: modules/networks/templates/connections_diagram.html:29 #: modules/networks/templates/connections_diagram.html:59 -#: modules/networks/views.py:101 network.py:27 +#: modules/networks/views.py:101 network.py:28 msgid "Ethernet" msgstr "Ethernet" #: modules/networks/templates/connections_diagram.html:32 #: modules/networks/templates/connections_diagram.html:62 #: modules/networks/templates/connections_fields_wifi.html:16 -#: modules/networks/views.py:102 network.py:28 +#: modules/networks/views.py:102 network.py:29 msgid "Wi-Fi" msgstr "WLAN" @@ -5577,7 +5582,7 @@ msgstr "WLAN" msgid "Show connection %(name)s" msgstr "Verbindung %(name)s anzeigen" -#: modules/networks/templates/connections_diagram.html:53 network.py:24 +#: modules/networks/templates/connections_diagram.html:53 network.py:25 msgid "Internal" msgstr "Intern" @@ -5586,7 +5591,7 @@ msgid "Computer" msgstr "Computer" #: modules/networks/templates/connections_edit.html:19 -#: modules/networks/views.py:253 modules/networks/views.py:340 +#: modules/networks/views.py:253 modules/networks/views.py:341 msgid "Edit Connection" msgstr "Verbindung bearbeiten" @@ -5594,7 +5599,7 @@ msgstr "Verbindung bearbeiten" msgid "General" msgstr "Allgemein" -#: modules/networks/templates/connections_fields_pppoe.html:16 network.py:29 +#: modules/networks/templates/connections_fields_pppoe.html:16 network.py:30 msgid "PPPoE" msgstr "PPPoE" @@ -5604,13 +5609,13 @@ msgstr "Verbindungen" #: modules/networks/templates/connections_list.html:12 #: modules/networks/templates/connections_list.html:14 -#: modules/networks/views.py:389 +#: modules/networks/views.py:395 msgid "Nearby Wi-Fi Networks" msgstr "WLANs in der Nähe" #: modules/networks/templates/connections_list.html:17 #: modules/networks/templates/connections_list.html:19 -#: modules/networks/views.py:413 +#: modules/networks/views.py:420 #: modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "Verbindung hinzufügen" @@ -5830,6 +5835,32 @@ msgstr "" "Routers. Hier finden Sie eine vollständige Anleitung, wie diese Aufgabe zu " "erfüllen ist." +#: modules/networks/templates/wifi_scan.html:14 +msgid "No Wi-Fi device detected." +msgstr "" + +#: modules/networks/templates/wifi_scan.html:21 +#, fuzzy, python-format +#| msgid "Delete %(username)s" +msgid "Device: %(interface_name)s" +msgstr "%(username)s löschen" + +#: modules/networks/templates/wifi_scan.html:27 +#, fuzzy +#| msgid "Last Connected Time" +msgid "Last scanned: " +msgstr "Letzte verbundene Zeit" + +#: modules/networks/templates/wifi_scan.html:31 +msgid "never" +msgstr "" + +#: modules/networks/templates/wifi_scan.html:52 +#, fuzzy +#| msgid "Wi-Fi network not found" +msgid "No Wi-Fi networks found." +msgstr "Wi-Fi-Netzwerk nicht gefunden" + #: modules/networks/views.py:27 msgid "disabled" msgstr "deaktiviert" @@ -5851,8 +5882,9 @@ msgid "link-local" msgstr "link-lokal" #: modules/networks/views.py:32 +#, fuzzy msgid "dhcp" -msgstr "" +msgstr "dhcp" #: modules/networks/views.py:33 msgid "ignore" @@ -6027,53 +6059,53 @@ msgstr "Kann Verbindung nicht bearbeiten: Verbindung nicht gefunden." msgid "This type of connection is not yet understood." msgstr "Dieser Verbindungstyp ist noch nicht bekannt." -#: modules/networks/views.py:352 +#: modules/networks/views.py:353 #, python-brace-format msgid "Activated connection {name}." msgstr "Verbindung {name} aktiviert." -#: modules/networks/views.py:356 +#: modules/networks/views.py:357 msgid "Failed to activate connection: Connection not found." msgstr "Fehler beim Einschalten der Verbindung: Verbindung nicht gefunden." -#: modules/networks/views.py:362 +#: modules/networks/views.py:363 #, 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." -#: modules/networks/views.py:375 +#: modules/networks/views.py:376 #, python-brace-format msgid "Deactivated connection {name}." msgstr "Verbindung {name} ausgeschaltet." -#: modules/networks/views.py:379 +#: modules/networks/views.py:380 msgid "Failed to de-activate connection: Connection not found." msgstr "Konnte Verbindung nicht ausschalten: Verbindung nicht gefunden." -#: modules/networks/views.py:431 +#: modules/networks/views.py:438 msgid "Adding New Generic Connection" msgstr "Neue generische Verbindung wird hinzugefügt" -#: modules/networks/views.py:449 +#: modules/networks/views.py:456 msgid "Adding New Ethernet Connection" msgstr "Neue Ethernet-Verbindung wird hinzugefügt" -#: modules/networks/views.py:467 +#: modules/networks/views.py:474 msgid "Adding New PPPoE Connection" msgstr "Neue PPPoE-Verbindung wird hinzugefügt" -#: modules/networks/views.py:502 +#: modules/networks/views.py:511 msgid "Adding New Wi-Fi Connection" msgstr "WLAN-Verbindung wird hinzugefügt" -#: modules/networks/views.py:517 +#: modules/networks/views.py:526 #, python-brace-format msgid "Connection {name} deleted." msgstr "Verbindung {name} gelöscht." -#: modules/networks/views.py:521 modules/networks/views.py:531 +#: modules/networks/views.py:530 modules/networks/views.py:540 msgid "Failed to delete connection: Connection not found." msgstr "Konnte Verbindung nicht löschen: Verbindung nicht gefunden." @@ -6622,6 +6654,10 @@ msgid "" "available. Can be disabled in most cases if network connectivity is stable " "and reliable." msgstr "" +"Verwendung bekannter öffentlicher DNS-Server zur Auflösung von Domänennamen " +"unter ungewöhnlichen Umständen, wenn keine DNS-Server bekannt sind, aber " +"eine Internetverbindung besteht. Kann in den meisten Fällen deaktiviert " +"werden, wenn die Netzwerkverbindung stabil und zuverlässig ist." #: modules/privoxy/__init__.py:25 msgid "" @@ -6935,26 +6971,30 @@ msgstr "" "a> der zur Feed-Reader-Gruppe gehört, aufgerufen werden." #: modules/rssbridge/__init__.py:28 -#, python-brace-format +#, fuzzy, python-brace-format +#| msgid "" +#| "You can use RSS-Bridge with Tiny Tiny RSS to " +#| "follow various websites. When adding a feed, enable authentication and " +#| "use your {box_name} credentials." msgid "" -"You can use RSS-Bridge with Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" "Sie können RSS-Bridge mit Tiny Tiny RSS " "verwenden, um verschiedenen Websites zu folgen. Aktivieren Sie beim " "Hinzufügen eines Feeds die Authentifizierung und verwenden Sie Ihre " "{box_name}-Anmeldeinformationen." -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "Lesen und Abonnieren von Neuigkeiten-Feeds" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "RSS-Bridge" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "RSS Feed Generator" @@ -8251,6 +8291,11 @@ msgid "" "several short notes called Tiddlers and link them together into a dense " "graph." msgstr "" +"TiddlyWiki ist eine interaktive Anwendung, die vollständig im Webbrowser " +"läuft. Jedes Wiki ist eine in sich geschlossene HTML-Datei, die auf Ihrer " +"{box_name} gespeichert ist. Anstatt lange Wiki-Seiten zu schreiben, regt " +"TiddlyWiki dazu an, mehrere kurze Notizen, so genannte Tiddlers, zu " +"schreiben und sie zu einem kompakten Diagramm zu verknüpfen." #: modules/tiddlywiki/__init__.py:30 msgid "" @@ -8260,6 +8305,12 @@ msgid "" "TiddlyWiki. Encrypting individual tiddlers or password-protecting a wiki " "file is possible from within the application." msgstr "" +"Es ist eine vielseitige Anwendung mit einer Vielzahl von " +"Einsatzmöglichkeiten - nichtlineares Notizbuch, Webseite, persönliche " +"Wissensdatenbank, Aufgaben- und Projektmanagementsystem, persönliches " +"Tagebuch usw. Plugins können die Funktionalität von TiddlyWiki erweitern. " +"Das Verschlüsseln einzelner Tiddler oder das Schützen einer Wiki-Datei mit " +"einem Passwort ist innerhalb der Anwendung möglich." #: modules/tiddlywiki/__init__.py:37 #, python-brace-format @@ -8267,10 +8318,14 @@ msgid "" "TiddlyWiki is downloaded from {box_name} website and not from Debian. Wikis " "need to be upgraded to newer version manually." msgstr "" +"TiddlyWiki wird von der {box_name} Website heruntergeladen und nicht von " +"Debian. Wikis müssen manuell auf eine neuere Version aktualisiert werden." #: modules/tiddlywiki/__init__.py:46 msgid "Create a new wiki or upload your existing wiki file to get started." msgstr "" +"Erstellen Sie ein neues Wiki oder laden Sie Ihre bestehende Wiki-Datei hoch, " +"um zu starten." #: modules/tiddlywiki/__init__.py:64 modules/tiddlywiki/manifest.py:9 msgid "TiddlyWiki" @@ -8282,15 +8337,15 @@ msgstr "" #: modules/tiddlywiki/forms.py:32 msgid "A TiddlyWiki file with .html file extension" -msgstr "" +msgstr "Eine TiddlyWiki-Datei mit der Dateierweiterung .html" #: modules/tiddlywiki/forms.py:35 msgid "TiddlyWiki files must be in HTML format" -msgstr "" +msgstr "TiddlyWiki-Dateien müssen im HTML-Format vorliegen" #: modules/tiddlywiki/forms.py:37 msgid "Upload an existing TiddlyWiki file from this computer." -msgstr "" +msgstr "Laden Sie eine bestehende TiddlyWiki-Datei von diesem Computer hoch." #: modules/tiddlywiki/manifest.py:22 msgid "Journal" @@ -8309,6 +8364,8 @@ msgid "" "Hint: You can download a copy of this wiki from within " "TiddlyWiki before deleting it." msgstr "" +"Hinweis: Sie können eine Kopie dieses Wikis aus TiddlyWiki " +"herunterladen, bevor Sie es löschen." #: modules/tor/__init__.py:33 modules/torproxy/__init__.py:29 msgid "" @@ -8691,6 +8748,8 @@ msgid "" "Automatic software update runs daily by default. For the first time, " "manually run it now." msgstr "" +"Die automatische Software-Aktualisierung wird standardmäßig täglich " +"ausgeführt. Führen Sie es jetzt zum ersten Mal manuell aus." #: modules/upgrades/__init__.py:242 msgid "Could not start distribution update" @@ -9009,8 +9068,6 @@ msgstr "" "ignoriert." #: modules/users/forms.py:252 -#, fuzzy -#| msgid "Delete User" msgid "Delete user" msgstr "Benutzer löschen" @@ -9019,12 +9076,13 @@ msgid "" "Deleting the user account will also remove all the files related to the " "user. Deleting files can be avoided by setting the user account as inactive." msgstr "" +"Beim Löschen des Benutzerkontos werden auch alle mit dem Benutzer " +"verbundenen Dateien gelöscht. Das Löschen von Dateien kann vermieden werden, " +"indem das Benutzerkonto als inaktiv eingestuft wird." #: modules/users/forms.py:305 -#, fuzzy -#| msgid "Failed to add user to group." msgid "Failed to delete user." -msgstr "Hinzufügen eines Benutzers zur Gruppe ist fehlgeschlagen." +msgstr "Benutzer konnte nicht gelöscht werden." #: modules/users/forms.py:320 msgid "Renaming LDAP user failed." @@ -9152,10 +9210,9 @@ msgid "Save Changes" msgstr "Änderungen speichern" #: modules/users/templates/users_update.html:41 -#, fuzzy, python-format -#| msgid "Delete user %(username)s permanently?" +#, python-format msgid "Delete user %(username)s and all the user's files?" -msgstr "Benutzer %(username)s dauerhaft löschen?" +msgstr "Benutzer %(username)s und alle Dateien des Benutzers löschen?" #: modules/users/templates/users_update.html:46 templates/messages.html:11 msgid "Close" @@ -9166,12 +9223,13 @@ msgid "" "Deleting a user account also removes all the files user's home directory. If " "you wish to keep these files, disable the user account instead." msgstr "" +"Beim Löschen eines Benutzerkontos werden auch alle Dateien aus dem Home-" +"Verzeichnis des Benutzers entfernt. Wenn Sie diese Dateien behalten möchten, " +"deaktivieren Sie stattdessen das Benutzerkonto." #: modules/users/templates/users_update.html:59 -#, fuzzy -#| msgid "Delete files" msgid "Delete user and files" -msgstr "Dateien löschen" +msgstr "Benutzer und Dateien löschen" #: modules/users/templates/users_update.html:62 msgid "Cancel" @@ -9192,10 +9250,9 @@ msgid "Edit User" msgstr "Benutzer bearbeiten" #: modules/users/views.py:111 -#, fuzzy, python-format -#| msgid "User %(username)s created." +#, python-format msgid "User %(username)s deleted." -msgstr "Benutzer %(username)s angelegt." +msgstr "Benutzer %(username)s gelöscht." #: modules/users/views.py:130 msgid "Change Password" @@ -9703,7 +9760,7 @@ msgstr "" "Das Benutzerkonto %(username)s wird das Administratorkonto " "für Zoph." -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "Allgemein" @@ -10183,10 +10240,6 @@ msgstr "Gujarati" #~ "Mehr Informationen über das %(box_name)s Projekt finden Sie im %(box_name)s-Wiki." -#, python-format -#~ msgid "Delete %(username)s" -#~ msgstr "%(username)s löschen" - #, python-format #~ msgid "Delete user %(username)s" #~ msgstr "Benutzer %(username)s löschen" diff --git a/plinth/locale/django.pot b/plinth/locale/django.pot index b86f56ced..42918b7b2 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -4772,7 +4772,7 @@ msgid "" msgstr "" #: modules/networks/templates/connection_show.html:316 -#: modules/networks/templates/connections_diagram.html:24 network.py:24 +#: modules/networks/templates/connections_diagram.html:24 network.py:25 msgid "External" msgstr "" @@ -4788,7 +4788,7 @@ msgid "Create Connection" msgstr "" #: modules/networks/templates/connections_delete.html:11 -#: modules/networks/views.py:536 +#: modules/networks/views.py:545 msgid "Delete Connection" msgstr "" @@ -4808,14 +4808,14 @@ msgstr "" #: modules/networks/templates/connections_diagram.html:29 #: modules/networks/templates/connections_diagram.html:59 -#: modules/networks/views.py:101 network.py:27 +#: modules/networks/views.py:101 network.py:28 msgid "Ethernet" msgstr "" #: modules/networks/templates/connections_diagram.html:32 #: modules/networks/templates/connections_diagram.html:62 #: modules/networks/templates/connections_fields_wifi.html:16 -#: modules/networks/views.py:102 network.py:28 +#: modules/networks/views.py:102 network.py:29 msgid "Wi-Fi" msgstr "" @@ -4826,7 +4826,7 @@ msgstr "" msgid "Show connection %(name)s" msgstr "" -#: modules/networks/templates/connections_diagram.html:53 network.py:24 +#: modules/networks/templates/connections_diagram.html:53 network.py:25 msgid "Internal" msgstr "" @@ -4835,7 +4835,7 @@ msgid "Computer" msgstr "" #: modules/networks/templates/connections_edit.html:19 -#: modules/networks/views.py:253 modules/networks/views.py:340 +#: modules/networks/views.py:253 modules/networks/views.py:341 msgid "Edit Connection" msgstr "" @@ -4843,7 +4843,7 @@ msgstr "" msgid "General" msgstr "" -#: modules/networks/templates/connections_fields_pppoe.html:16 network.py:29 +#: modules/networks/templates/connections_fields_pppoe.html:16 network.py:30 msgid "PPPoE" msgstr "" @@ -4853,13 +4853,13 @@ msgstr "" #: modules/networks/templates/connections_list.html:12 #: modules/networks/templates/connections_list.html:14 -#: modules/networks/views.py:389 +#: modules/networks/views.py:395 msgid "Nearby Wi-Fi Networks" msgstr "" #: modules/networks/templates/connections_list.html:17 #: modules/networks/templates/connections_list.html:19 -#: modules/networks/views.py:413 +#: modules/networks/views.py:420 #: modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "" @@ -5033,6 +5033,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" +#: modules/networks/templates/wifi_scan.html:14 +msgid "No Wi-Fi device detected." +msgstr "" + +#: modules/networks/templates/wifi_scan.html:21 +#, python-format +msgid "Device: %(interface_name)s" +msgstr "" + +#: modules/networks/templates/wifi_scan.html:27 +msgid "Last scanned: " +msgstr "" + +#: modules/networks/templates/wifi_scan.html:31 +msgid "never" +msgstr "" + +#: modules/networks/templates/wifi_scan.html:52 +msgid "No Wi-Fi networks found." +msgstr "" + #: modules/networks/views.py:27 msgid "disabled" msgstr "" @@ -5230,51 +5251,51 @@ msgstr "" msgid "This type of connection is not yet understood." msgstr "" -#: modules/networks/views.py:352 +#: modules/networks/views.py:353 #, python-brace-format msgid "Activated connection {name}." msgstr "" -#: modules/networks/views.py:356 +#: modules/networks/views.py:357 msgid "Failed to activate connection: Connection not found." msgstr "" -#: modules/networks/views.py:362 +#: modules/networks/views.py:363 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" -#: modules/networks/views.py:375 +#: modules/networks/views.py:376 #, python-brace-format msgid "Deactivated connection {name}." msgstr "" -#: modules/networks/views.py:379 +#: modules/networks/views.py:380 msgid "Failed to de-activate connection: Connection not found." msgstr "" -#: modules/networks/views.py:431 +#: modules/networks/views.py:438 msgid "Adding New Generic Connection" msgstr "" -#: modules/networks/views.py:449 +#: modules/networks/views.py:456 msgid "Adding New Ethernet Connection" msgstr "" -#: modules/networks/views.py:467 +#: modules/networks/views.py:474 msgid "Adding New PPPoE Connection" msgstr "" -#: modules/networks/views.py:502 +#: modules/networks/views.py:511 msgid "Adding New Wi-Fi Connection" msgstr "" -#: modules/networks/views.py:517 +#: modules/networks/views.py:526 #, python-brace-format msgid "Connection {name} deleted." msgstr "" -#: modules/networks/views.py:521 modules/networks/views.py:531 +#: modules/networks/views.py:530 modules/networks/views.py:540 msgid "Failed to delete connection: Connection not found." msgstr "" @@ -5975,20 +5996,20 @@ msgstr "" #: modules/rssbridge/__init__.py:28 #, python-brace-format msgid "" -"You can use RSS-Bridge with Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -8347,7 +8368,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/el/LC_MESSAGES/django.po b/plinth/locale/el/LC_MESSAGES/django.po index 907bebc97..13c64e042 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2022-09-14 17:20+0000\n" "Last-Translator: ikmaak \n" "Language-Team: Greek Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "Διαβάστε και εγγραφείτε τροφοδοσίες ειδήσεων" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -9950,7 +9976,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "Γενικός" @@ -10480,10 +10506,6 @@ msgstr "Gujarati" #~ "στο %(box_name)s wiki ." -#, python-format -#~ msgid "Delete %(username)s" -#~ msgstr "Διαγραφή %(username)s" - #, python-format #~ msgid "Delete user %(username)s" #~ msgstr "Διαγραφή χρήστη %(username)s" diff --git a/plinth/locale/es/LC_MESSAGES/django.po b/plinth/locale/es/LC_MESSAGES/django.po index 20884b1a1..330aba57f 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2024-11-01 17:00+0000\n" "Last-Translator: gallegonovato \n" "Language-Team: Spanish persona perteneciente a un grupo de lector de feeds." #: modules/rssbridge/__init__.py:28 -#, python-brace-format +#, fuzzy, python-brace-format +#| msgid "" +#| "You can use RSS-Bridge with Tiny Tiny RSS to " +#| "follow various websites. When adding a feed, enable authentication and " +#| "use your {box_name} credentials." msgid "" -"You can use RSS-Bridge with Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" "Puedes usar RSS-Bridge con Tiny Tiny RSS para " "seguir varios sitios web. Habilita la autenticación y usa tus credenciales " "de {box_name} al añadir un feed." -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "Leer y suscribirse a nuevos agregadores" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "RSS-Bridge" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "Generador de feeds RSS" @@ -9661,7 +9691,7 @@ msgid "" msgstr "" "El usuario %(username)s será el administrador de Zoph." -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "Genérica" @@ -10144,10 +10174,6 @@ msgstr "Gujarati" #~ "Para ampliar información sobre el proyecto %(box_name)s, consulte la Wiki de %(box_name)s." -#, python-format -#~ msgid "Delete %(username)s" -#~ msgstr "Eliminar %(username)s" - #, python-format #~ msgid "Delete user %(username)s" #~ msgstr "Eliminar usuaria/o %(username)s" diff --git a/plinth/locale/fa/LC_MESSAGES/django.po b/plinth/locale/fa/LC_MESSAGES/django.po index 49e3a535f..ae12dda32 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2022-09-14 17:19+0000\n" "Last-Translator: ikmaak \n" "Language-Team: Persian Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -9234,7 +9259,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/fake/LC_MESSAGES/django.po b/plinth/locale/fake/LC_MESSAGES/django.po index f0f5f4940..5d82fc1cd 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2016-01-31 22:24+0530\n" "Last-Translator: Sunil Mohan Adapa \n" "Language-Team: Plinth Developers Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 #, fuzzy #| msgid "Bridge" msgid "RSS-Bridge" msgstr "BRIDGE" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -9743,7 +9769,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" @@ -10270,10 +10296,6 @@ msgstr "" #~ "FOR MORE INFORMATION ABOUT THE %(box_name)s PROJECT, SEE THE %(box_name)s WIKI." -#, python-format -#~ msgid "Delete %(username)s" -#~ msgstr "DELETE %(username)s" - #, python-format #~ msgid "Delete user %(username)s" #~ msgstr "DELETE USER %(username)s" diff --git a/plinth/locale/fr/LC_MESSAGES/django.po b/plinth/locale/fr/LC_MESSAGES/django.po index 1b342f1df..592b58735 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2024-11-01 17:00+0000\n" "Last-Translator: Coucouf \n" "Language-Team: French Tiny Tiny RSS to " +#| "follow various websites. When adding a feed, enable authentication and " +#| "use your {box_name} credentials." msgid "" -"You can use RSS-Bridge with Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" "Vous pouvez utiliser RSS-Bridge avec Tiny Tiny RSS pour suivre différents sites internet. Lors de l’ajout d’un fil, activez " "l’authentification et utilisez les identifiants de {box_name}." -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "Lecture et abonnement à des flux d’actualités" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "RSS-Bridge" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "Générateur de fil RSS" @@ -9861,7 +9891,7 @@ msgstr "" "L’utilisateur %(username)s deviendra le compte " "administrateur pour Zoph." -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "Générique" @@ -10350,10 +10380,6 @@ msgstr "Gujarati" #~ "Pour plus d’informations sur le projet %(box_name)s, visitez le Wiki %(box_name)s." -#, python-format -#~ msgid "Delete %(username)s" -#~ msgstr "Supprimer %(username)s" - #, python-format #~ msgid "Delete user %(username)s" #~ msgstr "Supprimer l’utilisateur %(username)s" diff --git a/plinth/locale/gl/LC_MESSAGES/django.po b/plinth/locale/gl/LC_MESSAGES/django.po index 3315239d9..a27bb3c25 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2022-12-30 10:51+0000\n" "Last-Translator: gallegonovato \n" "Language-Team: Galician Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -8402,7 +8423,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/gu/LC_MESSAGES/django.po b/plinth/locale/gu/LC_MESSAGES/django.po index fa98962bd..b53652fbb 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2021-01-18 12:32+0000\n" "Last-Translator: ikmaak \n" "Language-Team: Gujarati Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -8814,7 +8835,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/hi/LC_MESSAGES/django.po b/plinth/locale/hi/LC_MESSAGES/django.po index 7c6b15592..bb544bda1 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2023-10-19 06:30+0000\n" "Last-Translator: Shaik \n" "Language-Team: Hindi Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "समाचार फ़ीड्स पढ़ें और सब्सक्राइब करें" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -9733,7 +9759,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "जेनेरिक" @@ -10242,10 +10268,6 @@ msgstr "" #~ "%(box_name)s के बारे में और सिखने के लिये यह देखिये %(box_name)s Wiki." -#, python-format -#~ msgid "Delete %(username)s" -#~ msgstr "हटाइये %(username)s" - #, python-format #~ msgid "Delete user %(username)s" #~ msgstr "यूसर हटाइये %(username)s" diff --git a/plinth/locale/hu/LC_MESSAGES/django.po b/plinth/locale/hu/LC_MESSAGES/django.po index 9538cf0a8..d604b1d96 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2022-10-24 18:39+0000\n" "Last-Translator: Sunil Mohan Adapa \n" "Language-Team: Hungarian Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "Hírcsatornák olvasása és feliratkozás" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "RSS-Bridge" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "RSS-hírfolyam generátor" @@ -9827,7 +9853,7 @@ msgstr "" "A(z) %(username)s felhasználói fiók lesz a Zoph " "rendszergazdai fiókja." -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "Általános" @@ -10339,10 +10365,6 @@ msgstr "Gudzsaráti" #~ "A %(box_name)s projektről további információkat a %(box_name)s Wiki oldalon találsz." -#, python-format -#~ msgid "Delete %(username)s" -#~ msgstr "%(username)s törlése" - #, python-format #~ msgid "Delete user %(username)s" #~ msgstr "%(username)s felhasználó törlése" diff --git a/plinth/locale/id/LC_MESSAGES/django.po b/plinth/locale/id/LC_MESSAGES/django.po index 57d484d9e..eeba03e62 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2022-09-14 17:19+0000\n" "Last-Translator: ikmaak \n" "Language-Team: Indonesian Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -9133,7 +9156,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/it/LC_MESSAGES/django.po b/plinth/locale/it/LC_MESSAGES/django.po index 2cf5835da..68da23d0d 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2022-09-14 17:19+0000\n" "Last-Translator: ikmaak \n" "Language-Team: Italian Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -9196,7 +9221,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/ja/LC_MESSAGES/django.po b/plinth/locale/ja/LC_MESSAGES/django.po index c96811033..21e53661c 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2023-05-07 23:50+0000\n" "Last-Translator: Nobuhiro Iwamatsu \n" "Language-Team: Japanese Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -8351,7 +8372,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/kn/LC_MESSAGES/django.po b/plinth/locale/kn/LC_MESSAGES/django.po index ab00eef18..e1d1d0f07 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2020-07-16 16:41+0000\n" "Last-Translator: Yogesh \n" "Language-Team: Kannada Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -8351,7 +8372,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/lt/LC_MESSAGES/django.po b/plinth/locale/lt/LC_MESSAGES/django.po index 6f8e58a66..227dde895 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2022-09-14 17:19+0000\n" "Last-Translator: ikmaak \n" "Language-Team: Lithuanian Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -8369,7 +8390,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/lv/LC_MESSAGES/django.po b/plinth/locale/lv/LC_MESSAGES/django.po index 70a6ed935..99db8c29c 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2022-09-14 17:20+0000\n" "Last-Translator: ikmaak \n" "Language-Team: Latvian Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -8368,7 +8389,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/nb/LC_MESSAGES/django.po b/plinth/locale/nb/LC_MESSAGES/django.po index ff6f5a33b..2c4584c28 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2024-10-27 23:30+0000\n" "Last-Translator: Sunil Mohan Adapa \n" "Language-Team: Norwegian Bokmål Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "Les og abonner på nyhetsstrømmer" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 #, fuzzy #| msgid "Bridge" msgid "RSS-Bridge" msgstr "Bro" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -9760,7 +9786,7 @@ msgstr "" "Brukerkontoen %(username)s vil bli administratorkonto for " "Zoph." -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "Generisk" @@ -10266,10 +10292,6 @@ msgstr "Gujarati" #~ "For mer info om %(box_name)s-prosjektet, sjekk %(box_name)s wiki." -#, python-format -#~ msgid "Delete %(username)s" -#~ msgstr "Slett %(username)s" - #, python-format #~ msgid "Delete user %(username)s" #~ msgstr "Slett bruker %(username)s" diff --git a/plinth/locale/nl/LC_MESSAGES/django.po b/plinth/locale/nl/LC_MESSAGES/django.po index 8562e2848..f2e1bf94e 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2024-09-21 01:05+0000\n" "Last-Translator: ikmaak \n" "Language-Team: Dutch elke gebruiker die tot de feed-reader groep behoort." #: modules/rssbridge/__init__.py:28 -#, python-brace-format +#, fuzzy, python-brace-format +#| msgid "" +#| "You can use RSS-Bridge with Tiny Tiny RSS to " +#| "follow various websites. When adding a feed, enable authentication and " +#| "use your {box_name} credentials." msgid "" -"You can use RSS-Bridge with Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" "RSS-Bridge wordt met Tiny Tiny RSS gebruikt om " "verschillende websites te volgen. Schakel bij het toevoegen van een feed " "authenticatie in en gebruik de {box_name}-inloggegevens." -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "Lezen en abonneren op nieuwsfeeds" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "RSS-Bridge" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "RSS Feed Generator" @@ -9663,7 +9693,7 @@ msgstr "" "Gebruikersaccount %(username)s wordt het beheerdersaccount " "voor Zoph." -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "Generiek" @@ -10147,10 +10177,6 @@ msgstr "Gujarati" #~ "Voor meer informatie over het %(box_name)s project, zie de %(box_name)s Wiki." -#, python-format -#~ msgid "Delete %(username)s" -#~ msgstr "Verwijder %(username)s" - #, python-format #~ msgid "Delete user %(username)s" #~ msgstr "Verwijder gebruiker %(username)s" diff --git a/plinth/locale/pl/LC_MESSAGES/django.po b/plinth/locale/pl/LC_MESSAGES/django.po index 2e77fba31..8494d35e2 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2024-07-13 12:09+0000\n" "Last-Translator: Monika \n" "Language-Team: Polish Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -9121,7 +9144,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/pt/LC_MESSAGES/django.po b/plinth/locale/pt/LC_MESSAGES/django.po index a6739bd25..8c53b70d2 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2023-05-22 15:50+0000\n" "Last-Translator: Frederico Gomes \n" "Language-Team: Portuguese Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -8886,7 +8909,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/ru/LC_MESSAGES/django.po b/plinth/locale/ru/LC_MESSAGES/django.po index 28698f64b..8ce19be55 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2024-05-26 04:09+0000\n" "Last-Translator: gfbdrgng \n" "Language-Team: Russian Tiny Tiny RSS to " +#| "follow various websites. When adding a feed, enable authentication and " +#| "use your {box_name} credentials." msgid "" -"You can use RSS-Bridge with Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" "Вы можете использовать RSS-мостик с Tiny Tiny RSS, чтобы следить за различными сайтами. При добавлении ленты включите " "аутентификацию и используйте свои учетные данные {box_name}." -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "Чтение и подписка на ленты новостей" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "RSS-мост" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "Генератор RSS-каналов" @@ -9735,7 +9765,7 @@ msgstr "" "Учетная запись пользователя %(username)s станет учетной " "записью администратора для Zoph." -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "Универсальный" @@ -10222,10 +10252,6 @@ msgstr "Гуджарати" #~ "Дополнительную информацию о проекте %(box_name)s можно найти на %(box_name)s Wiki." -#, python-format -#~ msgid "Delete %(username)s" -#~ msgstr "Удаление %(username)s" - #, python-format #~ msgid "Delete user %(username)s" #~ msgstr "Удалить пользователя %(username)s" diff --git a/plinth/locale/si/LC_MESSAGES/django.po b/plinth/locale/si/LC_MESSAGES/django.po index 13dd70339..2dc5c69ee 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2021-04-27 13:32+0000\n" "Last-Translator: HelaBasa \n" "Language-Team: Sinhala Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -8349,7 +8370,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/sl/LC_MESSAGES/django.po b/plinth/locale/sl/LC_MESSAGES/django.po index 94328dae6..c3071015c 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2022-09-14 17:19+0000\n" "Last-Translator: ikmaak \n" "Language-Team: Slovenian Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -8767,7 +8790,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/sq/LC_MESSAGES/django.po b/plinth/locale/sq/LC_MESSAGES/django.po index dbe846e8d..10c638de6 100644 --- a/plinth/locale/sq/LC_MESSAGES/django.po +++ b/plinth/locale/sq/LC_MESSAGES/django.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-04 20:11-0500\n" -"PO-Revision-Date: 2024-10-23 05:15+0000\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" +"PO-Revision-Date: 2024-11-06 05:06+0000\n" "Last-Translator: Besnik Bleta \n" "Language-Team: Albanian \n" @@ -17,7 +17,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n != 1;\n" -"X-Generator: Weblate 5.8.2-dev\n" +"X-Generator: Weblate 5.8.2\n" #: config.py:103 #, python-brace-format @@ -325,6 +325,10 @@ msgid "" "file previously downloaded from the result of a successful backup on a " "{box_name}. It must have a .tar.gz extension." msgstr "" +"Përzgjidhni kartelën kopjeruajtje për t’u ngarkuar nga kompjuteri vendor. " +"Kjo duhet të jetë një kartelë e shkarkuar më herët nga përfundimi i një " +"kojeruajtjeje të suksesshme te një {box_name}. Duhet të ketë zgjatimin .tar." +"gz." #: modules/backups/forms.py:152 msgid "Repository path format incorrect." @@ -2975,10 +2979,8 @@ msgstr "" "emër_pakete” në një terminal (duke përdorur Cockpit, ose SSH)." #: modules/help/templates/help_about.html:85 -#, fuzzy -#| msgid "Learn more" msgid "Learn" -msgstr "Mësoni më tepër" +msgstr "Mësoni" #: modules/help/templates/help_about.html:88 msgid "Homepage" @@ -2990,17 +2992,15 @@ msgstr "Dhuroni" #: modules/help/templates/help_about.html:107 msgid "Join project" -msgstr "" +msgstr "Merrni pjesë te projekti" #: modules/help/templates/help_about.html:111 msgid "Translate" -msgstr "" +msgstr "Përktheni" #: modules/help/templates/help_about.html:117 -#, fuzzy -#| msgid "Get Support" msgid "Support" -msgstr "Merrni Asistencë" +msgstr "Asistencë" #: modules/help/templates/help_about.html:121 msgid "Forum" @@ -4612,7 +4612,7 @@ msgstr "Mumla" #: modules/mumble/manifest.py:67 msgid "Group conference" -msgstr "" +msgstr "Konferencë grupi" #: modules/mumble/manifest.py:67 modules/radicale/manifest.py:91 #: modules/shadowsocks/forms.py:24 @@ -4758,7 +4758,7 @@ msgstr "Shërbime" #: modules/names/templates/names.html:56 msgid "Resolver Status" -msgstr "" +msgstr "Gjendje Zgjidhësi" #: modules/names/templates/names.html:66 msgid "Global" @@ -5461,7 +5461,7 @@ msgstr "" "përdorur vetëm së brendshmi, do të jenë të papërdorshme." #: modules/networks/templates/connection_show.html:316 -#: modules/networks/templates/connections_diagram.html:24 network.py:24 +#: modules/networks/templates/connections_diagram.html:24 network.py:25 msgid "External" msgstr "Së jashtmi" @@ -5479,7 +5479,7 @@ msgid "Create Connection" msgstr "Krijoni Lidhje" #: modules/networks/templates/connections_delete.html:11 -#: modules/networks/views.py:536 +#: modules/networks/views.py:545 msgid "Delete Connection" msgstr "Fshije Lidhjen" @@ -5499,14 +5499,14 @@ msgstr "Hapësirë" #: modules/networks/templates/connections_diagram.html:29 #: modules/networks/templates/connections_diagram.html:59 -#: modules/networks/views.py:101 network.py:27 +#: modules/networks/views.py:101 network.py:28 msgid "Ethernet" msgstr "Ethernet" #: modules/networks/templates/connections_diagram.html:32 #: modules/networks/templates/connections_diagram.html:62 #: modules/networks/templates/connections_fields_wifi.html:16 -#: modules/networks/views.py:102 network.py:28 +#: modules/networks/views.py:102 network.py:29 msgid "Wi-Fi" msgstr "Wi-Fi" @@ -5517,7 +5517,7 @@ msgstr "Wi-Fi" msgid "Show connection %(name)s" msgstr "Shfaq lidhjen %(name)s" -#: modules/networks/templates/connections_diagram.html:53 network.py:24 +#: modules/networks/templates/connections_diagram.html:53 network.py:25 msgid "Internal" msgstr "E brendshme" @@ -5526,7 +5526,7 @@ msgid "Computer" msgstr "Kompjuter" #: modules/networks/templates/connections_edit.html:19 -#: modules/networks/views.py:253 modules/networks/views.py:340 +#: modules/networks/views.py:253 modules/networks/views.py:341 msgid "Edit Connection" msgstr "Përpunoni Lidhje" @@ -5534,7 +5534,7 @@ msgstr "Përpunoni Lidhje" msgid "General" msgstr "Të përgjithshme" -#: modules/networks/templates/connections_fields_pppoe.html:16 network.py:29 +#: modules/networks/templates/connections_fields_pppoe.html:16 network.py:30 msgid "PPPoE" msgstr "PPPoE" @@ -5544,13 +5544,13 @@ msgstr "Lidhje" #: modules/networks/templates/connections_list.html:12 #: modules/networks/templates/connections_list.html:14 -#: modules/networks/views.py:389 +#: modules/networks/views.py:395 msgid "Nearby Wi-Fi Networks" msgstr "Rrjete Wi-Fi Atypari" #: modules/networks/templates/connections_list.html:17 #: modules/networks/templates/connections_list.html:19 -#: modules/networks/views.py:413 +#: modules/networks/views.py:420 #: modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "Shtoni Lidhje" @@ -5765,6 +5765,32 @@ 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ë." +#: modules/networks/templates/wifi_scan.html:14 +msgid "No Wi-Fi device detected." +msgstr "" + +#: modules/networks/templates/wifi_scan.html:21 +#, fuzzy, python-format +#| msgid "Delete %(username)s" +msgid "Device: %(interface_name)s" +msgstr "Fshije %(username)s" + +#: modules/networks/templates/wifi_scan.html:27 +#, fuzzy +#| msgid "Last Connected Time" +msgid "Last scanned: " +msgstr "Kohë e Lidhjes së Fundit" + +#: modules/networks/templates/wifi_scan.html:31 +msgid "never" +msgstr "" + +#: modules/networks/templates/wifi_scan.html:52 +#, fuzzy +#| msgid "Wi-Fi network not found" +msgid "No Wi-Fi networks found." +msgstr "S’u gjet rrjet Wi-Fi" + #: modules/networks/views.py:27 msgid "disabled" msgstr "i çaktivizuar" @@ -5962,52 +5988,52 @@ msgstr "S’përpunohet dot lidhje: S’u gjet lidhje." msgid "This type of connection is not yet understood." msgstr "Ky lloj lidhjesh nuk kuptohet ende." -#: modules/networks/views.py:352 +#: modules/networks/views.py:353 #, python-brace-format msgid "Activated connection {name}." msgstr "U aktivizua lidhja {name}." -#: modules/networks/views.py:356 +#: modules/networks/views.py:357 msgid "Failed to activate connection: Connection not found." msgstr "S’u arrit të aktivizohet lidhje: S’u gjet lidhje." -#: modules/networks/views.py:362 +#: modules/networks/views.py:363 #, 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." -#: modules/networks/views.py:375 +#: modules/networks/views.py:376 #, python-brace-format msgid "Deactivated connection {name}." msgstr "U çaktivizua lidhja {name}." -#: modules/networks/views.py:379 +#: modules/networks/views.py:380 msgid "Failed to de-activate connection: Connection not found." msgstr "Dështoi çaktivizimi i lidhjes: S’u gjet lidhje." -#: modules/networks/views.py:431 +#: modules/networks/views.py:438 msgid "Adding New Generic Connection" msgstr "Po Shtohet Lidhje e Re Elementare" -#: modules/networks/views.py:449 +#: modules/networks/views.py:456 msgid "Adding New Ethernet Connection" msgstr "Po Shtohet Lidhje e Re Ethernet" -#: modules/networks/views.py:467 +#: modules/networks/views.py:474 msgid "Adding New PPPoE Connection" msgstr "Po Shtohet Lidhje e Re PPPoE" -#: modules/networks/views.py:502 +#: modules/networks/views.py:511 msgid "Adding New Wi-Fi Connection" msgstr "Po Shtohet Lidhje e Re Wi-Fi" -#: modules/networks/views.py:517 +#: modules/networks/views.py:526 #, python-brace-format msgid "Connection {name} deleted." msgstr "Lidhja {name} u fshi." -#: modules/networks/views.py:521 modules/networks/views.py:531 +#: modules/networks/views.py:530 modules/networks/views.py:540 msgid "Failed to delete connection: Connection not found." msgstr "S’u arrit të fshihet lidhje: S’u gjet lidhje." @@ -6872,25 +6898,29 @@ msgstr "" "prurjeve." #: modules/rssbridge/__init__.py:28 -#, python-brace-format +#, fuzzy, python-brace-format +#| msgid "" +#| "You can use RSS-Bridge with Tiny Tiny RSS to " +#| "follow various websites. When adding a feed, enable authentication and " +#| "use your {box_name} credentials." msgid "" -"You can use RSS-Bridge with Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" "RSS-Bridge-in mund ta përdorni me Tiny Tiny RSS " "për të ndjekur sajte të ndryshëm. Kur shtohet një prurje, aktivizoni " "mirëfilltësimin dhe përdorni kredencialet tuaj për {box_name}." -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "Lexoni dhe pajtohuni te prurje lajmesh" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "RSS-Bridge" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "Prodhues Prurjesh RSS" @@ -8943,22 +8973,21 @@ msgstr "" "shpërfillen." #: modules/users/forms.py:252 -#, fuzzy -#| msgid "Delete User" msgid "Delete user" -msgstr "Fshi Përdorues" +msgstr "Fshi përdorues" #: modules/users/forms.py:254 msgid "" "Deleting the user account will also remove all the files related to the " "user. Deleting files can be avoided by setting the user account as inactive." msgstr "" +"Fshirja e llogarisë do të heqë gjithashtu krejt kartelat e lidhura me " +"përdoruesin. Fshirja e kartelave mund të shmanget duke e vënë llogarinë e " +"përdoruesit si joaktive." #: modules/users/forms.py:305 -#, fuzzy -#| msgid "Failed to add user to group." msgid "Failed to delete user." -msgstr "S’u arrit të shtohej përdorues te grup." +msgstr "S’u arrit të fshihej përdorues." #: modules/users/forms.py:320 msgid "Renaming LDAP user failed." @@ -9086,10 +9115,9 @@ msgid "Save Changes" msgstr "Ruaji Ndryshimet" #: modules/users/templates/users_update.html:41 -#, fuzzy, python-format -#| msgid "Delete user %(username)s permanently?" +#, python-format msgid "Delete user %(username)s and all the user's files?" -msgstr "Të fshihet përgjithnjë përdoruesi %(username)s?" +msgstr "Të fshihet përdoruesi %(username)s dhe krejt kartelat e përdoruesit?" #: modules/users/templates/users_update.html:46 templates/messages.html:11 msgid "Close" @@ -9100,12 +9128,13 @@ msgid "" "Deleting a user account also removes all the files user's home directory. If " "you wish to keep these files, disable the user account instead." msgstr "" +"Fshirja e llogarisë do të heqë gjithashtu krejt kartelat drejtorisë shtëpi " +"të përdoruesit. Nëse dëshironi t’i mbani këto kartela, më mirë çaktivizoni " +"llogarinë e përdoruesit." #: modules/users/templates/users_update.html:59 -#, fuzzy -#| msgid "Delete files" msgid "Delete user and files" -msgstr "Fshini kartela" +msgstr "Fshini përdorues dhe kartela" #: modules/users/templates/users_update.html:62 msgid "Cancel" @@ -9126,10 +9155,9 @@ msgid "Edit User" msgstr "Përpunoni Përdorues" #: modules/users/views.py:111 -#, fuzzy, python-format -#| msgid "User %(username)s created." +#, python-format msgid "User %(username)s deleted." -msgstr "Përdoruesi %(username)s u krijua." +msgstr "Përdoruesi %(username)s u fshi." #: modules/users/views.py:130 msgid "Change Password" @@ -9624,7 +9652,7 @@ msgstr "" "Llogaria e përdoruesit %(username)s do të bëhet llogaria e " "përgjegjësit për Zoph." -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "Elementar" @@ -10102,10 +10130,6 @@ msgstr "Gujaratase" #~ "Për më tepër hollësi mbi projektin %(box_name)s, shihni %(box_name)s Wiki." -#, python-format -#~ msgid "Delete %(username)s" -#~ msgstr "Fshije %(username)s" - #, python-format #~ msgid "Delete user %(username)s" #~ msgstr "Fshije përdoruesin %(username)s" diff --git a/plinth/locale/sr/LC_MESSAGES/django.po b/plinth/locale/sr/LC_MESSAGES/django.po index 73b9fabc5..0eb996e06 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2022-09-14 17:20+0000\n" "Last-Translator: ikmaak \n" "Language-Team: Serbian Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -8586,7 +8609,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/sv/LC_MESSAGES/django.po b/plinth/locale/sv/LC_MESSAGES/django.po index 66763cb1c..366d8bcfe 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2024-07-30 01:31+0000\n" "Last-Translator: bittin1ddc447d824349b2 \n" "Language-Team: Swedish som tillhör feed-reader-gruppen." #: modules/rssbridge/__init__.py:28 -#, python-brace-format +#, fuzzy, python-brace-format +#| msgid "" +#| "You can use RSS-Bridge with Tiny Tiny RSS to " +#| "follow various websites. When adding a feed, enable authentication and " +#| "use your {box_name} credentials." msgid "" -"You can use RSS-Bridge with Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" "Du kan använda RSS-Bridge med Tiny Tiny RSS för " "att följa olika webbplatser. När du lägger till ett feed aktiverar du " "autentisering och använder dina {box_name}-autentiseringsuppgifter." -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "Läsa och prenumerera på nyhetsflöden" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "RSS-Bridge" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "RSS Feed Generator" @@ -9678,7 +9708,7 @@ msgstr "" "Användarkonto %(username)s kommer att bli " "administratörskonto för Zoph." -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "Generiska" @@ -10163,10 +10193,6 @@ msgstr "Gujarati" #~ "Mer information om %(box_name)s -projektet finns på %(box_name)s wiki." -#, python-format -#~ msgid "Delete %(username)s" -#~ msgstr "Ta bort %(username)s" - #, python-format #~ msgid "Delete user %(username)s" #~ msgstr "Ta bort användare %(username)s" diff --git a/plinth/locale/ta/LC_MESSAGES/django.po b/plinth/locale/ta/LC_MESSAGES/django.po index 45abcef2a..f997a8b89 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -4773,7 +4773,7 @@ msgid "" msgstr "" #: modules/networks/templates/connection_show.html:316 -#: modules/networks/templates/connections_diagram.html:24 network.py:24 +#: modules/networks/templates/connections_diagram.html:24 network.py:25 msgid "External" msgstr "" @@ -4789,7 +4789,7 @@ msgid "Create Connection" msgstr "" #: modules/networks/templates/connections_delete.html:11 -#: modules/networks/views.py:536 +#: modules/networks/views.py:545 msgid "Delete Connection" msgstr "" @@ -4809,14 +4809,14 @@ msgstr "" #: modules/networks/templates/connections_diagram.html:29 #: modules/networks/templates/connections_diagram.html:59 -#: modules/networks/views.py:101 network.py:27 +#: modules/networks/views.py:101 network.py:28 msgid "Ethernet" msgstr "" #: modules/networks/templates/connections_diagram.html:32 #: modules/networks/templates/connections_diagram.html:62 #: modules/networks/templates/connections_fields_wifi.html:16 -#: modules/networks/views.py:102 network.py:28 +#: modules/networks/views.py:102 network.py:29 msgid "Wi-Fi" msgstr "" @@ -4827,7 +4827,7 @@ msgstr "" msgid "Show connection %(name)s" msgstr "" -#: modules/networks/templates/connections_diagram.html:53 network.py:24 +#: modules/networks/templates/connections_diagram.html:53 network.py:25 msgid "Internal" msgstr "" @@ -4836,7 +4836,7 @@ msgid "Computer" msgstr "" #: modules/networks/templates/connections_edit.html:19 -#: modules/networks/views.py:253 modules/networks/views.py:340 +#: modules/networks/views.py:253 modules/networks/views.py:341 msgid "Edit Connection" msgstr "" @@ -4844,7 +4844,7 @@ msgstr "" msgid "General" msgstr "" -#: modules/networks/templates/connections_fields_pppoe.html:16 network.py:29 +#: modules/networks/templates/connections_fields_pppoe.html:16 network.py:30 msgid "PPPoE" msgstr "" @@ -4854,13 +4854,13 @@ msgstr "" #: modules/networks/templates/connections_list.html:12 #: modules/networks/templates/connections_list.html:14 -#: modules/networks/views.py:389 +#: modules/networks/views.py:395 msgid "Nearby Wi-Fi Networks" msgstr "" #: modules/networks/templates/connections_list.html:17 #: modules/networks/templates/connections_list.html:19 -#: modules/networks/views.py:413 +#: modules/networks/views.py:420 #: modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "" @@ -5034,6 +5034,27 @@ msgid "" "full instructions on how to perform this task." msgstr "" +#: modules/networks/templates/wifi_scan.html:14 +msgid "No Wi-Fi device detected." +msgstr "" + +#: modules/networks/templates/wifi_scan.html:21 +#, python-format +msgid "Device: %(interface_name)s" +msgstr "" + +#: modules/networks/templates/wifi_scan.html:27 +msgid "Last scanned: " +msgstr "" + +#: modules/networks/templates/wifi_scan.html:31 +msgid "never" +msgstr "" + +#: modules/networks/templates/wifi_scan.html:52 +msgid "No Wi-Fi networks found." +msgstr "" + #: modules/networks/views.py:27 msgid "disabled" msgstr "" @@ -5231,51 +5252,51 @@ msgstr "" msgid "This type of connection is not yet understood." msgstr "" -#: modules/networks/views.py:352 +#: modules/networks/views.py:353 #, python-brace-format msgid "Activated connection {name}." msgstr "" -#: modules/networks/views.py:356 +#: modules/networks/views.py:357 msgid "Failed to activate connection: Connection not found." msgstr "" -#: modules/networks/views.py:362 +#: modules/networks/views.py:363 #, python-brace-format msgid "Failed to activate connection {name}: No suitable device is available." msgstr "" -#: modules/networks/views.py:375 +#: modules/networks/views.py:376 #, python-brace-format msgid "Deactivated connection {name}." msgstr "" -#: modules/networks/views.py:379 +#: modules/networks/views.py:380 msgid "Failed to de-activate connection: Connection not found." msgstr "" -#: modules/networks/views.py:431 +#: modules/networks/views.py:438 msgid "Adding New Generic Connection" msgstr "" -#: modules/networks/views.py:449 +#: modules/networks/views.py:456 msgid "Adding New Ethernet Connection" msgstr "" -#: modules/networks/views.py:467 +#: modules/networks/views.py:474 msgid "Adding New PPPoE Connection" msgstr "" -#: modules/networks/views.py:502 +#: modules/networks/views.py:511 msgid "Adding New Wi-Fi Connection" msgstr "" -#: modules/networks/views.py:517 +#: modules/networks/views.py:526 #, python-brace-format msgid "Connection {name} deleted." msgstr "" -#: modules/networks/views.py:521 modules/networks/views.py:531 +#: modules/networks/views.py:530 modules/networks/views.py:540 msgid "Failed to delete connection: Connection not found." msgstr "" @@ -5976,20 +5997,20 @@ msgstr "" #: modules/rssbridge/__init__.py:28 #, python-brace-format msgid "" -"You can use RSS-Bridge with Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -8348,7 +8369,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/te/LC_MESSAGES/django.po b/plinth/locale/te/LC_MESSAGES/django.po index 2cd043ce0..230cb8332 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2024-09-03 14:09+0000\n" "Last-Translator: Hemanth Kumar Veeranki \n" "Language-Team: Telugu ఏ వినియోగదారు అయినా సాంగత్యం చేయవచ్చు." #: modules/rssbridge/__init__.py:28 -#, python-brace-format +#, fuzzy, python-brace-format +#| msgid "" +#| "You can use RSS-Bridge with Tiny Tiny RSS to " +#| "follow various websites. When adding a feed, enable authentication and " +#| "use your {box_name} credentials." msgid "" -"You can use RSS-Bridge with Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" "మీరు వివిధ వెబ్‌సైట్‌లను అనుసరించడానికి ఆర్ఎస్ఎస్- వంతెనను టైని టైని " "ఆర్ఎస్‍ఎస్తొ వాడవచ్చు. ఫీడ్‍ను జోడించేటప్పుడు ప్రామాణీకరణ కోసం {box_name} ఆధారాలను ఇవ్వండి." -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "న్యూస్ ఫీడ్‌లను చదవడం మరియు చందాదారునిగా చేరు" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 #, fuzzy msgid "RSS-Bridge" msgstr "ఆర్ ఎస్ ఎస్- వంతెన" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "ఆర్ఎస్ఎస్ ఫీడ్ జనరేటర్" @@ -9443,7 +9473,7 @@ msgid "" "account for Zoph." msgstr "వినియోగదారు ఖాతా %(username)s జోఫ్ కోసం నిర్వాహక ఖాతా అవుతుంది." -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "సాధారణమైన" @@ -9947,10 +9977,6 @@ msgstr "గుజరాతీ" #~ "%(box_name)s ప్రాజెక్ట్ కి సంబందించిన మరింత సమాచారం కోసం %(box_name)s వికీ ను దర్శించండి." -#, python-format -#~ msgid "Delete %(username)s" -#~ msgstr "%(username)s తొలగించు" - #, python-format #~ msgid "Delete user %(username)s" #~ msgstr "వినియోగదారి %(username)s ను తొలగించు" diff --git a/plinth/locale/tr/LC_MESSAGES/django.po b/plinth/locale/tr/LC_MESSAGES/django.po index 1313a8501..9958e910e 100644 --- a/plinth/locale/tr/LC_MESSAGES/django.po +++ b/plinth/locale/tr/LC_MESSAGES/django.po @@ -6,8 +6,8 @@ msgid "" msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-04 20:11-0500\n" -"PO-Revision-Date: 2024-10-23 05:15+0000\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" +"PO-Revision-Date: 2024-11-06 05:06+0000\n" "Last-Translator: Burak Yavuz \n" "Language-Team: Turkish \n" @@ -16,7 +16,7 @@ msgstr "" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=n > 1;\n" -"X-Generator: Weblate 5.8.2-dev\n" +"X-Generator: Weblate 5.8.2\n" #: config.py:103 #, python-brace-format @@ -321,6 +321,9 @@ msgid "" "file previously downloaded from the result of a successful backup on a " "{box_name}. It must have a .tar.gz extension." msgstr "" +"Yerel bilgisayardan yüklenecek yedekleme dosyasını seçin. Bu, daha önce " +"{box_name} üzerinde başarılı bir yedekleme sonucunda indirilen bir dosya " +"olmak zorundadır. .tar.gz uzantısına sahip olmak zorundadır." #: modules/backups/forms.py:152 msgid "Repository path format incorrect." @@ -2959,10 +2962,8 @@ msgstr "" "edilebilir." #: modules/help/templates/help_about.html:85 -#, fuzzy -#| msgid "Learn more" msgid "Learn" -msgstr "Daha fazla bilgi edinin" +msgstr "Bilgi edinin" #: modules/help/templates/help_about.html:88 msgid "Homepage" @@ -2974,17 +2975,15 @@ msgstr "Bağış" #: modules/help/templates/help_about.html:107 msgid "Join project" -msgstr "" +msgstr "Projeye katıl" #: modules/help/templates/help_about.html:111 msgid "Translate" -msgstr "" +msgstr "Çevir" #: modules/help/templates/help_about.html:117 -#, fuzzy -#| msgid "Get Support" msgid "Support" -msgstr "Destek Al" +msgstr "Destek" #: modules/help/templates/help_about.html:121 msgid "Forum" @@ -5428,7 +5427,7 @@ msgstr "" "kullanılamayacaktır." #: modules/networks/templates/connection_show.html:316 -#: modules/networks/templates/connections_diagram.html:24 network.py:24 +#: modules/networks/templates/connections_diagram.html:24 network.py:25 msgid "External" msgstr "Harici" @@ -5446,7 +5445,7 @@ msgid "Create Connection" msgstr "Bağlantı Oluştur" #: modules/networks/templates/connections_delete.html:11 -#: modules/networks/views.py:536 +#: modules/networks/views.py:545 msgid "Delete Connection" msgstr "Bağlantıyı Sil" @@ -5466,14 +5465,14 @@ msgstr "Aralık" #: modules/networks/templates/connections_diagram.html:29 #: modules/networks/templates/connections_diagram.html:59 -#: modules/networks/views.py:101 network.py:27 +#: modules/networks/views.py:101 network.py:28 msgid "Ethernet" msgstr "Ethernet" #: modules/networks/templates/connections_diagram.html:32 #: modules/networks/templates/connections_diagram.html:62 #: modules/networks/templates/connections_fields_wifi.html:16 -#: modules/networks/views.py:102 network.py:28 +#: modules/networks/views.py:102 network.py:29 msgid "Wi-Fi" msgstr "Kablosuz (Wi-Fi)" @@ -5484,7 +5483,7 @@ msgstr "Kablosuz (Wi-Fi)" msgid "Show connection %(name)s" msgstr "%(name)s bağlantısını göster" -#: modules/networks/templates/connections_diagram.html:53 network.py:24 +#: modules/networks/templates/connections_diagram.html:53 network.py:25 msgid "Internal" msgstr "Dahili" @@ -5493,7 +5492,7 @@ msgid "Computer" msgstr "Bilgisayar" #: modules/networks/templates/connections_edit.html:19 -#: modules/networks/views.py:253 modules/networks/views.py:340 +#: modules/networks/views.py:253 modules/networks/views.py:341 msgid "Edit Connection" msgstr "Bağlantıyı Düzenle" @@ -5501,7 +5500,7 @@ msgstr "Bağlantıyı Düzenle" msgid "General" msgstr "Genel" -#: modules/networks/templates/connections_fields_pppoe.html:16 network.py:29 +#: modules/networks/templates/connections_fields_pppoe.html:16 network.py:30 msgid "PPPoE" msgstr "PPPoE" @@ -5511,13 +5510,13 @@ msgstr "Bağlantılar" #: modules/networks/templates/connections_list.html:12 #: modules/networks/templates/connections_list.html:14 -#: modules/networks/views.py:389 +#: modules/networks/views.py:395 msgid "Nearby Wi-Fi Networks" msgstr "Yakındaki Kablosuz (Wi-Fi) Ağları" #: modules/networks/templates/connections_list.html:17 #: modules/networks/templates/connections_list.html:19 -#: modules/networks/views.py:413 +#: modules/networks/views.py:420 #: modules/wireguard/templates/wireguard_add_server.html:19 msgid "Add Connection" msgstr "Bağlantı Ekle" @@ -5729,6 +5728,32 @@ msgstr "" "kılavuzunu çevrimiçi olarak arayın. Bu, bu görevin nasıl " "gerçekleştirileceğine dair tam talimatlar sağlayacak." +#: modules/networks/templates/wifi_scan.html:14 +msgid "No Wi-Fi device detected." +msgstr "" + +#: modules/networks/templates/wifi_scan.html:21 +#, fuzzy, python-format +#| msgid "Delete %(username)s" +msgid "Device: %(interface_name)s" +msgstr "%(username)s Kullanıcısını Sil" + +#: modules/networks/templates/wifi_scan.html:27 +#, fuzzy +#| msgid "Last Connected Time" +msgid "Last scanned: " +msgstr "Son Bağlanma Zamanı" + +#: modules/networks/templates/wifi_scan.html:31 +msgid "never" +msgstr "" + +#: modules/networks/templates/wifi_scan.html:52 +#, fuzzy +#| msgid "Wi-Fi network not found" +msgid "No Wi-Fi networks found." +msgstr "Kablosuz (Wi-Fi) ağı bulunamadı" + #: modules/networks/views.py:27 msgid "disabled" msgstr "etkisizleştirildi" @@ -5926,52 +5951,52 @@ msgstr "Bağlantı düzenlenemiyor: Bağlantı bulunamadı." msgid "This type of connection is not yet understood." msgstr "Bu tür bir bağlantı henüz anlaşılmamaktadır." -#: modules/networks/views.py:352 +#: modules/networks/views.py:353 #, python-brace-format msgid "Activated connection {name}." msgstr "{name} bağlantısı etkinleştirildi." -#: modules/networks/views.py:356 +#: modules/networks/views.py:357 msgid "Failed to activate connection: Connection not found." msgstr "Bağlantıyı etkinleştirme başarısız oldu: Bağlantı bulunamadı." -#: modules/networks/views.py:362 +#: modules/networks/views.py:363 #, 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." -#: modules/networks/views.py:375 +#: modules/networks/views.py:376 #, python-brace-format msgid "Deactivated connection {name}." msgstr "{name} bağlantısı devre dışı bırakıldı." -#: modules/networks/views.py:379 +#: modules/networks/views.py:380 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ı." -#: modules/networks/views.py:431 +#: modules/networks/views.py:438 msgid "Adding New Generic Connection" msgstr "Yeni Genel Bağlantı Ekleme" -#: modules/networks/views.py:449 +#: modules/networks/views.py:456 msgid "Adding New Ethernet Connection" msgstr "Yeni Ethernet Bağlantısı Ekleme" -#: modules/networks/views.py:467 +#: modules/networks/views.py:474 msgid "Adding New PPPoE Connection" msgstr "Yeni PPPoE Bağlantısı Ekleme" -#: modules/networks/views.py:502 +#: modules/networks/views.py:511 msgid "Adding New Wi-Fi Connection" msgstr "Yeni Kablosuz (Wi-Fi) Bağlantısı Ekleme" -#: modules/networks/views.py:517 +#: modules/networks/views.py:526 #, python-brace-format msgid "Connection {name} deleted." msgstr "{name} bağlantısı silindi." -#: modules/networks/views.py:521 modules/networks/views.py:531 +#: modules/networks/views.py:530 modules/networks/views.py:540 msgid "Failed to delete connection: Connection not found." msgstr "Bağlantının silinmesi başarısız oldu: Bağlantı bulunamadı." @@ -6827,25 +6852,29 @@ msgstr "" "href=\"{users_url}\">herhangi bir kullanıcı tarafından erişilebilir." #: modules/rssbridge/__init__.py:28 -#, python-brace-format +#, fuzzy, python-brace-format +#| msgid "" +#| "You can use RSS-Bridge with Tiny Tiny RSS to " +#| "follow various websites. When adding a feed, enable authentication and " +#| "use your {box_name} credentials." msgid "" -"You can use RSS-Bridge with Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" "Çeşitli web sitelerini takip etmek için Tiny Tiny " "RSS ile RSS-Bridge'i kullanabilirsiniz. Bir bildirim eklerken, kimlik " "doğrulamayı etkinleştirin ve {box_name} kimlik bilgilerinizi kullanın." -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "Haber bildirimlerini oku ve abone ol" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "RSS-Bridge" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "RSS Bildirim Oluşturucu" @@ -8889,22 +8918,21 @@ msgstr "" "başlayan satırlar yoksayılacaktır." #: modules/users/forms.py:252 -#, fuzzy -#| msgid "Delete User" msgid "Delete user" -msgstr "Kullanıcıyı Sil" +msgstr "Kullanıcıyı sil" #: modules/users/forms.py:254 msgid "" "Deleting the user account will also remove all the files related to the " "user. Deleting files can be avoided by setting the user account as inactive." msgstr "" +"Kullanıcı hesabının silinmesi, kullanıcıyla ilgili tüm dosyaları da " +"kaldıracaktır. Kullanıcı hesabının etkin değil olarak ayarlanmasıyla " +"dosyaların silinmesi önlenebilir." #: modules/users/forms.py:305 -#, fuzzy -#| msgid "Failed to add user to group." msgid "Failed to delete user." -msgstr "Kullanıcıyı gruba ekleme başarısız oldu." +msgstr "Kullanıcıyı silme başarısız oldu." #: modules/users/forms.py:320 msgid "Renaming LDAP user failed." @@ -9029,10 +9057,10 @@ msgid "Save Changes" msgstr "Değişiklikleri Kaydet" #: modules/users/templates/users_update.html:41 -#, fuzzy, python-format -#| msgid "Delete user %(username)s permanently?" +#, python-format msgid "Delete user %(username)s and all the user's files?" -msgstr "%(username)s kullanıcısı kalıcı olarak silinsin mi?" +msgstr "" +"%(username)s kullanıcısı ve kullanıcının tüm dosyaları silinsin mi?" #: modules/users/templates/users_update.html:46 templates/messages.html:11 msgid "Close" @@ -9043,12 +9071,13 @@ msgid "" "Deleting a user account also removes all the files user's home directory. If " "you wish to keep these files, disable the user account instead." msgstr "" +"Bir kullanıcı hesabının silinmesi aynı zamanda kullanıcının ana dizinindeki " +"tüm dosyaları da kaldırır. Eğer bu dosyaları saklamak istiyorsanız, bunun " +"yerine kullanıcı hesabını etkisizleştirin." #: modules/users/templates/users_update.html:59 -#, fuzzy -#| msgid "Delete files" msgid "Delete user and files" -msgstr "Dosyaları sil" +msgstr "Kullanıcı ve dosyaları sil" #: modules/users/templates/users_update.html:62 msgid "Cancel" @@ -9069,10 +9098,9 @@ msgid "Edit User" msgstr "Kullanıcıyı Düzenle" #: modules/users/views.py:111 -#, fuzzy, python-format -#| msgid "User %(username)s created." +#, python-format msgid "User %(username)s deleted." -msgstr "%(username)s kullanıcısı oluşturuldu." +msgstr "%(username)s kullanıcısı silindi." #: modules/users/views.py:130 msgid "Change Password" @@ -9563,7 +9591,7 @@ msgstr "" "Kullanıcı hesabı %(username)s, Zoph için yönetici hesabı " "olacaktır." -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "Genel" @@ -10040,10 +10068,6 @@ msgstr "Gujarati" #~ "%(box_name)s projesi hakkında daha fazla bilgi için %(box_name)s Viki'ye bakın." -#, python-format -#~ msgid "Delete %(username)s" -#~ msgstr "%(username)s Kullanıcısını Sil" - #, python-format #~ msgid "Delete user %(username)s" #~ msgstr "%(username)s kullanıcısını sil" diff --git a/plinth/locale/uk/LC_MESSAGES/django.po b/plinth/locale/uk/LC_MESSAGES/django.po index 07239a6b2..614aeacac 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2024-10-21 23:16+0000\n" "Last-Translator: Ihor Hordiichuk \n" "Language-Team: Ukrainian Tiny Tiny RSS to " +#| "follow various websites. When adding a feed, enable authentication and " +#| "use your {box_name} credentials." msgid "" -"You can use RSS-Bridge with Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" "RSS-Bridge можна використовувати разом із Tiny Tiny " "RSS для відстеження різних вебсайтів. Під час додавання стрічки " "дозвольте автентифікацію і використовуйте свої облікові дані {box_name}." -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "Читати і підписатися на стрічки новин" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "RSS-міст" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "Ґенератор стрічок RSS" @@ -9656,7 +9686,7 @@ msgstr "" "Обліковий запис користувача %(username)s стане обліковим " "записом адміністратора Zoph." -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "Загальний" @@ -10139,10 +10169,6 @@ msgstr "Gujarati" #~ "Докладніше про проєкт %(box_name)s дивіться %(box_name)s Вікі." -#, python-format -#~ msgid "Delete %(username)s" -#~ msgstr "Видалити %(username)s" - #, python-format #~ msgid "Delete user %(username)s" #~ msgstr "Видалити користувача %(username)s" diff --git a/plinth/locale/vi/LC_MESSAGES/django.po b/plinth/locale/vi/LC_MESSAGES/django.po index 495e9e3a3..2b4495ee0 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2021-07-28 08:34+0000\n" "Last-Translator: bruh \n" "Language-Team: Vietnamese Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -8744,7 +8765,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/locale/zh_Hans/LC_MESSAGES/django.po b/plinth/locale/zh_Hans/LC_MESSAGES/django.po index 50db30470..732044139 100644 --- a/plinth/locale/zh_Hans/LC_MESSAGES/django.po +++ b/plinth/locale/zh_Hans/LC_MESSAGES/django.po @@ -7,8 +7,8 @@ msgid "" msgstr "" "Project-Id-Version: Plinth\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-11-04 20:11-0500\n" -"PO-Revision-Date: 2024-10-23 05:15+0000\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" +"PO-Revision-Date: 2024-11-06 05:06+0000\n" "Last-Translator: 大王叫我来巡山 \n" "Language-Team: Chinese (Simplified Han script) Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "RSS-Bridge" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -8017,8 +8039,6 @@ msgstr "" "一个。将忽略空行和以 # 开头的行。" #: modules/users/forms.py:252 -#, fuzzy -#| msgid "Delete User" msgid "Delete user" msgstr "删除用户" @@ -8029,10 +8049,8 @@ msgid "" msgstr "" #: modules/users/forms.py:305 -#, fuzzy -#| msgid "Failed to add user to group." msgid "Failed to delete user." -msgstr "无法将用户添加到组。" +msgstr "删除用户失败。" #: modules/users/forms.py:320 msgid "Renaming LDAP user failed." @@ -8149,10 +8167,9 @@ msgid "Save Changes" msgstr "保存更改" #: modules/users/templates/users_update.html:41 -#, fuzzy, python-format -#| msgid "Delete user %(username)s permanently?" +#, python-format msgid "Delete user %(username)s and all the user's files?" -msgstr "永久删除用户 %(username)s?" +msgstr "删除用户 %(username)s 及该用户所有文件?" #: modules/users/templates/users_update.html:46 templates/messages.html:11 msgid "Close" @@ -8165,10 +8182,8 @@ msgid "" msgstr "" #: modules/users/templates/users_update.html:59 -#, fuzzy -#| msgid "Delete files" msgid "Delete user and files" -msgstr "删除文件" +msgstr "删除用户和文件" #: modules/users/templates/users_update.html:62 msgid "Cancel" @@ -8189,10 +8204,9 @@ msgid "Edit User" msgstr "编辑用户" #: modules/users/views.py:111 -#, fuzzy, python-format -#| msgid "User %(username)s created." +#, python-format msgid "User %(username)s deleted." -msgstr "用户 %(username)s 已创建。" +msgstr "用户 %(username)s 已被删除。" #: modules/users/views.py:130 msgid "Change Password" @@ -8622,7 +8636,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "通用" @@ -9078,10 +9092,6 @@ msgstr "古吉拉特语" #~ "有关 %(box_name)s 项目的详细信息,请参阅 %(box_name)s Wiki。" -#, python-format -#~ msgid "Delete %(username)s" -#~ msgstr "删除 %(username)s" - #, python-format #~ msgid "Delete user %(username)s" #~ msgstr "删除用户 %(username)s" diff --git a/plinth/locale/zh_Hant/LC_MESSAGES/django.po b/plinth/locale/zh_Hant/LC_MESSAGES/django.po index 8816c8758..cb3a4b3fa 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: 2024-11-04 20:11-0500\n" +"POT-Creation-Date: 2024-11-18 20:13-0500\n" "PO-Revision-Date: 2024-07-26 08:09+0000\n" "Last-Translator: Ricky From Hong Kong \n" "Language-Team: Chinese (Traditional) Tiny Tiny RSS to " -"follow various websites. When adding a feed, enable authentication and use " -"your {box_name} credentials." +"You can use RSS-Bridge with Miniflux or Tiny Tiny RSS to follow various websites. When " +"adding a feed, enable authentication and use your {box_name} credentials." msgstr "" -#: modules/rssbridge/__init__.py:46 modules/ttrss/__init__.py:47 +#: modules/rssbridge/__init__.py:48 modules/ttrss/__init__.py:47 msgid "Read and subscribe to news feeds" msgstr "" -#: modules/rssbridge/__init__.py:49 modules/rssbridge/manifest.py:7 +#: modules/rssbridge/__init__.py:51 modules/rssbridge/manifest.py:7 msgid "RSS-Bridge" msgstr "" -#: modules/rssbridge/__init__.py:50 +#: modules/rssbridge/__init__.py:52 msgid "RSS Feed Generator" msgstr "" @@ -8619,7 +8640,7 @@ msgid "" "account for Zoph." msgstr "" -#: network.py:30 +#: network.py:31 msgid "Generic" msgstr "" diff --git a/plinth/modules/backups/repository.py b/plinth/modules/backups/repository.py index 9ec67c134..614486316 100644 --- a/plinth/modules/backups/repository.py +++ b/plinth/modules/backups/repository.py @@ -334,7 +334,7 @@ class RootBorgRepository(BaseBorgRepository): PATH = '/var/lib/freedombox/borgbackup' storage_type = 'root' - name = format_lazy(_('{box_name} storage'), box_name=cfg.box_name) + name = format_lazy(_('{box_name} storage'), box_name=_(cfg.box_name)) borg_path = PATH sort_order = 10 is_mounted = True diff --git a/plinth/modules/firewall/__init__.py b/plinth/modules/firewall/__init__.py index 1b559fbca..fa00acb64 100644 --- a/plinth/modules/firewall/__init__.py +++ b/plinth/modules/firewall/__init__.py @@ -25,7 +25,7 @@ _description = [ _('Firewall is a security system that controls the incoming and ' 'outgoing network traffic on your {box_name}. Keeping a ' 'firewall enabled and properly configured reduces risk of ' - 'security threat from the Internet.'), box_name=cfg.box_name) + 'security threat from the Internet.'), box_name=_(cfg.box_name)) ] _port_details: dict[str, list[str]] = {} diff --git a/plinth/modules/mediawiki/tests/test_functional.py b/plinth/modules/mediawiki/tests/test_functional.py index 149c90ce9..a744f0b14 100644 --- a/plinth/modules/mediawiki/tests/test_functional.py +++ b/plinth/modules/mediawiki/tests/test_functional.py @@ -77,8 +77,8 @@ class TestMediawikiApp(functional.BaseAppTests): def test_upload_svg_image(self, session_browser, login): """Test uploading an SVG image.""" _upload_image(session_browser, 'admin', 'whatever123', - 'apps-background.svg') - assert _image_exists(session_browser, 'Apps-background.svg') + 'freedombox-logo-standard.svg') + assert _image_exists(session_browser, 'Freedombox-logo-standard.svg') def test_backup_restore(self, session_browser, login): """Test backup and restore of pages and images.""" diff --git a/plinth/modules/networks/forms.py b/plinth/modules/networks/forms.py index 0067dc023..b2dc3f37f 100644 --- a/plinth/modules/networks/forms.py +++ b/plinth/modules/networks/forms.py @@ -364,7 +364,7 @@ class NetworkTopologyForm(forms.Form): network_topology = forms.ChoiceField( label=format_lazy( _('Specify how your {box_name} is connected to your network'), - box_name=cfg.box_name), + box_name=_(cfg.box_name)), required=True, widget=forms.RadioSelect, choices=[ @@ -373,8 +373,8 @@ class NetworkTopologyForm(forms.Form): _('Connected to a router ' '

Your {box_name} gets its Internet ' 'connection from your router via Wi-Fi or Ethernet cable. ' - 'This is a typical home setup.

'), box_name=cfg.box_name, - allow_markup=True)), + 'This is a typical home setup.

'), + box_name=_(cfg.box_name), allow_markup=True)), ('as_router', format_lazy( _('{box_name} is your router ' @@ -383,14 +383,14 @@ class NetworkTopologyForm(forms.Form): 'a Wi-Fi adapter. {box_name} is directly connected to the ' 'Internet and all your devices connect to {box_name} ' 'for their Internet connectivity.

'), - box_name=cfg.box_name, allow_markup=True)), + box_name=_(cfg.box_name), allow_markup=True)), ('direct', format_lazy( _('Directly connected to the Internet ' '

Your Internet connection is ' 'directly attached to your {box_name} and there are no ' 'other devices on the network. This can happen on ' - 'community or cloud setups.

'), box_name=cfg.box_name, + 'community or cloud setups.

'), box_name=_(cfg.box_name), allow_markup=True)), ], ) @@ -430,8 +430,8 @@ class InternetConnectionTypeForm(forms.Form): 'same IP address. This is the most trouble-free setup for ' 'many {box_name} services but very few ISPs offer this. ' 'You may be able to get this service from your ISP by ' - 'making an additional payment.

'), box_name=cfg.box_name, - allow_markup=True)), + 'making an additional payment.

'), + box_name=_(cfg.box_name), allow_markup=True)), ('private_ip', format_lazy( _('I dont have a public IP address' @@ -444,7 +444,7 @@ class InternetConnectionTypeForm(forms.Form): 'most troublesome situation for hosting services at home. ' '{box_name} provides many workaround solutions but each ' 'solution has some limitations.

'), - box_name=cfg.box_name, allow_markup=True)), + box_name=_(cfg.box_name), allow_markup=True)), ('unknown', format_lazy( _('I do not know the type of connection my ISP provides ' @@ -476,8 +476,8 @@ class RouterConfigurationForm(forms.Form): 'Internet to a single IP address such as the ' '{box_name}\'s IP address. First remember to configure ' 'a static local IP address for your {box_name} in your ' - 'router\'s configuration.

'), box_name=cfg.box_name, - allow_markup=True), + 'router\'s configuration.

'), + box_name=_(cfg.box_name), allow_markup=True), ), ('port_forwarding', format_lazy( @@ -491,8 +491,8 @@ class RouterConfigurationForm(forms.Form): 'web interface need you to forward traffic from ports ' '80 and 443 to work. Each of the other applications ' 'will suggest which port(s) need to be forwarded ' - 'for that application to work.

'), box_name=cfg.box_name, - allow_markup=True)), + 'for that application to work.

'), + box_name=_(cfg.box_name), allow_markup=True)), ('not_configured', format_lazy( _('Router is currently unconfigured ' diff --git a/plinth/modules/networks/templates/connection_show.html b/plinth/modules/networks/templates/connection_show.html index 28538e5f4..9360ddbc1 100644 --- a/plinth/modules/networks/templates/connection_show.html +++ b/plinth/modules/networks/templates/connection_show.html @@ -152,7 +152,7 @@ {% if access_point.channel %}
{% trans "Signal strength" %} - + {{ access_point.strength }}%
diff --git a/plinth/modules/networks/templates/wifi_scan.html b/plinth/modules/networks/templates/wifi_scan.html index c7011e363..4fd667f2d 100644 --- a/plinth/modules/networks/templates/wifi_scan.html +++ b/plinth/modules/networks/templates/wifi_scan.html @@ -10,28 +10,52 @@

{{ title }}

-
-
-
- {% for access_point in access_points %} -
- - {% if access_point.ssid %} - - {{ access_point.ssid }} - - {% else %} - -- - {% endif %} - + {% if not device_access_points %} +

{% trans "No Wi-Fi device detected." %}

+ {% else %} +
+
+ {% for device in device_access_points %} + {% if device_access_points|length > 1 %} +

+ {% blocktrans trimmed with interface_name=device.interface_name %} + Device: {{ interface_name }} + {% endblocktrans %} +

+ {% endif %} +

+ {% trans "Last scanned: " %} + {% if device.last_scan_time %} + {{ device.last_scan_time|timesince }} + {% else %} + {% trans "never" %} + {% endif %} + {% if device.scan_requested %} + + {% endif %} +

+
+ {% for access_point in device.access_points %} +
+ + + {{ access_point.ssid_string }} + + - - {{ access_point.strength }}% - + + {{ access_point.strength }}% + +
+ {% empty %} +

+ {% trans "No Wi-Fi networks found." %} +

+ {% endfor %}
{% endfor %}
-
+ {% endif %} {% endblock %} diff --git a/plinth/modules/networks/views.py b/plinth/modules/networks/views.py index 5074b796f..ba327fd42 100644 --- a/plinth/modules/networks/views.py +++ b/plinth/modules/networks/views.py @@ -307,7 +307,8 @@ def edit(request, uuid): form = GenericForm(form_data) elif settings_connection.get_connection_type() == '802-11-wireless': settings_wireless = connection.get_setting_wireless() - form_data['ssid'] = settings_wireless.get_ssid().get_data() + form_data['ssid'] = settings_wireless.get_ssid().get_data().decode( + ) form_data['mode'] = settings_wireless.get_mode() form_data['band'] = settings_wireless.get_band() or 'auto' form_data['channel'] = settings_wireless.get_channel() @@ -384,11 +385,17 @@ def deactivate(request, uuid): def scan(request): """Show a list of nearby visible Wi-Fi access points.""" - access_points = network.wifi_scan() - return TemplateResponse(request, 'wifi_scan.html', { - 'title': _('Nearby Wi-Fi Networks'), - 'access_points': access_points - }) + device_access_points = network.wifi_scan() + scanning = any( + (device['scan_requested'] for device in device_access_points)) + # Refresh page in 10s if scanning, 60s otherwise + refresh_page_sec = 10 if scanning else 60 + return TemplateResponse( + request, 'wifi_scan.html', { + 'title': _('Nearby Wi-Fi Networks'), + 'device_access_points': device_access_points, + 'refresh_page_sec': refresh_page_sec + }) def add(request): @@ -484,7 +491,9 @@ def add_wifi(request, ssid=None, interface_name=None): 'mode': 'infrastructure', 'band': 'auto', 'auth_mode': 'wpa', - 'ipv4_method': 'auto' + 'ipv4_method': 'auto', + 'ipv6_method': 'auto', + 'dns_over_tls': 'default', } if request.method == 'POST': diff --git a/plinth/modules/nextcloud/__init__.py b/plinth/modules/nextcloud/__init__.py index cb2812790..140219626 100644 --- a/plinth/modules/nextcloud/__init__.py +++ b/plinth/modules/nextcloud/__init__.py @@ -189,8 +189,6 @@ class NextcloudApp(app_module.App): diagnose_url(url.format(domain=address), kind=kind, **kwargs)) - results.append(diagnose_url('docker.com')) - return results diff --git a/plinth/modules/nextcloud/privileged.py b/plinth/modules/nextcloud/privileged.py index 04c378521..f7da36d57 100644 --- a/plinth/modules/nextcloud/privileged.py +++ b/plinth/modules/nextcloud/privileged.py @@ -18,7 +18,7 @@ from plinth.actions import privileged, secret_str CONTAINER_NAME = 'nextcloud-freedombox' SERVICE_NAME = 'nextcloud-freedombox' VOLUME_NAME = 'nextcloud-freedombox' -IMAGE_NAME = 'docker.io/library/nextcloud:stable-fpm' +IMAGE_NAME = 'registry.freedombox.org/library/nextcloud:stable-fpm' WWW_DATA_UID = '33' DB_HOST = 'localhost' diff --git a/plinth/modules/rssbridge/__init__.py b/plinth/modules/rssbridge/__init__.py index 13bf1cca7..69886794e 100644 --- a/plinth/modules/rssbridge/__init__.py +++ b/plinth/modules/rssbridge/__init__.py @@ -25,10 +25,12 @@ _description = [ 'any user belonging to the feed-reader group.'), users_url=reverse_lazy('users:index')), format_lazy( - _('You can use RSS-Bridge with Tiny Tiny ' - 'RSS to follow various websites. When adding a feed, enable ' - 'authentication and use your {box_name} credentials.'), - ttrss_url=reverse_lazy('ttrss:index'), box_name=cfg.box_name), + _('You can use RSS-Bridge with Miniflux ' + 'or Tiny Tiny RSS to follow various ' + 'websites. When adding a feed, enable authentication and use your ' + '{box_name} credentials.'), + miniflux_url=reverse_lazy('miniflux:index'), + ttrss_url=reverse_lazy('ttrss:index'), box_name=_(cfg.box_name)), ] diff --git a/plinth/modules/tiddlywiki/__init__.py b/plinth/modules/tiddlywiki/__init__.py index 012064beb..5a30ebc6b 100644 --- a/plinth/modules/tiddlywiki/__init__.py +++ b/plinth/modules/tiddlywiki/__init__.py @@ -26,7 +26,7 @@ _description = [ 'web browser. Each wiki is a self-contained HTML file stored on your' ' {box_name}. Instead of writing long wiki pages, TiddlyWiki ' 'encourages you to write several short notes called Tiddlers and ' - 'link them together into a dense graph.'), box_name=cfg.box_name), + 'link them together into a dense graph.'), box_name=_(cfg.box_name)), _('It is a versatile application with a wide variety of use cases - ' 'non-linear notebook, website, personal knowledge base, task and project' ' management system, personal diary etc. Plugins can extend the ' @@ -41,7 +41,7 @@ _description = [ _('Wikis are not public by default, but they can be downloaded for ' 'sharing or publishing. They can be edited by ' 'any user on {box_name} belonging to the wiki group. ' - 'Simultaneous editing is not supported.'), box_name=cfg.box_name, + 'Simultaneous editing is not supported.'), box_name=_(cfg.box_name), users_url=reverse_lazy('users:index')), _('Create a new wiki or upload your existing wiki file to get started.') ] @@ -66,8 +66,7 @@ class TiddlyWikiApp(app_module.App): short_description=_('Non-linear Notebooks'), description=_description, manual_page='TiddlyWiki', - clients=manifest.clients, - tags=manifest.tags) + clients=manifest.clients, tags=manifest.tags) self.add(info) menu_item = menu.Menu('menu-tiddlywiki', info.name, diff --git a/plinth/network.py b/plinth/network.py index 43dcb0399..dfe99e466 100644 --- a/plinth/network.py +++ b/plinth/network.py @@ -4,6 +4,7 @@ Helper functions for working with network manager. """ import collections +import datetime import logging import socket import struct @@ -183,7 +184,7 @@ def get_status_from_wifi_access_point(device, ssid): for access_point in device.get_access_points(): if access_point and access_point.get_ssid() and \ - access_point.get_ssid().get_data() == ssid: + access_point.get_ssid().get_data().decode() == ssid: status['strength'] = access_point.get_strength() frequency = access_point.get_frequency() status['channel'] = _get_wifi_channel_from_frequency(frequency) @@ -613,27 +614,79 @@ def delete_connection(connection_uuid): return name +def _get_access_point_as_dict(access_point, active_ap_path): + """Return Wi-Fi access point information as a dictionary.""" + ssid = access_point.get_ssid() + if not ssid: # Hidden network + return None + + try: + ssid_string = ssid.get_data().decode(encoding='utf-8') + except UnicodeError: + # XXX: Can't deal with binary SSIDs. Don't show SSIDs that are + # binary only. + return None + + is_active = (active_ap_path == access_point.get_path()) + return { + 'ssid': ssid, + 'ssid_string': ssid_string, + 'strength': access_point.get_strength(), + 'is_active': is_active + } + + def wifi_scan(): """Scan for available access points across all Wi-Fi devices.""" - access_points = [] + device_access_points = [] for device in get_nm_client().get_devices(): if device.get_device_type() != nm.DeviceType.WIFI: continue - for access_point in device.get_access_points(): - # Retrieve the bytes in SSID. Don't convert to utf-8 or - # escape it in any way as it may contain null bytes. When - # this is used in the URL it will be escaped properly and - # unescaped when taken as view function's argument. - ssid = access_point.get_ssid() - ssid_string = ssid.get_data() if ssid else '' - access_points.append({ - 'interface_name': device.get_iface(), - 'ssid': ssid_string, - 'strength': access_point.get_strength() - }) + if device.get_client() is None: + # The device got deleted (see NM:show-wifi-networks.py) + return False - return access_points + # Active access point + active_ap_path = device.get_active_access_point() + + # Last scan time + last_scan = device.get_last_scan() + last_scan_time = None + scan_requested = False + if last_scan == -1: + last_scan = None + else: + boot_time = time.clock_gettime(time.CLOCK_BOOTTIME) + last_scan = boot_time - (last_scan / 1000) + last_scan_time = datetime.datetime.now() - datetime.timedelta( + seconds=last_scan) + + # Request a scan if the last scan was more than 20 seconds ago + if (not last_scan) or last_scan > 20: + device.request_scan() + scan_requested = True + + # Access points + access_points = [] + for access_point in device.get_access_points(): + ap_dict = _get_access_point_as_dict(access_point, active_ap_path) + if ap_dict: + access_points.append(ap_dict) + + access_points = sorted(access_points, + key=lambda point: -point['strength']) + + device_access_points.append({ + 'interface_name': device.get_iface(), + 'access_points': access_points, + 'last_scan': last_scan, + 'last_scan_time': last_scan_time, + 'scan_requested': scan_requested + }) + + return sorted(device_access_points, + key=lambda device: device['interface_name']) def refeed_dns(): diff --git a/plinth/tests/functional/__init__.py b/plinth/tests/functional/__init__.py index b1060575f..7b109b9d8 100644 --- a/plinth/tests/functional/__init__.py +++ b/plinth/tests/functional/__init__.py @@ -10,6 +10,7 @@ import pathlib import subprocess import tempfile import time +import urllib.parse import warnings from contextlib import contextmanager @@ -67,7 +68,8 @@ _sys_modules = [ ###################### def visit(browser, path): """Visit a path assuming the base URL as configured.""" - browser.visit(config['DEFAULT']['url'] + path) + with wait_for_page_update(browser): + browser.visit(config['DEFAULT']['url'] + path) def eventually(function, args=[], timeout=30): @@ -88,7 +90,7 @@ def eventually(function, args=[], timeout=30): return False -class _PageLoaded(): +class _PageLoaded: """ Wait until a page (re)loaded. @@ -103,9 +105,9 @@ class _PageLoaded(): self.loaded_new_page = False def __call__(self, driver): - is_stale = False + """Return if expected page has fully loaded.""" try: - self.element.has_class('whatever_class') + self.element.has_class('x-non-existing-class') # XXX: There is still another unhandled case where the webserver # restarts after submission of a form and the browser does not switch # to error page. It continues to wait for a response from the server @@ -143,17 +145,35 @@ class _PageLoaded(): return False + # If page has not loaded fully yet, wait until it does. is_fully_loaded = driver.execute_script( 'return document.readyState;') == 'complete' if not is_fully_loaded: - is_stale = False - elif self.expected_url is None: - is_stale = True - else: - if driver.url.endswith(self.expected_url): - is_stale = True + return False - return is_stale + # If a page has fully loaded check if it is the expected URL. + return self.has_expected_url_reached(driver) + + # Should never reach here. + return False + + def has_expected_url_reached(self, driver): + """Return if the current browser URL is the expected URL.""" + if not self.expected_url: + return True # We are not expecting a specific URL, always any URL + + browser_url = urllib.parse.urlparse(driver.url) + expected_url = urllib.parse.urlparse(self.expected_url) + + if expected_url.scheme and browser_url.scheme != expected_url.scheme: + return False + + if expected_url.netloc and browser_url.netloc != expected_url.netloc: + return False + + browser_path = browser_url.path.rstrip('/') + expected_path = expected_url.path.rstrip('/') + return browser_path == expected_path @contextmanager @@ -424,7 +444,10 @@ def uninstall(browser, app_name): if not uninstall_item: pytest.skip('App cannot be uninstalled') - uninstall_item[0].click() + uninstall_page_url = uninstall_item[0]['href'] + with wait_for_page_update(browser, expected_url=uninstall_page_url): + uninstall_item[0].click() + submit(browser, form_class='form-uninstall') while True: @@ -736,16 +759,21 @@ class BaseAppTests: """Install the app and set it up if needed.""" install(session_browser, self.app_name) + @pytest.fixture(autouse=True, scope='class', name='disable_after_tests') + def fixture_disable_after_tests(self, session_browser): + """Disable the app after running tests.""" + yield + if self.disable_after_tests: + app_disable(session_browser, self.app_name) + @pytest.fixture(autouse=True, name='background') - def fixture_background(self, session_browser): + def fixture_background(self, session_browser, disable_after_tests): """Login, install, and enable the app.""" login(session_browser) self.install_and_setup(session_browser) app_enable(session_browser, self.app_name) yield login(session_browser) - if self.disable_after_tests: - app_disable(session_browser, self.app_name) def test_enable_disable(self, session_browser): """Test enabling and disabling the app.""" diff --git a/plinth/tests/test_network.py b/plinth/tests/test_network.py index 1c6742a6d..7ec388bee 100644 --- a/plinth/tests/test_network.py +++ b/plinth/tests/test_network.py @@ -239,6 +239,8 @@ def test_edit_wifi_connection(network, wifi_uuid): settings_wireless = connection.get_setting_wireless() assert settings_wireless.get_ssid().get_data() == b'plinthtestwifi2' + assert settings_wireless.get_ssid().get_data().decode( + ) == 'plinthtestwifi2' assert settings_wireless.get_mode() == 'infrastructure' wifi_sec = connection.get_setting_wireless_security() diff --git a/static/themes/default/css/main.css b/static/themes/default/css/main.css index c64e29717..2d0825116 100644 --- a/static/themes/default/css/main.css +++ b/static/themes/default/css/main.css @@ -361,6 +361,11 @@ footer { margin-right: 0.25rem; } +.list-group-two-column .list-group-item > .badge.secondary { + font-size: 1rem; + font-weight: normal; +} + .list-group-two-column .list-group-item > .secondary { margin-left: auto; margin-top: -0.25rem; @@ -510,14 +515,10 @@ footer { display: flex; font-weight: 800; font-size: 1.25rem; - margin-bottom: 1.25rem; + margin: 1.25rem 0; border-bottom: var(--neutral-dark-color) solid 2px; } -.card-section-title { - margin-top: 1.25rem; -} - a.menu_link { text-decoration: none; } @@ -534,17 +535,15 @@ a.menu_link_active { display: block; line-height: 1.42857143; text-align: center; - box-shadow: 0 0.1875rem 0.3125rem 0 rgba(0,0,0,0.2); width: 10rem; - padding: 0.5rem 0.25rem; - margin: 0 0.625rem 1.25rem; + padding: 1rem; border: none; border-radius: 0.5rem; transition: border .2s ease-in-out; } .card:hover { - box-shadow: 0 0.3125rem 0.9375rem 0.125rem rgba(0, 0, 0, 0.2); + background: #eee; } .card .nav-link { @@ -555,7 +554,6 @@ a.menu_link_active { .card-title { font-size: 1.25rem; - padding: 0.25rem 0; margin-bottom: 0; } @@ -576,7 +574,7 @@ a.menu_link_active { /* System page - special card styling */ .system-page .card { text-align: left; - width: 19.375rem; + width: 20.625rem; padding: 0; } @@ -595,7 +593,7 @@ a.menu_link_active { text-overflow: ellipsis; grid-row: 1; grid-column: 2; - padding: 0; + padding: 0.375rem 0 0; } .system-page .card-icon { @@ -632,18 +630,6 @@ a.menu_link_active { z-index: -1; } -.index-page .card-list:before { - background-image: url('../img/freedombox-logo-background.svg'); -} - -.apps-page .card-list-primary:before { - background-image: url('../img/apps-background.svg'); -} - -.system-page .system-section-title:first-child:before { - background-image: url('../img/system-background.svg'); -} - .names-table { table-layout: fixed; overflow-wrap: break-word; diff --git a/static/themes/default/img/apps-background.svg b/static/themes/default/img/apps-background.svg deleted file mode 100644 index 609b2e612..000000000 --- a/static/themes/default/img/apps-background.svg +++ /dev/null @@ -1,160 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/static/themes/default/img/freedombox-logo-background.svg b/static/themes/default/img/freedombox-logo-background.svg deleted file mode 100644 index afbe934d5..000000000 --- a/static/themes/default/img/freedombox-logo-background.svg +++ /dev/null @@ -1,72 +0,0 @@ - - - - - - - - - - image/svg+xml - - - - - - - - - diff --git a/static/themes/default/img/system-background.svg b/static/themes/default/img/system-background.svg deleted file mode 100644 index b7bacb738..000000000 --- a/static/themes/default/img/system-background.svg +++ /dev/null @@ -1,62 +0,0 @@ - - - - - - image/svg+xml - - - - - - - - - - -