Compare commits

..

No commits in common. "91f958659cda55de5be98fe4d86b74fdc0aaea23" and "fbbb2efa0f925bac0ba71892206b94847b4acb0d" have entirely different histories.

15 changed files with 261 additions and 200 deletions

34
debian/changelog vendored
View File

@ -1,38 +1,8 @@
freedombox (26.9.1~bpo13+1) trixie-backports; urgency=medium
freedombox (26.9~bpo13+1) trixie-backports; urgency=medium
* Rebuild for trixie-backports.
-- James Valleroy <jvalleroy@mailbox.org> Fri, 19 Jun 2026 07:41:18 -0400
freedombox (26.9.1) unstable; urgency=medium
[ 大王叫我来巡山 ]
* Translated using Weblate (Chinese (Simplified Han script))
[ Burak Yavuz ]
* Translated using Weblate (Turkish)
[ Besnik Bleta ]
* Translated using Weblate (Albanian)
[ Jiří Podhorecký ]
* Translated using Weblate (Czech)
[ Pierfrancesco Passerini ]
* Translated using Weblate (Italian)
[ Coucouf ]
* Translated using Weblate (French)
[ Sunil Mohan Adapa ]
* matrixsynapse: Allow installing new dependencies
[ James Valleroy ]
* wireguard: Move segno import inside method
* wireguard: Get config for both download and qr actions
* doc: Fetch latest manual
-- James Valleroy <jvalleroy@mailbox.org> Mon, 15 Jun 2026 20:46:29 -0400
-- James Valleroy <jvalleroy@mailbox.org> Mon, 08 Jun 2026 18:47:40 -0400
freedombox (26.9) unstable; urgency=medium

View File

@ -12,7 +12,7 @@
=== Availability ===
* [[https://www.aliexpress.com/item/3256803323773726.html|AliExpress]]
* [[https://www.aliexpress.com/store/group/Allwinner-H2/1553371_516093180.html|AliExpress]]
=== Hardware ===

View File

@ -8,13 +8,6 @@ For more technical details, see the [[https://salsa.debian.org/freedombox-team/f
The following are the release notes for each !FreedomBox version.
== FreedomBox 26.9.1 (2026-06-15) ==
* locale: Update translations for Albanian, Chinese (Simplified Han script), Czech, French, Italian, Turkish
* matrixsynapse: Allow installing new dependencies
* wireguard: Get config for both download and qr actions
* wireguard: Move segno import inside method
== FreedomBox 26.9 (2026-06-01) ==
=== Highlights ===

View File

@ -12,7 +12,7 @@
=== Availability ===
* [[https://www.aliexpress.com/item/3256803323773726.html|AliExpress]]
* [[https://www.aliexpress.com/store/group/Allwinner-H2/1553371_516093180.html|AliExpress]]
=== Hardware ===

View File

@ -8,13 +8,6 @@ For more technical details, see the [[https://salsa.debian.org/freedombox-team/f
The following are the release notes for each !FreedomBox version.
== FreedomBox 26.9.1 (2026-06-15) ==
* locale: Update translations for Albanian, Chinese (Simplified Han script), Czech, French, Italian, Turkish
* matrixsynapse: Allow installing new dependencies
* wireguard: Get config for both download and qr actions
* wireguard: Move segno import inside method
== FreedomBox 26.9 (2026-06-01) ==
=== Highlights ===

View File

@ -3,4 +3,4 @@
Package init file.
"""
__version__ = '26.9.1'
__version__ = '26.9'

View File

@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-02 00:51+0000\n"
"PO-Revision-Date: 2026-06-04 18:01+0000\n"
"PO-Revision-Date: 2026-04-09 10:09+0000\n"
"Last-Translator: Jiří Podhorecký <j.podhorecky@volny.cz>\n"
"Language-Team: Czech <https://hosted.weblate.org/projects/freedombox/"
"freedombox/cs/>\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 2026.6\n"
"X-Generator: Weblate 5.17-dev\n"
#: plinth/config.py:103
#, python-brace-format
@ -9994,8 +9994,10 @@ msgid "Invalid key."
msgstr "Neplatný klíč."
#: plinth/modules/wireguard/forms.py:63
#, fuzzy
#| msgid "Enter a valid IPv4 address."
msgid "Not a valid IP address."
msgstr "Neplatná IP adresa."
msgstr "Zadejte platnou adresu IPv4."
#: plinth/modules/wireguard/forms.py:69
#: plinth/modules/wireguard/templates/wireguard.html:29
@ -10042,6 +10044,13 @@ msgid "Client IP address provided by server"
msgstr "IP adresa klienta poskytnutá serverem"
#: plinth/modules/wireguard/forms.py:97
#, fuzzy
#| msgid ""
#| "IP address assigned to this machine on the VPN after connecting to the "
#| "endpoint. This value is usually provided by the server operator. Example: "
#| "192.168.0.10. You can also specify the network. This will allow reaching "
#| "machines in the network. Examples: 10.68.12.43/24 or "
#| "10.68.12.43/255.255.255.0."
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
@ -10049,11 +10058,10 @@ msgid ""
"specify the network. This will allow reaching machines in the network. "
"Examples: 10.68.12.43/24 or 10.68.12.43/255.255.255.0."
msgstr ""
"IP adresa přidělená tomuto zařízení ve VPN po připojení ke koncovému bodu. "
"Tuto hodnotu obvykle poskytuje provozovatel serveru. Příklad: 192.168.0.10 "
"nebo 2a03:7c80:4b2c:91a2:5d41:ffee:9b82:7c17. Můžete také zadat síť. To "
"umožní dosáhnout zařízení v síti. Příklady: 10.68.12.43/24 nebo 10.68.12.43/"
"255.255.255.0."
"IP adresa přiřazená k tomuto stroji na VPN po připojení k koncovému bodu. "
"Tato hodnota je obvykle poskytována provozovatelem serveru. Příklad: "
"192.168.0.10. Můžete také zadat síť. To umožní dosažení strojů v síti. "
"Příklady: 10.68.12.43/24 nebo 10.68.12.43/255.255.255.0."
#: plinth/modules/wireguard/forms.py:106
msgid "Private key of this machine"
@ -10147,12 +10155,14 @@ msgid "No peers configured to connect to this %(box_name)s yet."
msgstr "K tomuto %(box_name)s zatím není nakonfigurován žádný partner."
#: plinth/modules/wireguard/templates/wireguard.html:88
#, fuzzy
#| msgid "Add a new peer"
msgid "Auto add a new peer"
msgstr "Automaticky přidat nový peer"
msgstr "Přidání nového peeru"
#: plinth/modules/wireguard/templates/wireguard.html:92
msgid "Add Client Automatically"
msgstr "Automaticky přidat klienta"
msgstr ""
#: plinth/modules/wireguard/templates/wireguard.html:94
msgid "Add a new peer"
@ -10209,52 +10219,60 @@ msgid "Add Client"
msgstr "Přidat klienta"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:26
#, fuzzy
#| msgid "Private repository"
msgid "Private Key"
msgstr "Soukromý klíč"
msgstr "Neveřejný repozitář"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:29
msgid "Click to reveal"
msgstr "Kliknutím zobrazit"
msgstr ""
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:36
#, fuzzy
#| msgid "Key Import Date"
msgid "Important:"
msgstr "Důležité:"
msgstr "Datum importu klíče"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:37
msgid "Save the private key now. This page shows it only once!"
msgstr "Soukromý klíč si hned uložte. Na této stránce se zobrazí pouze jednou!"
msgstr ""
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:41
#, fuzzy
#| msgid "configuration failed"
msgid "Client configuration file"
msgstr "Konfigurační soubor klienta"
msgstr "konfigurace selhala"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:43
msgid ""
"Download the configuration file (.conf) for manual import, or use the QR "
"code to import directly from your WireGuard mobile app."
msgstr ""
"Stáhněte si konfigurační soubor (.conf) pro ruční import, nebo použijte QR "
"kód k přímému importu z mobilní aplikace WireGuard."
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:49
#, fuzzy
#| msgid "warning"
msgid "Warning:"
msgstr "Upozornění:"
msgstr "varování"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:50
msgid ""
"Treat this QR code like a password. Anyone who scans it can gain VPN access "
"if the connection is enabled."
msgstr ""
"Tento QR kód považujte za heslo. Kdokoli, kdo jej naskenuje, získá přístup k "
"VPN, pokud je připojení povoleno."
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:60
#, fuzzy
#| msgid "Download my profile"
msgid "Download config file"
msgstr "Stáhnout konfigurační soubor"
msgstr "Stáhnout si svůj profil"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:65
#, fuzzy
#| msgid "Source Code"
msgid "Show QR Code"
msgstr "Zobrazit QR kód"
msgstr "Zdrojové kódy"
#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
@ -10359,11 +10377,13 @@ msgstr "Klient s veřejným klíčem již existuje"
#: plinth/modules/wireguard/views.py:199
msgid "Session expired. Please try again."
msgstr "Vypršela platnost relace. Zkuste to znovu."
msgstr ""
#: plinth/modules/wireguard/views.py:202
#, fuzzy
#| msgid "Domain already exists."
msgid "Client already exists"
msgstr "Klient již existuje"
msgstr "Doména již existuje."
#: plinth/modules/wireguard/views.py:215
msgid "Allowed Client"

View File

@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: FreedomBox UI\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-02 00:51+0000\n"
"PO-Revision-Date: 2026-06-13 20:01+0000\n"
"PO-Revision-Date: 2026-04-16 15:09+0000\n"
"Last-Translator: Coucouf <coucouf@coucouf.fr>\n"
"Language-Team: French <https://hosted.weblate.org/projects/freedombox/"
"freedombox/fr/>\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 2026.7.dev0\n"
"X-Generator: Weblate 5.17.1-dev\n"
#: plinth/config.py:103
#, python-brace-format
@ -10266,8 +10266,10 @@ msgid "Invalid key."
msgstr "Clé invalide."
#: plinth/modules/wireguard/forms.py:63
#, fuzzy
#| msgid "Enter a valid IPv4 address."
msgid "Not a valid IP address."
msgstr "Ce nest pas une adresse IP valide."
msgstr "Veuillez saisir une adresse IPv4 valide."
#: plinth/modules/wireguard/forms.py:69
#: plinth/modules/wireguard/templates/wireguard.html:29
@ -10315,6 +10317,13 @@ msgid "Client IP address provided by server"
msgstr "Adresse IP du client fournie par le serveur"
#: plinth/modules/wireguard/forms.py:97
#, fuzzy
#| msgid ""
#| "IP address assigned to this machine on the VPN after connecting to the "
#| "endpoint. This value is usually provided by the server operator. Example: "
#| "192.168.0.10. You can also specify the network. This will allow reaching "
#| "machines in the network. Examples: 10.68.12.43/24 or "
#| "10.68.12.43/255.255.255.0."
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
@ -10324,10 +10333,9 @@ msgid ""
msgstr ""
"Adresse IP attribuée à cette machine sur le réseau privé virtuel VPN une "
"fois connectée au serveur distant. Cette valeur est généralement fournie par "
"lopérateur du serveur. Par exemple : 192.18.0.10 ou "
"2a03:7c80:4b2c:91a2:5d41:ffee:9b82:7c17. Vous pouvez également spécifier le "
"réseau. Cela vous permettra datteindre les machines de ce réseau. Par "
"exemple : 10.68.12.43/24 ou 10.68.12.43/255.255.255.0."
"lopérateur du serveur. Par exemple : 192.18.0.10. Vous pouvez également "
"spécifier le réseau. Cela vous permettra datteindre les machines de ce "
"réseau. Par exemple : 10.68.12.43/24 ou 10.68.12.43/255.255.255.0."
#: plinth/modules/wireguard/forms.py:106
msgid "Private key of this machine"
@ -10426,12 +10434,14 @@ msgstr ""
"linstant."
#: plinth/modules/wireguard/templates/wireguard.html:88
#, fuzzy
#| msgid "Add a new peer"
msgid "Auto add a new peer"
msgstr "Ajout auto dun nouveau pair"
msgstr "Ajouter un nouveau pair"
#: plinth/modules/wireguard/templates/wireguard.html:92
msgid "Add Client Automatically"
msgstr "Ajouter un client automatiquement"
msgstr ""
#: plinth/modules/wireguard/templates/wireguard.html:94
msgid "Add a new peer"
@ -10488,55 +10498,60 @@ msgid "Add Client"
msgstr "Ajouter un client"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:26
#, fuzzy
#| msgid "Private key path"
msgid "Private Key"
msgstr "Clé privée"
msgstr "Chemin de la clef privée"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:29
msgid "Click to reveal"
msgstr "Cliquer pour afficher"
msgstr ""
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:36
#, fuzzy
#| msgid "Key Import Date"
msgid "Important:"
msgstr "Important :"
msgstr "Date de l'importation de la clé"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:37
msgid "Save the private key now. This page shows it only once!"
msgstr ""
"Sauvegardez la clé privée maintenant. Cette page ne laffiche quune seule "
"fois!"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:41
#, fuzzy
#| msgid "configuration failed"
msgid "Client configuration file"
msgstr "Fichier de configuration du client"
msgstr "échec de configuration"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:43
msgid ""
"Download the configuration file (.conf) for manual import, or use the QR "
"code to import directly from your WireGuard mobile app."
msgstr ""
"Téléchargez le fichier de configuration (.conf) pour un import manuel, ou "
"utilisez le QR code pour un import direct depuis votre appli mobile "
"WireGuard."
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:49
#, fuzzy
#| msgid "warning"
msgid "Warning:"
msgstr "Mise en garde :"
msgstr "avertissement"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:50
msgid ""
"Treat this QR code like a password. Anyone who scans it can gain VPN access "
"if the connection is enabled."
msgstr ""
"Traitez ce QR code comme un mot de passe. Quiconque met la main dessus "
"pourra se connecter au VPN si la connexion est active."
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:60
#, fuzzy
#| msgid "Download my profile"
msgid "Download config file"
msgstr "Télécharger le fichier de conf"
msgstr "Télécharger mon profil"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:65
#, fuzzy
#| msgid "Source Code"
msgid "Show QR Code"
msgstr "Afficher le QR code"
msgstr "Code source"
#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
@ -10641,11 +10656,13 @@ msgstr "Un client existe déjà avec cette clé publique"
#: plinth/modules/wireguard/views.py:199
msgid "Session expired. Please try again."
msgstr "La session a expiré. Veuillez réessayer."
msgstr ""
#: plinth/modules/wireguard/views.py:202
#, fuzzy
#| msgid "Domain already exists."
msgid "Client already exists"
msgstr "Le client existe déjà."
msgstr "Le domaine existe déjà."
#: plinth/modules/wireguard/views.py:215
msgid "Allowed Client"

View File

@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-02 00:51+0000\n"
"PO-Revision-Date: 2026-06-13 20:01+0000\n"
"PO-Revision-Date: 2026-05-05 17:11+0000\n"
"Last-Translator: Pierfrancesco Passerini <p.passerini@gmail.com>\n"
"Language-Team: Italian <https://hosted.weblate.org/projects/freedombox/"
"freedombox/it/>\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 2026.7.dev0\n"
"X-Generator: Weblate 5.17.1\n"
#: plinth/config.py:103
#, python-brace-format
@ -10084,8 +10084,10 @@ msgid "Invalid key."
msgstr "Chiave non valida."
#: plinth/modules/wireguard/forms.py:63
#, fuzzy
#| msgid "Enter a valid IPv4 address."
msgid "Not a valid IP address."
msgstr "Non è un indirizzo IP valido."
msgstr "Inserisci un indirizzo IPv4 valido."
#: plinth/modules/wireguard/forms.py:69
#: plinth/modules/wireguard/templates/wireguard.html:29
@ -10133,6 +10135,13 @@ msgid "Client IP address provided by server"
msgstr "Indirizzo IP client fornito dal server"
#: plinth/modules/wireguard/forms.py:97
#, fuzzy
#| msgid ""
#| "IP address assigned to this machine on the VPN after connecting to the "
#| "endpoint. This value is usually provided by the server operator. Example: "
#| "192.168.0.10. You can also specify the network. This will allow reaching "
#| "machines in the network. Examples: 10.68.12.43/24 or "
#| "10.68.12.43/255.255.255.0."
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
@ -10142,9 +10151,9 @@ msgid ""
msgstr ""
"Indirizzo IP assegnato a questa macchina sulla VPN dopo la connessione "
"all'endpoint. Questo valore è generalmente fornito dal gestore del server. "
"Esempio: 192.168.0.10 oppure 2a03:7c80:4b2c:91a2:5d41:ffee:9b82:7c17. È "
"inoltre possibile specificare la rete. Ciò consentirà di raggiungere le "
"macchine nella rete. Esempi: 10.68.12.43/24 o 10.68.12.43/255.255.255.0."
"Esempio: 192.168.0.10. È inoltre possibile specificare la rete. Ciò "
"consentirà di raggiungere le macchine nella rete. Esempi: 10.68.12.43/24 o "
"10.68.12.43/255.255.255.0."
#: plinth/modules/wireguard/forms.py:106
msgid "Private key of this machine"
@ -10239,12 +10248,14 @@ msgid "No peers configured to connect to this %(box_name)s yet."
msgstr "Non ci sono nodi autorizzati a connettersi a %(box_name)s."
#: plinth/modules/wireguard/templates/wireguard.html:88
#, fuzzy
#| msgid "Add a new peer"
msgid "Auto add a new peer"
msgstr "Aggiungi automaticamente un nuovo nodo"
msgstr "Aggiungi un nuovo nodo"
#: plinth/modules/wireguard/templates/wireguard.html:92
msgid "Add Client Automatically"
msgstr "Aggiungi client automaticamente"
msgstr ""
#: plinth/modules/wireguard/templates/wireguard.html:94
msgid "Add a new peer"
@ -10301,52 +10312,58 @@ msgid "Add Client"
msgstr "Aggiungere Client"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:26
#, fuzzy
#| msgid "Private key path"
msgid "Private Key"
msgstr "Chiave privata"
msgstr "Percorso chiave privata"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:29
msgid "Click to reveal"
msgstr "Clicca per visualizzare"
msgstr ""
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:36
#, fuzzy
#| msgid "Key Import Date"
msgid "Important:"
msgstr "Importante:"
msgstr "Data Importazione Chiave"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:37
msgid "Save the private key now. This page shows it only once!"
msgstr "Salva ora la chiave privata. Questa pagina la mostra solo una volta!"
msgstr ""
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:41
#, fuzzy
#| msgid "configuration failed"
msgid "Client configuration file"
msgstr "File di configurazione client"
msgstr "configurazione fallita"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:43
msgid ""
"Download the configuration file (.conf) for manual import, or use the QR "
"code to import directly from your WireGuard mobile app."
msgstr ""
"Scarica il file di configurazione (.conf) per importarla manualmente o "
"utilizza il codice QR dall'app mobile WireGuard."
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:49
#, fuzzy
#| msgid "warning"
msgid "Warning:"
msgstr "Attenzione:"
msgstr "attenzione"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:50
msgid ""
"Treat this QR code like a password. Anyone who scans it can gain VPN access "
"if the connection is enabled."
msgstr ""
"Trattare questo codice QR come una password. Chiunque lo scansioni,se la "
"connessione è abilitata, otterrà l'accesso VPN."
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:60
#, fuzzy
#| msgid "Download my profile"
msgid "Download config file"
msgstr "Download del file di configurazione"
msgstr "Download del profilo"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:65
msgid "Show QR Code"
msgstr "Mostra QR Code"
msgstr ""
#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
@ -10451,11 +10468,13 @@ msgstr "Il cliente con chiave pubblica esiste già"
#: plinth/modules/wireguard/views.py:199
msgid "Session expired. Please try again."
msgstr "Sessione scaduta. Riprova."
msgstr ""
#: plinth/modules/wireguard/views.py:202
#, fuzzy
#| msgid "Domain already exists."
msgid "Client already exists"
msgstr "Client già esistente"
msgstr "Il dominio esiste già."
#: plinth/modules/wireguard/views.py:215
msgid "Allowed Client"

View File

@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-02 00:51+0000\n"
"PO-Revision-Date: 2026-06-03 05:01+0000\n"
"PO-Revision-Date: 2026-04-08 07:09+0000\n"
"Last-Translator: Besnik Bleta <besnik@programeshqip.org>\n"
"Language-Team: Albanian <https://hosted.weblate.org/projects/freedombox/"
"freedombox/sq/>\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 2026.6\n"
"X-Generator: Weblate 5.17-dev\n"
#: plinth/config.py:103
#, python-brace-format
@ -10112,8 +10112,10 @@ msgid "Invalid key."
msgstr "Kyç i pavlefshëm."
#: plinth/modules/wireguard/forms.py:63
#, fuzzy
#| msgid "Enter a valid IPv4 address."
msgid "Not a valid IP address."
msgstr "Adresë IP jo e vlefshme."
msgstr "Jepni një adresë IPv4 të vlefshme."
#: plinth/modules/wireguard/forms.py:69
#: plinth/modules/wireguard/templates/wireguard.html:29
@ -10161,6 +10163,13 @@ msgid "Client IP address provided by server"
msgstr "Adresë IP klienti e furnizuar nga shërbyesi\\"
#: plinth/modules/wireguard/forms.py:97
#, fuzzy
#| msgid ""
#| "IP address assigned to this machine on the VPN after connecting to the "
#| "endpoint. This value is usually provided by the server operator. Example: "
#| "192.168.0.10. You can also specify the network. This will allow reaching "
#| "machines in the network. Examples: 10.68.12.43/24 or "
#| "10.68.12.43/255.255.255.0."
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
@ -10169,10 +10178,9 @@ msgid ""
"Examples: 10.68.12.43/24 or 10.68.12.43/255.255.255.0."
msgstr ""
"Adresë IP caktuar kësaj makine te VPN-ja, pas lidhjes me pikëmbarimin. Kjo "
"vlerë zakonisht jepet nga operatori i shërbyesit. Shembull: 192.168.0.10, "
"ose 2a03:7c80:4b2c:91a2:5d41:ffee:9b82:7c17. Mundeni edhe të tregoni "
"rrjetin. Kjo do të lejojë të arrihet te makina te rrjeti. Shembuj: "
"10.68.12.43/24 ose 10.68.12.43/255.255.255.0."
"vlerë zakonisht jepet nga operatori i shërbyesit. Shembull: 192.168.0.10. "
"Mundeni edhe të tregoni rrjetin. Kjo do të lejojë të arrihet te makina te "
"rrjeti. Shembuj: 10.68.12.43/24 ose 10.68.12.43/255.255.255.0."
#: plinth/modules/wireguard/forms.py:106
msgid "Private key of this machine"
@ -10267,12 +10275,14 @@ msgid "No peers configured to connect to this %(box_name)s yet."
msgstr "Ende ska ortakë të formësuar për tu lidhur te ky %(box_name)s."
#: plinth/modules/wireguard/templates/wireguard.html:88
#, fuzzy
#| msgid "Add a new peer"
msgid "Auto add a new peer"
msgstr "Shto automatikisht ortak të ri"
msgstr "Shtoni ortak të ri"
#: plinth/modules/wireguard/templates/wireguard.html:92
msgid "Add Client Automatically"
msgstr "Shto Klient Automatikisht"
msgstr ""
#: plinth/modules/wireguard/templates/wireguard.html:94
msgid "Add a new peer"
@ -10329,52 +10339,60 @@ msgid "Add Client"
msgstr "Shtoni Klient"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:26
#, fuzzy
#| msgid "Private key of this machine"
msgid "Private Key"
msgstr "Kyç Privat"
msgstr "Kyç privat i kësaj makine"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:29
msgid "Click to reveal"
msgstr "Klikoni që të shfaqet"
msgstr ""
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:36
#, fuzzy
#| msgid "Key Import Date"
msgid "Important:"
msgstr "E rëndësishme:"
msgstr "Datë Importimi Kyçi"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:37
msgid "Save the private key now. This page shows it only once!"
msgstr "Ruajeni kyçin privat tani. Kjo faqe e shfaq atë vetëm një herë!"
msgstr ""
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:41
#, fuzzy
#| msgid "configuration failed"
msgid "Client configuration file"
msgstr "Kartelë formësimi klienti"
msgstr "formësimi dështoi"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:43
msgid ""
"Download the configuration file (.conf) for manual import, or use the QR "
"code to import directly from your WireGuard mobile app."
msgstr ""
"Shkarkoni kartelën e formësimit (.conf) për importim dorazi, ose përdorni "
"kodin QR që ta importoni drejt e nga aplikacioni juaj WireGuard për celular."
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:49
#, fuzzy
#| msgid "warning"
msgid "Warning:"
msgstr "Kujdes:"
msgstr "kujdes"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:50
msgid ""
"Treat this QR code like a password. Anyone who scans it can gain VPN access "
"if the connection is enabled."
msgstr ""
"Trajtojeni këtë kod QR si një fjalëkalim. Cilido që e skanon, mund të "
"përfitojë hyrje VPN, nëse lidhja është e aktivizuar."
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:60
#, fuzzy
#| msgid "Download my profile"
msgid "Download config file"
msgstr "Shkarko kartelë formësimi"
msgstr "Shkarko profilin tim"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:65
#, fuzzy
#| msgid "Source Code"
msgid "Show QR Code"
msgstr "Shfaq Kod QR"
msgstr "Kod Burim"
#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
@ -10479,11 +10497,13 @@ msgstr "Ka tashmë klient me kyç publik"
#: plinth/modules/wireguard/views.py:199
msgid "Session expired. Please try again."
msgstr "Sesioni skadoi. Ju lutemi, riprovoni."
msgstr ""
#: plinth/modules/wireguard/views.py:202
#, fuzzy
#| msgid "Domain already exists."
msgid "Client already exists"
msgstr "Klienti ekziston tashmë"
msgstr "Përkatësia ekziston tashmë."
#: plinth/modules/wireguard/views.py:215
msgid "Allowed Client"

View File

@ -7,7 +7,7 @@ msgstr ""
"Project-Id-Version: \n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-02 00:51+0000\n"
"PO-Revision-Date: 2026-06-03 05:01+0000\n"
"PO-Revision-Date: 2026-04-09 10:09+0000\n"
"Last-Translator: Burak Yavuz <hitowerdigit@hotmail.com>\n"
"Language-Team: Turkish <https://hosted.weblate.org/projects/freedombox/"
"freedombox/tr/>\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 2026.6\n"
"X-Generator: Weblate 5.17-dev\n"
#: plinth/config.py:103
#, python-brace-format
@ -10049,8 +10049,10 @@ msgid "Invalid key."
msgstr "Geçersiz anahtar."
#: plinth/modules/wireguard/forms.py:63
#, fuzzy
#| msgid "Enter a valid IPv4 address."
msgid "Not a valid IP address."
msgstr "Geçerli bir IP adresi değil."
msgstr "Geçerli bir IPv4 adresi girin."
#: plinth/modules/wireguard/forms.py:69
#: plinth/modules/wireguard/templates/wireguard.html:29
@ -10097,6 +10099,13 @@ msgid "Client IP address provided by server"
msgstr "Sunucu tarafından sağlanan istemci IP adresi"
#: plinth/modules/wireguard/forms.py:97
#, fuzzy
#| msgid ""
#| "IP address assigned to this machine on the VPN after connecting to the "
#| "endpoint. This value is usually provided by the server operator. Example: "
#| "192.168.0.10. You can also specify the network. This will allow reaching "
#| "machines in the network. Examples: 10.68.12.43/24 or "
#| "10.68.12.43/255.255.255.0."
msgid ""
"IP address assigned to this machine on the VPN after connecting to the "
"endpoint. This value is usually provided by the server operator. Example: "
@ -10105,10 +10114,9 @@ msgid ""
"Examples: 10.68.12.43/24 or 10.68.12.43/255.255.255.0."
msgstr ""
"Uç noktaya bağlandıktan sonra VPN'de bu makineye atanan IP adresi. Bu değer "
"genellikle sunucu işleticisi tarafından verilir. Örnek: 192.168.0.10 veya "
"2a03:7c80:4b2c:91a2:5d41:ffee:9b82:7c17. Ayrıca ağı da belirtebilirsiniz. "
"Bu, ağdaki makinelere ulaşmayı sağlayacaktır. Örnekler: 10.68.12.43/24 veya "
"10.68.12.43/255.255.255.0."
"genellikle sunucu işleticisi tarafından verilir. Örnek: 192.168.0.10. Ayrıca "
"ağı da belirtebilirsiniz. Bu, ağdaki makinelere ulaşmayı sağlayacaktır. "
"Örnekler: 10.68.12.43/24 veya 10.68.12.43/255.255.255.0."
#: plinth/modules/wireguard/forms.py:106
msgid "Private key of this machine"
@ -10202,12 +10210,14 @@ msgstr ""
"Henüz bu %(box_name)s cihazına bağlanmak için yapılandırılmış kişiler yok."
#: plinth/modules/wireguard/templates/wireguard.html:88
#, fuzzy
#| msgid "Add a new peer"
msgid "Auto add a new peer"
msgstr "Otomatik yeni bir kişi ekle"
msgstr "Yeni bir kişi ekle"
#: plinth/modules/wireguard/templates/wireguard.html:92
msgid "Add Client Automatically"
msgstr "İstemciyi Otomatik Olarak Ekle"
msgstr ""
#: plinth/modules/wireguard/templates/wireguard.html:94
msgid "Add a new peer"
@ -10264,53 +10274,60 @@ msgid "Add Client"
msgstr "İstemci Ekle"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:26
#, fuzzy
#| msgid "Private key path"
msgid "Private Key"
msgstr "Özel Anahtar"
msgstr "Özel anahtar yolu"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:29
msgid "Click to reveal"
msgstr "Ortaya çıkarmak için tıklayın"
msgstr ""
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:36
#, fuzzy
#| msgid "Key Import Date"
msgid "Important:"
msgstr "Önemli:"
msgstr "Anahtar İçe Aktarma Tarihi"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:37
msgid "Save the private key now. This page shows it only once!"
msgstr ""
"Şimdi özel anahtarı kaydedin. Bu sayfa anahtarı yalnızca bir kez gösterir!"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:41
#, fuzzy
#| msgid "configuration failed"
msgid "Client configuration file"
msgstr "İstemci yapılandırma dosyası"
msgstr "yapılandırma başarısız oldu"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:43
msgid ""
"Download the configuration file (.conf) for manual import, or use the QR "
"code to import directly from your WireGuard mobile app."
msgstr ""
"Elle içe aktarma için yapılandırma dosyasını (.conf) indirin veya doğrudan "
"WireGuard mobil uygulamanızdan içe aktarmak için QR kodunu kullanın."
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:49
#, fuzzy
#| msgid "warning"
msgid "Warning:"
msgstr "Uyarı:"
msgstr "uyarı"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:50
msgid ""
"Treat this QR code like a password. Anyone who scans it can gain VPN access "
"if the connection is enabled."
msgstr ""
"Bu QR kodunu bir parola gibi kullanın. Bağlantı etkinse bunu tarayan herkes "
"VPN erişimi elde edebilir."
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:60
#, fuzzy
#| msgid "Download my profile"
msgid "Download config file"
msgstr "Yapılandırma dosyasını indir"
msgstr "Profilimi indir"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:65
#, fuzzy
#| msgid "Source Code"
msgid "Show QR Code"
msgstr "QR Kodunu Göster"
msgstr "Kaynak Kodu"
#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
@ -10415,11 +10432,13 @@ msgstr "Ortak anahtara sahip istemci zaten var"
#: plinth/modules/wireguard/views.py:199
msgid "Session expired. Please try again."
msgstr "Oturumun süresi doldu. Lütfen tekrar deneyin."
msgstr ""
#: plinth/modules/wireguard/views.py:202
#, fuzzy
#| msgid "Domain already exists."
msgid "Client already exists"
msgstr "İstemci zaten var"
msgstr "Etki alanı zaten var."
#: plinth/modules/wireguard/views.py:215
msgid "Allowed Client"

View File

@ -8,7 +8,7 @@ msgstr ""
"Project-Id-Version: Plinth\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2026-06-02 00:51+0000\n"
"PO-Revision-Date: 2026-06-03 05:01+0000\n"
"PO-Revision-Date: 2026-04-08 07:09+0000\n"
"Last-Translator: 大王叫我来巡山 "
"<hamburger2048@users.noreply.hosted.weblate.org>\n"
"Language-Team: Chinese (Simplified Han script) <https://hosted.weblate.org/"
@ -18,7 +18,7 @@ msgstr ""
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=1; plural=0;\n"
"X-Generator: Weblate 2026.6\n"
"X-Generator: Weblate 5.17-dev\n"
#: plinth/config.py:103
#, python-brace-format
@ -9037,8 +9037,10 @@ msgid "Invalid key."
msgstr "无效的密钥。"
#: plinth/modules/wireguard/forms.py:63
#, fuzzy
#| msgid "Enter a valid IPv4 address."
msgid "Not a valid IP address."
msgstr "不是有效的 IP 地址。"
msgstr "输入有效的 IPv4 地址。"
#: plinth/modules/wireguard/forms.py:69
#: plinth/modules/wireguard/templates/wireguard.html:29
@ -9172,8 +9174,10 @@ msgid "No peers configured to connect to this %(box_name)s yet."
msgstr ""
#: plinth/modules/wireguard/templates/wireguard.html:88
#, fuzzy
#| msgid "Added new server."
msgid "Auto add a new peer"
msgstr "自动添加新对端"
msgstr "添加新服务器。"
#: plinth/modules/wireguard/templates/wireguard.html:92
msgid "Add Client Automatically"
@ -9234,24 +9238,30 @@ msgid "Add Client"
msgstr "添加客户端"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:26
#, fuzzy
#| msgid "Create User"
msgid "Private Key"
msgstr "私钥"
msgstr "创建用户"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:29
msgid "Click to reveal"
msgstr ""
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:36
#, fuzzy
#| msgid "Key Import Date"
msgid "Important:"
msgstr "重要:"
msgstr "密钥导入日期"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:37
msgid "Save the private key now. This page shows it only once!"
msgstr ""
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:41
#, fuzzy
#| msgid "configuration failed"
msgid "Client configuration file"
msgstr "客户端配置文件"
msgstr "配置失败"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:43
msgid ""
@ -9260,8 +9270,10 @@ msgid ""
msgstr ""
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:49
#, fuzzy
#| msgid "warning"
msgid "Warning:"
msgstr "警告:"
msgstr "警告"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:50
msgid ""
@ -9270,12 +9282,16 @@ msgid ""
msgstr ""
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:60
#, fuzzy
#| msgid "Download my profile"
msgid "Download config file"
msgstr "下载配置文件"
msgstr "下载我的配置文件"
#: plinth/modules/wireguard/templates/wireguard_auto_add_client.html:65
#, fuzzy
#| msgid "Source Code"
msgid "Show QR Code"
msgstr "显示二维码"
msgstr "源代码"
#: plinth/modules/wireguard/templates/wireguard_delete_client.html:14
msgid "Are you sure that you want to delete this client?"
@ -9378,8 +9394,10 @@ msgid "Session expired. Please try again."
msgstr ""
#: plinth/modules/wireguard/views.py:202
#, fuzzy
#| msgid "Domain already exists."
msgid "Client already exists"
msgstr "客户端已存在"
msgstr "域名已存在。"
#: plinth/modules/wireguard/views.py:215
msgid "Allowed Client"

View File

@ -55,7 +55,7 @@ class UpgradesApp(app_module.App):
app_id = 'upgrades'
_version = 22
_version = 21
can_be_disabled = False

View File

@ -75,16 +75,6 @@ Package: python3-pympler
Pin: release n=sid
Pin-Priority: 200
Explanation: matrix-synapse depends on python3-rpds-py (>= 0.25.0)
Package: python3-rpds-py
Pin: release n=sid
Pin-Priority: 500
Explanation: matrix-synapse depends on typing-extensions (>=4.14.1)
Package: python3-typing-extensions
Pin: release n=sid
Pin-Priority: 500
Explanation: Make janus package and its dependencies installable from Debian
Explanation: 'unstable' distribution.
Package: janus

View File

@ -3,7 +3,7 @@
Views for WireGuard application.
"""
from io import BytesIO
import segno
import urllib.parse
from django.contrib import messages
@ -14,6 +14,8 @@ from django.urls import reverse_lazy
from django.utils.translation import gettext as _
from django.views.generic import FormView, TemplateView, View
from io import BytesIO
from plinth import network
from plinth.modules.names.components import DomainName
from plinth.views import AppView
@ -97,28 +99,28 @@ class SessionClientDataMixin:
raise Http404("Session expired")
return {
'next_ip': next_ip,
'privkey': privkey,
'pubkey': pubkey,
'endpoint': endpoint
}
'next_ip': next_ip,
'privkey': privkey,
'pubkey': pubkey,
'endpoint': endpoint
}
def get_client_config(self, request):
"""Rebuild client config from session."""
data = self.get_session_client_data(request)
return utils.build_client_config(data['next_ip'], data['privkey'],
data['pubkey'], data['endpoint'])
return utils.build_client_config(
data['next_ip'], data['privkey'],
data['pubkey'], data['endpoint']
)
class ClientActionsView(SessionClientDataMixin, View):
action = None
def get(self, request):
import segno
config = self.get_client_config(request)
if self.action == 'download':
config = self.get_client_config(request)
response = HttpResponse(config, content_type='text/plain')
response['Content-Disposition'] = \
'attachment; filename="wg-client.conf"'
@ -172,7 +174,7 @@ class AutoAddClientView(SuccessMessageMixin, FormView):
'client_privkey': client_privkey,
'client_pubkey': client_pubkey,
'endpoint': endpoint
}
}
# Add properties to template context
context['domains'] = filtered_domains