diff --git a/actions/upgrades b/actions/upgrades index 9b5720c37..5f117aa9e 100755 --- a/actions/upgrades +++ b/actions/upgrades @@ -43,50 +43,12 @@ Pin-Priority: 500 # upgrades app. This ensures that setup is run again and the new contents are # overwritten on the old file. APT_PREFERENCES_APPS = '''Explanation: This file is managed by FreedomBox, do not edit. -Explanation: matrix-synapse 0.99.5 introduces room version 4. Older version -Explanation: 0.99.2 in buster won't be able join newly created rooms. -Package: matrix-synapse -Pin: release a=buster-backports -Pin-Priority: 500 - -Explanation: matrix-synapse >= 1.2 requires python3-service-identity >= 18.1 -Package: python3-service-identity -Pin: release a=buster-backports -Pin-Priority: 500 - -Explanation: matrix-synapse >= 1.5 requires python3-typing-extensions >= 3.7.4 -Package: python3-typing-extensions -Pin: release a=buster-backports -Pin-Priority: 500 - -Explanation: matrix-synapse >= 1.11 requires python3-signedjson >= 1.1.0 -Package: python3-signedjson -Pin: release a=buster-backports -Pin-Priority: 500 - -Explanation: matrix-synapse >= 1.12 requires python3-twisted >= 18.9.0-8~ -Package: python3-twisted -Pin: release a=buster-backports -Pin-Priority: 500 - -Explanation: python3-twisted requires matching version of python3-twisted-bin -Package: python3-twisted-bin -Pin: release a=buster-backports -Pin-Priority: 500 - -Explanation: matrix-synapse >= 1.16 requires python3-attr >= 19.1.0~ -Package: python3-attr -Pin: release a=buster-backports -Pin-Priority: 500 - -Explanation: matrix-synapse >= 1.19 requires python3-canonicaljson >= 1.2.0 -Package: python3-canonicaljson -Pin: release a=buster-backports -Pin-Priority: 500 - -Explanation: matrix-synapse >= 1.26 recommends python3-psycopg2 >= 2.8 -Package: python3-psycopg2 -Pin: release a=buster-backports +Explanation: matrix-synapse shall not be available in Debian stable but +Explanation: only in backports. Upgrade priority of packages that have needed +Explanation: versions only in backports. +Explanation: matrix-synapse >= 1.47.0-2 requires python3-frozendict >= 1.2-3 +Package: python3-frozendict +Pin: release a=bullseye-backports Pin-Priority: 500 ''' diff --git a/container b/container index 48194ac26..95ede7667 100755 --- a/container +++ b/container @@ -551,7 +551,12 @@ def _resize_disk_image(image_file, new_size): def _get_nspawn_command(image_file): """Return the base nspwan command.""" - pipe_argument = ['--pipe'] if systemd_version > 241 else [] + pipe_argument = [] + if systemd_version >= 247: + pipe_argument = ['--console=autopipe'] + elif systemd_version > 241: + pipe_argument = ['--console=pipe'] + return [ 'sudo', 'systemd-nspawn', diff --git a/debian/changelog b/debian/changelog index 8dabf1dfd..81281526b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,37 @@ +freedombox (22.3) unstable; urgency=medium + + [ nautilusx ] + * Translated using Weblate (German) + + [ ikmaak ] + * Translated using Weblate (Dutch) + + [ Burak Yavuz ] + * Translated using Weblate (Turkish) + + [ Eric ] + * Translated using Weblate (Chinese (Simplified)) + + [ Benedek Nagy ] + * tt-rss: Allow published articles to be publicly available + * Translated using Weblate (Hungarian) + + [ Jiří Podhorecký ] + * Translated using Weblate (Czech) + + [ Sunil Mohan Adapa ] + * container: Avoid a warning that interactive mode is intended + * sso: Add missing captcha/rate limiting on SSO login + * sso: Adjust URL to CAPTCHA page needed by Django security fix + * upgrades: Allow matrix's new dependency to be installed + * tests: functional: Fix setting domain name with active notifications + * help: tests: Fix functional test to check for status logs + + [ James Valleroy ] + * doc: Fetch latest manual + + -- James Valleroy Mon, 17 Jan 2022 20:17:22 -0500 + freedombox (22.2~bpo11+1) bullseye-backports; urgency=medium * Rebuild for bullseye-backports. diff --git a/doc/manual/en/GitWeb.raw.wiki b/doc/manual/en/GitWeb.raw.wiki index 9fee1458a..a3d07ed3f 100644 --- a/doc/manual/en/GitWeb.raw.wiki +++ b/doc/manual/en/GitWeb.raw.wiki @@ -36,8 +36,12 @@ edit your remote to include the credentials. ''Example:'' https://username:password@my.freedombox.rocks/gitweb/myrepo Your username and password will be encrypted. Someone monitoring the network traffic will notice the domain name only.<
> + '''Note:''' If using this method, your password will be stored in plain text in the local repository's {{{.git/config}}} file. For this reason, you should create a !FreedomBox user who has only access to the gitweb and never use an admin account. +'''For GNOME users (Advanced)''' + +GNOME "Passwords and Keys" utility can be used to store the username and password. See this [[https://stackoverflow.com/questions/36585496/error-when-using-git-credential-helper-with-gnome-keyring-as-sudo/40312117#40312117|StackOverflow Answer]] for details on how to do it. === Mirroring === diff --git a/doc/manual/en/Monkeysphere.raw.wiki b/doc/manual/en/Monkeysphere.raw.wiki index 2baa48dec..ab7a3dcae 100644 --- a/doc/manual/en/Monkeysphere.raw.wiki +++ b/doc/manual/en/Monkeysphere.raw.wiki @@ -8,6 +8,10 @@ == Monkeysphere == +{{{#!wiki caution +This application is no longer available in !FreedomBox. +}}} + With Monkeysphere, an OpenPGP key can be generated for each configured domain serving SSH. The OpenPGP public key can then be uploaded to the OpenPGP keyservers. Users connecting to this machine through SSH can verify that they are connecting to the correct host. For users to trust the key, at least one person (usually the machine owner) must sign the key using the regular OpenPGP key signing process. See the [[http://web.monkeysphere.info/getting-started-ssh/|Monkeysphere SSH documentation]] for more details. Monkeysphere can also generate an OpenPGP key for each Secure Web Server (HTTPS) certificate installed on this machine. The OpenPGP public key can then be uploaded to the OpenPGP keyservers. Users accessing the web server through HTTPS can verify that they are connecting to the correct host. To validate the certificate, the user will need to install some software that is available on the [[https://web.monkeysphere.info/download/|Monkeysphere website]]. diff --git a/doc/manual/en/ReleaseNotes.raw.wiki b/doc/manual/en/ReleaseNotes.raw.wiki index 87937ed21..5e4ad0b42 100644 --- a/doc/manual/en/ReleaseNotes.raw.wiki +++ b/doc/manual/en/ReleaseNotes.raw.wiki @@ -10,6 +10,42 @@ For more technical details, see the [[https://salsa.debian.org/freedombox-team/f The following are the release notes for each !FreedomBox version. +== FreedomBox 22.3 (2022-01-17) == + +=== Highlights === + + * upgrades: Allow matrix's new dependency to be installed + * sso: Adjust URL to CAPTCHA page needed by Django security fix + +=== Other Changes === + + * container: Avoid a warning that interactive mode is intended + * help: tests: Fix functional test to check for status logs + * locale: Update translations for Chinese (Simplified), Czech, Dutch, German, Hungarian, Turkish + * sso: Add missing captcha/rate limiting on SSO login + * tests: functional: Fix setting domain name with active notifications + * tt-rss: Allow published articles to be publicly available + +== FreedomBox 22.2 (2022-01-11) == + +=== Highlights === + + * debian, setup.py: Add dependency on python3-tomli + * help: Fix failing setup when manual directory is not available + +=== Other Changes === + + * backups: Correct spelling of encryption protocols + * i2p: Fix grammar in description + * ikiwiki: Initialize shortcuts during post-init setup + * locale: Update translations for Chinese (Simplified), Czech, Dutch, German, Hungarian, Italian, Swedish, Turkish + * mumble: Change description to include iOS client app + * networks: Fix reference to an option + * openvpn: Add link to IOS app + * radicale: Update Thunderbird URLs + * transmission: Fix capitalization + * wireguard: Fix spelling + == FreedomBox 22.1 (2022-01-03) == === Highlights === diff --git a/doc/manual/es/GitWeb.raw.wiki b/doc/manual/es/GitWeb.raw.wiki index b85348394..a87e60e8f 100644 --- a/doc/manual/es/GitWeb.raw.wiki +++ b/doc/manual/es/GitWeb.raw.wiki @@ -33,6 +33,8 @@ Actualmente el !GitWeb de !FreedomBox solo soporta remotos HTTP. Para evitar ten Tu nombre de usuario y contraseña se cifrarán. Quien monitorize el tráfico de la red solo apreciará el nombre de dominio.<
> '''Nota:''' Al usar este método tu contraseña se almacenará en claro en el fichero `.git/config` del repositorio local. Por este motivo debes crear un usuario !FreedomBox que solo tenga acceso a gitweb y no usar nunca una cuenta de administrador. +'''Para usuarios de GNOME (Avanzado)''' +La utilidad "Contraseñas y claves" de GNOME se puede emplear para almacenar el usuario y su contraseña. Más detalles de cómo hacerlo en esta [[https://stackoverflow.com/questions/36585496/error-when-using-git-credential-helper-with-gnome-keyring-as-sudo/40312117#40312117|respuesta en StackOverflow]]. === Réplicas Espejo === diff --git a/doc/manual/es/ReleaseNotes.raw.wiki b/doc/manual/es/ReleaseNotes.raw.wiki index 87937ed21..5e4ad0b42 100644 --- a/doc/manual/es/ReleaseNotes.raw.wiki +++ b/doc/manual/es/ReleaseNotes.raw.wiki @@ -10,6 +10,42 @@ For more technical details, see the [[https://salsa.debian.org/freedombox-team/f The following are the release notes for each !FreedomBox version. +== FreedomBox 22.3 (2022-01-17) == + +=== Highlights === + + * upgrades: Allow matrix's new dependency to be installed + * sso: Adjust URL to CAPTCHA page needed by Django security fix + +=== Other Changes === + + * container: Avoid a warning that interactive mode is intended + * help: tests: Fix functional test to check for status logs + * locale: Update translations for Chinese (Simplified), Czech, Dutch, German, Hungarian, Turkish + * sso: Add missing captcha/rate limiting on SSO login + * tests: functional: Fix setting domain name with active notifications + * tt-rss: Allow published articles to be publicly available + +== FreedomBox 22.2 (2022-01-11) == + +=== Highlights === + + * debian, setup.py: Add dependency on python3-tomli + * help: Fix failing setup when manual directory is not available + +=== Other Changes === + + * backups: Correct spelling of encryption protocols + * i2p: Fix grammar in description + * ikiwiki: Initialize shortcuts during post-init setup + * locale: Update translations for Chinese (Simplified), Czech, Dutch, German, Hungarian, Italian, Swedish, Turkish + * mumble: Change description to include iOS client app + * networks: Fix reference to an option + * openvpn: Add link to IOS app + * radicale: Update Thunderbird URLs + * transmission: Fix capitalization + * wireguard: Fix spelling + == FreedomBox 22.1 (2022-01-03) == === Highlights === diff --git a/plinth/__init__.py b/plinth/__init__.py index eb8aecbd7..24b808a96 100644 --- a/plinth/__init__.py +++ b/plinth/__init__.py @@ -3,4 +3,4 @@ Package init file. """ -__version__ = '22.2' +__version__ = '22.3' diff --git a/plinth/locale/cs/LC_MESSAGES/django.po b/plinth/locale/cs/LC_MESSAGES/django.po index 481beb36a..6b4ef0fdc 100644 --- a/plinth/locale/cs/LC_MESSAGES/django.po +++ b/plinth/locale/cs/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-01-11 19:11-0500\n" -"PO-Revision-Date: 2022-01-08 13:56+0000\n" +"PO-Revision-Date: 2022-01-15 16:56+0000\n" "Last-Translator: Jiří Podhorecký \n" "Language-Team: Czech \n" @@ -636,19 +636,14 @@ msgid "How to verify?" msgstr "Jak ověřit?" #: plinth/modules/backups/templates/verify_ssh_hostkey.html:45 -#, fuzzy -#| msgid "" -#| "Run the following command on the SSH host machine. The output should " -#| "match one of the provided options. You can also use dsa, ecdsa, ed25519 " -#| "etc. instead of rsa, by choosing the corresponding file." msgid "" "Run the following command on the SSH host machine. The output should match " "one of the provided options. You can also use DSA, ECDSA, Ed25519 etc. " "instead of RSA, by choosing the corresponding file." msgstr "" -"Na stroji s SSH spusťte následující příkaz. Výstup by se měl shodovat s " -"jednou z poskytnutých možností. Zvolením příslušného souboru je také možné " -"použít dsa , ecdsa, ed25519 atp. namísto rsa." +"V hostitelském počítači SSH spusťte následující příkaz. Výstup by měl " +"odpovídat jedné ze zadaných možností. Místo RSA můžete také použít DSA, " +"ECDSA, Ed25519 atd. výběrem příslušného souboru." #: plinth/modules/backups/templates/verify_ssh_hostkey.html:60 msgid "Verify Host" @@ -2820,19 +2815,14 @@ msgid "Anonymous Torrents" msgstr "Anonymní torrenty" #: plinth/modules/i2p/views.py:16 -#, fuzzy -#| msgid "" -#| "I2P lets you browse the Internet and hidden services (eepsites) " -#| "anonymously. For this, your browser, preferably a Tor Browser, needs to " -#| "be configured for a proxy." msgid "" "I2P lets you browse the Internet and hidden services (eepsites) anonymously. " "For this, your browser, preferably the Tor Browser, needs to be configured " "with a proxy." msgstr "" -"I2P umožňuje procházet Intenet a skryté služby (eepsites) anonymně. Pro toto " -"je třeba, aby vámi používaný webový prohlížeč (nejlépe Tor Browser) byl " -"nastaven pro proxy." +"I2P umožňuje anonymní procházení internetu a skrytých služeb (eepites). K " +"tomu je třeba, aby váš prohlížeč, nejlépe Tor Browser, byl nakonfigurován s " +"proxy serverem." #: plinth/modules/i2p/views.py:19 msgid "" @@ -3642,19 +3632,14 @@ msgstr "" "komunikaci s nízkou prodlevou." #: plinth/modules/mumble/__init__.py:28 -#, fuzzy -#| msgid "" -#| "You can connect to your Mumble server on the regular Mumble port 64738. " -#| "Clients to connect to Mumble from your " -#| "desktop and Android devices are available." msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " "desktop and mobile devices are available." msgstr "" -"Ke svému Mumble serveru se můžete připojit na běžném Mumble portu 64738. K " -"dispozici jsou klienti pro připojení z " -"desktopu a Android zařízení." +"Ke svému serveru Mumble se můžete připojit na běžném portu Mumble 64738. K " +"dispozici jsou Klienti pro připojení k " +"Mumble z vašeho počítače a mobilních zařízení." #: plinth/modules/mumble/__init__.py:48 plinth/modules/mumble/manifest.py:9 msgid "Mumble" @@ -4606,20 +4591,16 @@ msgstr "" "přijme, a aby %(box_name)s poskytoval služby." #: plinth/modules/networks/templates/router_configuration_content.html:32 -#, fuzzy -#| msgid "" -#| "If you don't have control over your router, choose not to configure it. " -#| "To see options to overcome this limitation, choose 'no public address' " -#| "option in Internet connection type selection." msgid "" "If you don't have control over your router, choose not to configure it. To " "see options to overcome this limitation, choose 'I dont have a public IP " "address' option in Internet connection type selection." msgstr "" -"Pokud nemáte kontrolu nad směrovačem, rozhodněte se jej nenastavovat. Chcete-" -"li zobrazit možnosti, jak toto omezení překonat, zvolte ve výběru typu " -"připojení k internetu možnost \"bez veřejné adresy\"." +"Pokud nemáte kontrolu nad svým routerem, zvolte jej nekonfigurovat. Chcete-" +"li zobrazit možnosti, jak toto omezení překonat, vyberte možnost „Nemám " +"veřejnou IP adresu“ v Výběr typu připojení k internetu." #: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" @@ -6907,10 +6888,8 @@ msgstr "" "BitTorrent není anonymní." #: plinth/modules/transmission/__init__.py:27 -#, fuzzy -#| msgid "Please do not change the default port of the transmission daemon." msgid "Please do not change the default port of the Transmission daemon." -msgstr "Výchozí port přenosového démona neměňte." +msgstr "Výchozí port démona Transmission neměňte." #: plinth/modules/transmission/__init__.py:53 #: plinth/modules/transmission/manifest.py:6 @@ -7588,9 +7567,6 @@ msgid "Use this connection to send all outgoing traffic" msgstr "Toto připojení slouží k odesílání veškerého odchozího provozu" #: plinth/modules/wireguard/forms.py:107 -#, fuzzy -#| msgid "" -#| "Typically checked for a VPN service though which all traffic is sent." msgid "Typically checked for a VPN service through which all traffic is sent." msgstr "" "Obvykle se kontroluje u služby VPN, přes kterou se odesílá veškerý provoz." diff --git a/plinth/locale/de/LC_MESSAGES/django.po b/plinth/locale/de/LC_MESSAGES/django.po index 145b6f040..a4bb03412 100644 --- a/plinth/locale/de/LC_MESSAGES/django.po +++ b/plinth/locale/de/LC_MESSAGES/django.po @@ -10,8 +10,8 @@ msgstr "" "Project-Id-Version: FreedomBox UI\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-01-11 19:11-0500\n" -"PO-Revision-Date: 2022-01-10 17:57+0000\n" -"Last-Translator: Johannes Keyser \n" +"PO-Revision-Date: 2022-01-13 18:58+0000\n" +"Last-Translator: nautilusx \n" "Language-Team: German \n" "Language: de\n" @@ -649,11 +649,6 @@ msgid "How to verify?" msgstr "Wie kann man verifizieren?" #: plinth/modules/backups/templates/verify_ssh_hostkey.html:45 -#, fuzzy -#| msgid "" -#| "Run the following command on the SSH host machine. The output should " -#| "match one of the provided options. You can also use dsa, ecdsa, ed25519 " -#| "etc. instead of rsa, by choosing the corresponding file." msgid "" "Run the following command on the SSH host machine. The output should match " "one of the provided options. You can also use DSA, ECDSA, Ed25519 etc. " @@ -2877,19 +2872,14 @@ msgid "Anonymous Torrents" msgstr "Anonyme Torrents" #: plinth/modules/i2p/views.py:16 -#, fuzzy -#| msgid "" -#| "I2P lets you browse the Internet and hidden services (eepsites) " -#| "anonymously. For this, your browser, preferably a Tor Browser, needs to " -#| "be configured for a proxy." msgid "" "I2P lets you browse the Internet and hidden services (eepsites) anonymously. " "For this, your browser, preferably the Tor Browser, needs to be configured " "with a proxy." msgstr "" "Mit I2P können Sie anonym im Internet und in versteckten Diensten (eepsites) " -"surfen. Dazu muss Ihr Browser, vorzugsweise ein Tor-Browser, für einen Proxy " -"konfiguriert sein." +"surfen. Dazu muss Ihr Browser, vorzugsweise der Tor-Browser, mit einem Proxy " +"konfiguriert werden." #: plinth/modules/i2p/views.py:19 msgid "" @@ -4693,11 +4683,6 @@ msgstr "" "weiterleitet, damit %(box_name)s die Dienste bereitstellt." #: plinth/modules/networks/templates/router_configuration_content.html:32 -#, fuzzy -#| msgid "" -#| "If you don't have control over your router, choose not to configure it. " -#| "To see options to overcome this limitation, choose 'no public address' " -#| "option in Internet connection type selection." msgid "" "If you don't have control over your router, choose not to configure it. To " "see options to overcome this limitation, choose 'I dont have a public IP " @@ -4706,8 +4691,9 @@ msgid "" msgstr "" "Wenn Sie keine Kontrolle über Ihren Router haben, können Sie ihn nicht " "konfigurieren. Um Optionen zur Überwindung dieser Einschränkung zu sehen, " -"wählen Sie die Option 'keine öffentliche Adresse' in der Auswahl der " -"Internetverbindungsart." +"wählen Sie die Option 'Ich habe keine öffentliche IP-Adresse' in Auswahl des " +"Internetverbindungstyps." #: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" @@ -7035,10 +7021,8 @@ msgstr "" "beachten: BitTorrent ist nicht anonym." #: plinth/modules/transmission/__init__.py:27 -#, fuzzy -#| msgid "Please do not change the default port of the transmission daemon." msgid "Please do not change the default port of the Transmission daemon." -msgstr "Bitte ändern Sie den Standardport des Transmission Daemons nicht." +msgstr "Bitte ändern Sie den Standardport des Transmission-Daemons nicht." #: plinth/modules/transmission/__init__.py:53 #: plinth/modules/transmission/manifest.py:6 diff --git a/plinth/locale/hu/LC_MESSAGES/django.po b/plinth/locale/hu/LC_MESSAGES/django.po index d40493ed0..860cde1e9 100644 --- a/plinth/locale/hu/LC_MESSAGES/django.po +++ b/plinth/locale/hu/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-01-11 19:11-0500\n" -"PO-Revision-Date: 2022-01-08 13:56+0000\n" +"PO-Revision-Date: 2022-01-16 22:55+0000\n" "Last-Translator: Benedek Nagy \n" "Language-Team: Hungarian \n" @@ -645,11 +645,6 @@ msgid "How to verify?" msgstr "Hogyan ellenőrizd?" #: plinth/modules/backups/templates/verify_ssh_hostkey.html:45 -#, fuzzy -#| msgid "" -#| "Run the following command on the SSH host machine. The output should " -#| "match one of the provided options. You can also use dsa, ecdsa, ed25519 " -#| "etc. instead of rsa, by choosing the corresponding file." msgid "" "Run the following command on the SSH host machine. The output should match " "one of the provided options. You can also use DSA, ECDSA, Ed25519 etc. " @@ -657,7 +652,7 @@ msgid "" msgstr "" "Futtasd a következő parancsot az SSH-állomáson. A kimenetnek meg kell " "egyeznie a megadott opciók egyikével. Az RSA helyett használható még a DSA, " -"ECDSA, ED25519, stb. is, a megfelelő fájl kiválasztásával." +"ECDSA, Ed25519, stb. is, a megfelelő fájl kiválasztásával." #: plinth/modules/backups/templates/verify_ssh_hostkey.html:60 msgid "Verify Host" @@ -2856,11 +2851,6 @@ msgid "Anonymous Torrents" msgstr "Anonim torrentek" #: plinth/modules/i2p/views.py:16 -#, fuzzy -#| msgid "" -#| "I2P lets you browse the Internet and hidden services (eepsites) " -#| "anonymously. For this, your browser, preferably a Tor Browser, needs to " -#| "be configured for a proxy." msgid "" "I2P lets you browse the Internet and hidden services (eepsites) anonymously. " "For this, your browser, preferably the Tor Browser, needs to be configured " @@ -3686,11 +3676,6 @@ msgstr "" "hangminőségű audiókonferencia-szoftver." #: plinth/modules/mumble/__init__.py:28 -#, fuzzy -#| msgid "" -#| "You can connect to your Mumble server on the regular Mumble port 64738. " -#| "Clients to connect to Mumble from your " -#| "desktop and Android devices are available." msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -4535,9 +4520,9 @@ msgid "" "your ISP. This information is only used to suggest you necessary " "configuration actions." msgstr "" -"Az alábbi táblázat írja le a legjobban az internetszolgáltatód által " -"biztosított internetkapcsolat típusát. Ez az információ csak arra szolgál, " -"hogy javaslatot tegyen a szükséges konfigurációs műveletekre." +"Az alábbiak írják le legjobban az internetszolgáltatód által biztosított " +"internetkapcsolat típusát. Ez az információ csak arra szolgál, hogy " +"javaslatot tegyen a szükséges konfigurációs műveletekre." #: plinth/modules/networks/templates/internet_connectivity_main.html:23 msgid "My ISP provides a public IP address that does not change over time." @@ -4658,21 +4643,17 @@ msgstr "" "hogy a %(box_name)s biztosítani tudja a szolgáltatásokat." #: plinth/modules/networks/templates/router_configuration_content.html:32 -#, fuzzy -#| msgid "" -#| "If you don't have control over your router, choose not to configure it. " -#| "To see options to overcome this limitation, choose 'no public address' " -#| "option in Internet connection type selection." msgid "" "If you don't have control over your router, choose not to configure it. To " "see options to overcome this limitation, choose 'I dont have a public IP " "address' option in Internet connection type selection." msgstr "" -"Ha nem rendelkezel a router felett, akkot ne konfiguráld . A korlátozás " +"Ha nem rendelkezel a router felett, akkor ne konfiguráld . A korlátozás " "leküzdésére szolgáló lehetőségek megtekintéséhez válaszd \"Az " -"internetszolgáltatóm nem biztosít nyilvános IP-címet.\" opciót az " -"internetkapcsolat típusának kiválasztásakor." +"internetszolgáltatóm nem biztosít nyilvános IP-címet.\" opciót az internetkapcsolat típusának " +"kiválasztásakor." #: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" @@ -6987,11 +6968,9 @@ msgstr "" "a BitTorrent nem biztosít névtelenséget." #: plinth/modules/transmission/__init__.py:27 -#, fuzzy -#| msgid "Please do not change the default port of the transmission daemon." msgid "Please do not change the default port of the Transmission daemon." msgstr "" -"Kérlek, ne változtasd meg a transmission daemon alapértelmezett portját." +"Kérlek, ne változtasd meg a Transmission daemon alapértelmezett portját." #: plinth/modules/transmission/__init__.py:53 #: plinth/modules/transmission/manifest.py:6 @@ -7182,8 +7161,8 @@ msgid "" "%(box_name)s has been updated to version %(version)s. See the release announcement." msgstr "" -"A %(box_name)s eszközöd a %(version)s verzióra frissült. Lásd a kiadási közleményt." +"A %(box_name)s eszközöd a(z) %(version)s verzióra frissült. Lásd a kiadási közleményt." #: plinth/modules/upgrades/templates/upgrades-new-release.html:22 #: plinth/templates/notifications.html:44 @@ -7683,9 +7662,6 @@ msgid "Use this connection to send all outgoing traffic" msgstr "Használja ezt a kapcsolatot az összes kimenő forgalom küldésére" #: plinth/modules/wireguard/forms.py:107 -#, fuzzy -#| msgid "" -#| "Typically checked for a VPN service though which all traffic is sent." msgid "Typically checked for a VPN service through which all traffic is sent." msgstr "" "Jellemzően olyan VPN-szolgáltatásnál van bejelölve, amelyen keresztül az " diff --git a/plinth/locale/nl/LC_MESSAGES/django.po b/plinth/locale/nl/LC_MESSAGES/django.po index 57720ca9c..0a129ad8c 100644 --- a/plinth/locale/nl/LC_MESSAGES/django.po +++ b/plinth/locale/nl/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-01-11 19:11-0500\n" -"PO-Revision-Date: 2022-01-06 22:41+0000\n" +"PO-Revision-Date: 2022-01-13 18:58+0000\n" "Last-Translator: ikmaak \n" "Language-Team: Dutch \n" @@ -643,19 +643,14 @@ msgid "How to verify?" msgstr "Hoe te verifiëren?" #: plinth/modules/backups/templates/verify_ssh_hostkey.html:45 -#, fuzzy -#| msgid "" -#| "Run the following command on the SSH host machine. The output should " -#| "match one of the provided options. You can also use dsa, ecdsa, ed25519 " -#| "etc. instead of rsa, by choosing the corresponding file." msgid "" "Run the following command on the SSH host machine. The output should match " "one of the provided options. You can also use DSA, ECDSA, Ed25519 etc. " "instead of RSA, by choosing the corresponding file." msgstr "" "Voer de volgende opdracht uit op de SSH-hostcomputer. De uitvoer moet " -"overeenkomen met een van de aangeboden opties. Je kunt ook dsa, ecdsa, " -"ed25519 etc. gebruiken in plaats van rsa, door het overeenkomstige bestand " +"overeenkomen met een van de aangeboden opties. Je kunt ook DSA, ECDSA, " +"Ed25519 etc. gebruiken in plaats van RSA, door het overeenkomstige bestand " "te kiezen." #: plinth/modules/backups/templates/verify_ssh_hostkey.html:60 @@ -2850,11 +2845,6 @@ msgid "Anonymous Torrents" msgstr "Anonieme Torrents" #: plinth/modules/i2p/views.py:16 -#, fuzzy -#| msgid "" -#| "I2P lets you browse the Internet and hidden services (eepsites) " -#| "anonymously. For this, your browser, preferably a Tor Browser, needs to " -#| "be configured for a proxy." msgid "" "I2P lets you browse the Internet and hidden services (eepsites) anonymously. " "For this, your browser, preferably the Tor Browser, needs to be configured " @@ -3684,11 +3674,6 @@ msgstr "" "groepsgespreksserver." #: plinth/modules/mumble/__init__.py:28 -#, fuzzy -#| msgid "" -#| "You can connect to your Mumble server on the regular Mumble port 64738. " -#| "Clients to connect to Mumble from your " -#| "desktop and Android devices are available." msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " @@ -3697,7 +3682,7 @@ msgstr "" "De Mumble server is beschikbaar via de standaard Mumble poort 64738. Zie Clients (Engelstalig) voor informatie over " "programma's waarmee de Mumble dienst gebruikt kan worden. Er zijn " -"programma's voor zowel desktop en Android machines." +"programma's voor zowel desktop en mobiele apparaten." #: plinth/modules/mumble/__init__.py:48 plinth/modules/mumble/manifest.py:9 msgid "Mumble" @@ -4656,11 +4641,6 @@ msgstr "" "services levert." #: plinth/modules/networks/templates/router_configuration_content.html:32 -#, fuzzy -#| msgid "" -#| "If you don't have control over your router, choose not to configure it. " -#| "To see options to overcome this limitation, choose 'no public address' " -#| "option in Internet connection type selection." msgid "" "If you don't have control over your router, choose not to configure it. To " "see options to overcome this limitation, choose 'I dont have a public IP " @@ -4669,7 +4649,8 @@ msgid "" msgstr "" "Als je geen controle hebt over de router, kies er dan voor om deze niet te " "configureren. Om opties te zien om deze beperking te omzeilen, kies de optie " -"'geen openbaar adres' in de selectie van het type internetverbinding." +"'Ik heb geen openbaar IP adres' in de selectie van het type internetverbinding." #: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" @@ -6971,8 +6952,6 @@ msgstr "" "dat BitTorrent gebruik niet anoniem is." #: plinth/modules/transmission/__init__.py:27 -#, fuzzy -#| msgid "Please do not change the default port of the transmission daemon." msgid "Please do not change the default port of the Transmission daemon." msgstr "Wijzig de standaardpoort van de Transmission daemon niet." @@ -7661,9 +7640,6 @@ msgid "Use this connection to send all outgoing traffic" msgstr "Deze verbinding gebruiken voor al het uitgaande verkeer" #: plinth/modules/wireguard/forms.py:107 -#, fuzzy -#| msgid "" -#| "Typically checked for a VPN service though which all traffic is sent." msgid "Typically checked for a VPN service through which all traffic is sent." msgstr "" "Meestal ingeschakeld op een VPN-service waardoor al het verkeer wordt " diff --git a/plinth/locale/tr/LC_MESSAGES/django.po b/plinth/locale/tr/LC_MESSAGES/django.po index 36c001feb..74743a1ae 100644 --- a/plinth/locale/tr/LC_MESSAGES/django.po +++ b/plinth/locale/tr/LC_MESSAGES/django.po @@ -7,7 +7,7 @@ msgstr "" "Project-Id-Version: \n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-01-11 19:11-0500\n" -"PO-Revision-Date: 2022-01-06 22:41+0000\n" +"PO-Revision-Date: 2022-01-13 18:58+0000\n" "Last-Translator: Burak Yavuz \n" "Language-Team: Turkish \n" @@ -635,19 +635,14 @@ msgid "How to verify?" msgstr "Nasıl doğrulanır?" #: plinth/modules/backups/templates/verify_ssh_hostkey.html:45 -#, fuzzy -#| msgid "" -#| "Run the following command on the SSH host machine. The output should " -#| "match one of the provided options. You can also use dsa, ecdsa, ed25519 " -#| "etc. instead of rsa, by choosing the corresponding file." msgid "" "Run the following command on the SSH host machine. The output should match " "one of the provided options. You can also use DSA, ECDSA, Ed25519 etc. " "instead of RSA, by choosing the corresponding file." msgstr "" "SSH anamakinesinde aşağıdaki komutu çalıştırın. Çıktı, sağlanan " -"seçeneklerden biriyle eşleşmelidir. Ayrıca ilgili dosyayı seçerek rsa yerine " -"dsa, ecdsa, ed25519 vb. kullanabilirsiniz." +"seçeneklerden biriyle eşleşmelidir. Ayrıca ilgili dosyayı seçerek RSA yerine " +"DSA, ECDSA, Ed25519 vb. kullanabilirsiniz." #: plinth/modules/backups/templates/verify_ssh_hostkey.html:60 msgid "Verify Host" @@ -2831,19 +2826,14 @@ msgid "Anonymous Torrents" msgstr "İsimsiz Torrent'ler" #: plinth/modules/i2p/views.py:16 -#, fuzzy -#| msgid "" -#| "I2P lets you browse the Internet and hidden services (eepsites) " -#| "anonymously. For this, your browser, preferably a Tor Browser, needs to " -#| "be configured for a proxy." msgid "" "I2P lets you browse the Internet and hidden services (eepsites) anonymously. " "For this, your browser, preferably the Tor Browser, needs to be configured " "with a proxy." msgstr "" "I2P, İnternet'te ve gizli hizmetlerde (eep siteleri) isimsiz olarak " -"gezinmenize izin verir. Bunun için tarayıcınızın, tercihen bir Tor " -"Tarayıcı'nın bir vekil sunucusu için yapılandırılması gerekir." +"gezinmenize izin verir. Bunun için tarayıcınızın, tercihen Tor Tarayıcı'nın " +"bir vekil sunucusu ile yapılandırılması gerekir." #: plinth/modules/i2p/views.py:19 msgid "" @@ -3664,18 +3654,13 @@ msgstr "" "sohbet yazılımıdır." #: plinth/modules/mumble/__init__.py:28 -#, fuzzy -#| msgid "" -#| "You can connect to your Mumble server on the regular Mumble port 64738. " -#| "Clients to connect to Mumble from your " -#| "desktop and Android devices are available." msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " "desktop and mobile devices are available." msgstr "" "Mumble sunucunuza normal Mumble bağlantı noktası 64738 üzerinden " -"bağlanabilirsiniz. Masaüstünüzden ve Android cihazlarınızdan Mumble'a " +"bağlanabilirsiniz. Masaüstünüzden ve mobil cihazlarınızdan Mumble'a " "bağlanmak için istemciler mevcuttur." #: plinth/modules/mumble/__init__.py:48 plinth/modules/mumble/manifest.py:9 @@ -4628,20 +4613,16 @@ msgstr "" "yönlendirecek şekilde yapılandırılması gerekecektir." #: plinth/modules/networks/templates/router_configuration_content.html:32 -#, fuzzy -#| msgid "" -#| "If you don't have control over your router, choose not to configure it. " -#| "To see options to overcome this limitation, choose 'no public address' " -#| "option in Internet connection type selection." msgid "" "If you don't have control over your router, choose not to configure it. To " "see options to overcome this limitation, choose 'I dont have a public IP " "address' option in Internet connection type selection." msgstr "" -"Eğer yönlendiriciniz üzerinde denetiminiz yoksa yapılandırmamayı seçin. Bu " -"sınırlamanın üstesinden gelme seçeneklerini görmek için İnternet bağlantı " -"türü seçiminde 'dış IP adresi yok' seçeneğini seçin." +"Eğer yönlendiriciniz üzerinde denetiminiz yoksa, yapılandırmamayı seçin. Bu " +"sınırlamanın üstesinden gelme seçeneklerini görmek için İnternet bağlantı türü seçiminde 'Bir dış IP adresim yok' seçeneğini seçin." #: plinth/modules/networks/templates/router_configuration_content.html:39 msgid "Choose How You Wish to Configure Your Router" @@ -6934,11 +6915,9 @@ msgstr "" "isimsiz olmadığını unutmayın." #: plinth/modules/transmission/__init__.py:27 -#, fuzzy -#| msgid "Please do not change the default port of the transmission daemon." msgid "Please do not change the default port of the Transmission daemon." msgstr "" -"Lütfen aktarım arka plan programının varsayılan bağlantı noktasını " +"Lütfen Aktarım arka plan programının varsayılan bağlantı noktasını " "değiştirmeyin." #: plinth/modules/transmission/__init__.py:53 @@ -7624,9 +7603,6 @@ msgid "Use this connection to send all outgoing traffic" msgstr "Tüm giden trafiği göndermek için bu bağlantıyı kullan" #: plinth/modules/wireguard/forms.py:107 -#, fuzzy -#| msgid "" -#| "Typically checked for a VPN service though which all traffic is sent." msgid "Typically checked for a VPN service through which all traffic is sent." msgstr "Genellikle tüm trafiğin gönderildiği bir VPN hizmeti için denetlenir." diff --git a/plinth/locale/zh_Hans/LC_MESSAGES/django.po b/plinth/locale/zh_Hans/LC_MESSAGES/django.po index d5703a2b2..363c7d8e8 100644 --- a/plinth/locale/zh_Hans/LC_MESSAGES/django.po +++ b/plinth/locale/zh_Hans/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgstr "" "Project-Id-Version: Plinth\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2022-01-11 19:11-0500\n" -"PO-Revision-Date: 2022-01-06 22:41+0000\n" +"PO-Revision-Date: 2022-01-13 18:58+0000\n" "Last-Translator: Eric \n" "Language-Team: Chinese (Simplified) \n" @@ -610,18 +610,12 @@ msgid "How to verify?" msgstr "如何核实?" #: plinth/modules/backups/templates/verify_ssh_hostkey.html:45 -#, fuzzy -#| msgid "" -#| "Run the following command on the SSH host machine. The output should " -#| "match one of the provided options. You can also use dsa, ecdsa, ed25519 " -#| "etc. instead of rsa, by choosing the corresponding file." msgid "" "Run the following command on the SSH host machine. The output should match " "one of the provided options. You can also use DSA, ECDSA, Ed25519 etc. " "instead of RSA, by choosing the corresponding file." msgstr "" -"请在 SSH 主机上运行下面的命令。输出应该和提供的选项之一相符。您也可以选择相对" -"应的文件来使用 dsa、ecdsa、ed25519 等。" +"请在 SSH 主机上运行下面的命令。输出应该和提供的选项之一相符。您也可以选择相对应的文件来使用 DSA、ECDSA、Ed25519 等而非 RSA。" #: plinth/modules/backups/templates/verify_ssh_hostkey.html:60 msgid "Verify Host" @@ -3368,18 +3362,13 @@ msgid "" msgstr "Mumble 是一个开放源码的低延迟、 加密、 高品质语音聊天软件。" #: plinth/modules/mumble/__init__.py:28 -#, fuzzy -#| msgid "" -#| "You can connect to your Mumble server on the regular Mumble port 64738. " -#| "Clients to connect to Mumble from your " -#| "desktop and Android devices are available." msgid "" "You can connect to your Mumble server on the regular Mumble port 64738. Clients to connect to Mumble from your " "desktop and mobile devices are available." msgstr "" -"您可以使用常规端口 64738 连接到您的 Mumble 服务器。您可以从桌面和 Android 设" -"备连接 Mumble 客户端。" +"您可以使用常规端口 64738 连接到您的 Mumble 服务器。您可以从桌面和移动设备连接 Mumble 客户端。" #: plinth/modules/mumble/__init__.py:48 plinth/modules/mumble/manifest.py:9 msgid "Mumble" diff --git a/plinth/modules/help/templates/statuslog.html b/plinth/modules/help/templates/statuslog.html index 895aec912..f82473ee2 100644 --- a/plinth/modules/help/templates/statuslog.html +++ b/plinth/modules/help/templates/statuslog.html @@ -28,7 +28,7 @@

-

{{ data }}
+
{{ data }}

{% endblock %} diff --git a/plinth/modules/help/tests/test_functional.py b/plinth/modules/help/tests/test_functional.py index 636aafb74..3658648de 100644 --- a/plinth/modules/help/tests/test_functional.py +++ b/plinth/modules/help/tests/test_functional.py @@ -4,6 +4,7 @@ Functional, browser based tests for help app. """ import pytest + from plinth.tests import functional pytestmark = [pytest.mark.system, pytest.mark.essential, pytest.mark.help] @@ -32,5 +33,6 @@ def _go_to_status_logs(browser): def _are_status_logs_shown(browser): - return (browser.is_text_present('Logs begin') - or browser.is_text_present('Journal begins')) + status_log = browser.find_by_css('.status-log').first.text + return ('-- No entries --' in status_log + or status_log.strip().splitlines()) diff --git a/plinth/modules/sso/urls.py b/plinth/modules/sso/urls.py index fda36b82f..457314d73 100644 --- a/plinth/modules/sso/urls.py +++ b/plinth/modules/sso/urls.py @@ -3,16 +3,21 @@ URLs for the Single Sign On module. """ +from axes.decorators import axes_dispatch from django.urls import re_path from stronghold.decorators import public from plinth.utils import non_admin_view -from .views import SSOLoginView, refresh +from .views import CaptchaLoginView, SSOLoginView, refresh urlpatterns = [ - re_path(r'^accounts/sso/login/$', public(SSOLoginView.as_view()), - name='sso-login'), + re_path(r'^accounts/sso/login/$', + public(axes_dispatch(SSOLoginView.as_view())), name='sso-login'), re_path(r'^accounts/sso/refresh/$', non_admin_view(refresh), name='sso-refresh'), + + # Locked URL from django-axes + re_path(r'accounts/sso/login/locked/$', public(CaptchaLoginView.as_view()), + name='locked_out'), ] diff --git a/plinth/modules/ttrss/data/etc/apache2/conf-available/tt-rss-plinth.conf b/plinth/modules/ttrss/data/etc/apache2/conf-available/tt-rss-plinth.conf index 675ec36a7..8ec6b983d 100644 --- a/plinth/modules/ttrss/data/etc/apache2/conf-available/tt-rss-plinth.conf +++ b/plinth/modules/ttrss/data/etc/apache2/conf-available/tt-rss-plinth.conf @@ -12,6 +12,13 @@ Alias /tt-rss-app /usr/share/tt-rss/www +# URLs without further authentication. The URLs contain a unique key generated +# and managed by tt-rss. This includes articles marked public or even other +# categories. + + Require all granted + + Include includes/freedombox-auth-ldap.conf Require valid-user diff --git a/plinth/modules/upgrades/__init__.py b/plinth/modules/upgrades/__init__.py index 33d0e7b4d..3b2286bda 100644 --- a/plinth/modules/upgrades/__init__.py +++ b/plinth/modules/upgrades/__init__.py @@ -62,7 +62,7 @@ class UpgradesApp(app_module.App): app_id = 'upgrades' - _version = 9 + _version = 10 can_be_disabled = False diff --git a/plinth/modules/users/urls.py b/plinth/modules/users/urls.py index 5d6fb84e2..b95391f75 100644 --- a/plinth/modules/users/urls.py +++ b/plinth/modules/users/urls.py @@ -7,7 +7,8 @@ from axes.decorators import axes_dispatch from django.urls import re_path, reverse_lazy from stronghold.decorators import public -from plinth.modules.sso.views import SSOLoginView, SSOLogoutView +from plinth.modules.sso.views import (CaptchaLoginView, SSOLoginView, + SSOLogoutView) from plinth.utils import non_admin_view from . import views @@ -33,4 +34,6 @@ urlpatterns = [ {'next_page': reverse_lazy('index')}, name='logout'), re_path(r'^users/firstboot/$', public(views.FirstBootView.as_view()), name='firstboot'), + re_path(r'accounts/login/locked/$', public(CaptchaLoginView.as_view()), + name='locked_out'), ] diff --git a/plinth/tests/functional/__init__.py b/plinth/tests/functional/__init__.py index 1fb1e7047..651df6081 100644 --- a/plinth/tests/functional/__init__.py +++ b/plinth/tests/functional/__init__.py @@ -407,7 +407,7 @@ def app_can_be_disabled(browser, app_name): def set_domain_name(browser, domain_name): nav_to_module(browser, 'config') browser.find_by_id('id_domainname').fill(domain_name) - update_setup = browser.find_by_css('.btn-primary') + update_setup = browser.find_by_css('.btn-primary[type="submit"]') submit(browser, element=update_setup) diff --git a/plinth/urls.py b/plinth/urls.py index 48ba8e336..912983869 100644 --- a/plinth/urls.py +++ b/plinth/urls.py @@ -6,8 +6,6 @@ from captcha import views as cviews from django.urls import re_path from stronghold.decorators import public -from plinth.modules.sso.views import CaptchaLoginView - from . import views urlpatterns = [ @@ -28,10 +26,6 @@ urlpatterns = [ re_path(r'^captcha/refresh/$', public(cviews.captcha_refresh), name='captcha-refresh'), - # locked url from django-axes - re_path(r'locked/$', public(CaptchaLoginView.as_view()), - name='locked_out'), - # Notifications re_path(r'^notification/(?P[A-Za-z0-9-=]+)/dismiss/$', views.notification_dismiss, name='notification_dismiss')