Browse Source

Merge branch 'testing' into testing

Alexandre Aubin 5 months ago
parent
commit
81d3b6a7ff

+ 10 - 0
ALL_README.md

@@ -0,0 +1,10 @@
+# All available README files by language
+
+- [Read the README in English](README.md)
+- [Lea el README en español](README_es.md)
+- [Irakurri README euskaraz](README_eu.md)
+- [Lire le README en français](README_fr.md)
+- [Le o README en galego](README_gl.md)
+- [Baca README dalam bahasa bahasa Indonesia](README_id.md)
+- [Прочитать README на русский](README_ru.md)
+- [阅读中文(简体)的 README](README_zh_Hans.md)

+ 12 - 12
README.md

@@ -1,18 +1,18 @@
 <!--
-N.B.: This README was automatically generated by https://github.com/YunoHost/apps/tree/master/tools/README-generator
+N.B.: This README was automatically generated by <https://github.com/YunoHost/apps/tree/master/tools/readme_generator>
 It shall NOT be edited by hand.
 -->
 
 # VPN Client for YunoHost
 
-[![Integration level](https://dash.yunohost.org/integration/vpnclient.svg)](https://dash.yunohost.org/appci/app/vpnclient) ![Working status](https://ci-apps.yunohost.org/ci/badges/vpnclient.status.svg) ![Maintenance status](https://ci-apps.yunohost.org/ci/badges/vpnclient.maintain.svg)
+[![Integration level](https://dash.yunohost.org/integration/vpnclient.svg)](https://ci-apps.yunohost.org/ci/apps/vpnclient/) ![Working status](https://ci-apps.yunohost.org/ci/badges/vpnclient.status.svg) ![Maintenance status](https://ci-apps.yunohost.org/ci/badges/vpnclient.maintain.svg)
 
 [![Install VPN Client with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=vpnclient)
 
-*[Lire ce readme en français.](./README_fr.md)*
+*[Read this README in other languages.](./ALL_README.md)*
 
-> *This package allows you to install VPN Client quickly and simply on a YunoHost server.
-If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/install) to learn how to install it.*
+> *This package allows you to install VPN Client quickly and simply on a YunoHost server.*  
+> *If you don't have YunoHost, please consult [the guide](https://yunohost.org/install) to learn how to install it.*
 
 ## Overview
 
@@ -25,7 +25,7 @@ Install a VPN connection on your self-hosted server.
 
 
 
-**Shipped version:** 2.2~ynh1
+**Shipped version:** 2.2~ynh5
 
 ## Screenshots
 
@@ -33,17 +33,17 @@ Install a VPN connection on your self-hosted server.
 
 ## Documentation and resources
 
-* Official app website: <https://labriqueinter.net>
-* YunoHost Store: <https://apps.yunohost.org/app/vpnclient>
-* Report a bug: <https://github.com/YunoHost-Apps/vpnclient_ynh/issues>
+- Official app website: <https://labriqueinter.net>
+- YunoHost Store: <https://apps.yunohost.org/app/vpnclient>
+- Report a bug: <https://github.com/YunoHost-Apps/vpnclient_ynh/issues>
 
 ## Developer info
 
-Please send your pull request to the [testing branch](https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing).
+Please send your pull request to the [`testing` branch](https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing).
 
-To try the testing branch, please proceed like that.
+To try the `testing` branch, please proceed like that:
 
-``` bash
+```bash
 sudo yunohost app install https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing --debug
 or
 sudo yunohost app upgrade vpnclient -u https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing --debug

+ 52 - 0
README_es.md

@@ -0,0 +1,52 @@
+<!--
+Este archivo README esta generado automaticamente<https://github.com/YunoHost/apps/tree/master/tools/readme_generator>
+No se debe editar a mano.
+-->
+
+# VPN Client para Yunohost
+
+[![Nivel de integración](https://dash.yunohost.org/integration/vpnclient.svg)](https://ci-apps.yunohost.org/ci/apps/vpnclient/) ![Estado funcional](https://ci-apps.yunohost.org/ci/badges/vpnclient.status.svg) ![Estado En Mantención](https://ci-apps.yunohost.org/ci/badges/vpnclient.maintain.svg)
+
+[![Instalar VPN Client con Yunhost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=vpnclient)
+
+*[Leer este README en otros idiomas.](./ALL_README.md)*
+
+> *Este paquete le permite instalarVPN Client rapidamente y simplement en un servidor YunoHost.*  
+> *Si no tiene YunoHost, visita [the guide](https://yunohost.org/install) para aprender como instalarla.*
+
+## Descripción general
+
+Install a VPN connection on your self-hosted server.
+* Useful for hosting your server behind a filtered (and/or non-neutral) internet access.
+* Useful to have static IP addresses (IPv6 and IPv4).
+* Useful to easily move your server anywhere.
+* Strong firewalling (internet access and self-hosted services only available through the VPN, not leaking to your commercial ISP)
+* Combine with the [Hotspot app](https://github.com/YunoHost-Apps/hotspot_ynh) to broadcast VPN-protected WiFi to other laptops without any further technical configuration needed.
+
+
+
+**Versión actual:** 2.2~ynh5
+
+## Capturas
+
+![Captura de VPN Client](./doc/screenshots/vpnclient.png)
+
+## Documentaciones y recursos
+
+- Sitio web oficial: <https://labriqueinter.net>
+- Catálogo YunoHost: <https://apps.yunohost.org/app/vpnclient>
+- Reportar un error: <https://github.com/YunoHost-Apps/vpnclient_ynh/issues>
+
+## Información para desarrolladores
+
+Por favor enviar sus correcciones a la [`branch testing`](https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing
+
+Para probar la rama `testing`, sigue asÍ:
+
+```bash
+sudo yunohost app install https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing --debug
+o
+sudo yunohost app upgrade vpnclient -u https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing --debug
+```
+
+**Mas informaciones sobre el empaquetado de aplicaciones:** <https://yunohost.org/packaging_apps>

+ 52 - 0
README_eu.md

@@ -0,0 +1,52 @@
+<!--
+Ohart ongi: README hau automatikoki sortu da <https://github.com/YunoHost/apps/tree/master/tools/readme_generator>ri esker
+EZ editatu eskuz.
+-->
+
+# VPN Client YunoHost-erako
+
+[![Integrazio maila](https://dash.yunohost.org/integration/vpnclient.svg)](https://ci-apps.yunohost.org/ci/apps/vpnclient/) ![Funtzionamendu egoera](https://ci-apps.yunohost.org/ci/badges/vpnclient.status.svg) ![Mantentze egoera](https://ci-apps.yunohost.org/ci/badges/vpnclient.maintain.svg)
+
+[![Instalatu VPN Client YunoHost-ekin](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=vpnclient)
+
+*[Irakurri README hau beste hizkuntzatan.](./ALL_README.md)*
+
+> *Pakete honek VPN Client YunoHost zerbitzari batean azkar eta zailtasunik gabe instalatzea ahalbidetzen dizu.*  
+> *YunoHost ez baduzu, kontsultatu [gida](https://yunohost.org/install) nola instalatu ikasteko.*
+
+## Aurreikuspena
+
+Install a VPN connection on your self-hosted server.
+* Useful for hosting your server behind a filtered (and/or non-neutral) internet access.
+* Useful to have static IP addresses (IPv6 and IPv4).
+* Useful to easily move your server anywhere.
+* Strong firewalling (internet access and self-hosted services only available through the VPN, not leaking to your commercial ISP)
+* Combine with the [Hotspot app](https://github.com/YunoHost-Apps/hotspot_ynh) to broadcast VPN-protected WiFi to other laptops without any further technical configuration needed.
+
+
+
+**Paketatutako bertsioa:** 2.2~ynh5
+
+## Pantaila-argazkiak
+
+![VPN Client(r)en pantaila-argazkia](./doc/screenshots/vpnclient.png)
+
+## Dokumentazioa eta baliabideak
+
+- Aplikazioaren webgune ofiziala: <https://labriqueinter.net>
+- YunoHost Denda: <https://apps.yunohost.org/app/vpnclient>
+- Eman errore baten berri: <https://github.com/YunoHost-Apps/vpnclient_ynh/issues>
+
+## Garatzaileentzako informazioa
+
+Bidali `pull request`a [`testing` abarrera](https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing).
+
+`testing` abarra probatzeko, ondorengoa egin:
+
+```bash
+sudo yunohost app install https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing --debug
+edo
+sudo yunohost app upgrade vpnclient -u https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing --debug
+```
+
+**Informazio gehiago aplikazioaren paketatzeari buruz:** <https://yunohost.org/packaging_apps>

+ 14 - 14
README_fr.md

@@ -1,18 +1,18 @@
 <!--
-N.B.: This README was automatically generated by https://github.com/YunoHost/apps/tree/master/tools/README-generator
-It shall NOT be edited by hand.
+Nota bene : ce README est automatiquement généré par <https://github.com/YunoHost/apps/tree/master/tools/readme_generator>
+Il NE doit PAS être modifié à la main.
 -->
 
 # VPN Client pour YunoHost
 
-[![Niveau d’intégration](https://dash.yunohost.org/integration/vpnclient.svg)](https://dash.yunohost.org/appci/app/vpnclient) ![Statut du fonctionnement](https://ci-apps.yunohost.org/ci/badges/vpnclient.status.svg) ![Statut de maintenance](https://ci-apps.yunohost.org/ci/badges/vpnclient.maintain.svg)
+[![Niveau d’intégration](https://dash.yunohost.org/integration/vpnclient.svg)](https://ci-apps.yunohost.org/ci/apps/vpnclient/) ![Statut du fonctionnement](https://ci-apps.yunohost.org/ci/badges/vpnclient.status.svg) ![Statut de maintenance](https://ci-apps.yunohost.org/ci/badges/vpnclient.maintain.svg)
 
 [![Installer VPN Client avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=vpnclient)
 
-*[Read this readme in english.](./README.md)*
+*[Lire le README dans d'autres langues.](./ALL_README.md)*
 
-> *Ce package vous permet d’installer VPN Client rapidement et simplement sur un serveur YunoHost.
-Si vous n’avez pas YunoHost, regardez [ici](https://yunohost.org/#/install) pour savoir comment l’installer et en profiter.*
+> *Ce package vous permet d’installer VPN Client rapidement et simplement sur un serveur YunoHost.*  
+> *Si vous n’avez pas YunoHost, consultez [ce guide](https://yunohost.org/install) pour savoir comment l’installer et en profiter.*
 
 ## Vue d’ensemble
 
@@ -25,7 +25,7 @@ Installez une connexion VPN sur votre serveur auto-hébergé
 
 
 
-**Version incluse :** 2.2~ynh1
+**Version incluse :** 2.2~ynh5
 
 ## Captures d’écran
 
@@ -33,20 +33,20 @@ Installez une connexion VPN sur votre serveur auto-hébergé
 
 ## Documentations et ressources
 
-* Site officiel de l’app : <https://labriqueinter.net>
-* YunoHost Store: <https://apps.yunohost.org/app/vpnclient>
-* Signaler un bug : <https://github.com/YunoHost-Apps/vpnclient_ynh/issues>
+- Site officiel de l’app : <https://labriqueinter.net>
+- YunoHost Store : <https://apps.yunohost.org/app/vpnclient>
+- Signaler un bug : <https://github.com/YunoHost-Apps/vpnclient_ynh/issues>
 
 ## Informations pour les développeurs
 
-Merci de faire vos pull request sur la [branche testing](https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing).
+Merci de faire vos pull request sur la [branche `testing`](https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing).
 
-Pour essayer la branche testing, procédez comme suit.
+Pour essayer la branche `testing`, procédez comme suit :
 
-``` bash
+```bash
 sudo yunohost app install https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing --debug
 ou
 sudo yunohost app upgrade vpnclient -u https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing --debug
 ```
 
-**Plus d’infos sur le packaging d’applications :** <https://yunohost.org/packaging_apps>
+**Plus d’infos sur le packaging d’applications:** <https://yunohost.org/packaging_apps>

+ 52 - 0
README_gl.md

@@ -0,0 +1,52 @@
+<!--
+NOTA: Este README foi creado automáticamente por <https://github.com/YunoHost/apps/tree/master/tools/readme_generator>
+NON debe editarse manualmente.
+-->
+
+# VPN Client para YunoHost
+
+[![Nivel de integración](https://dash.yunohost.org/integration/vpnclient.svg)](https://ci-apps.yunohost.org/ci/apps/vpnclient/) ![Estado de funcionamento](https://ci-apps.yunohost.org/ci/badges/vpnclient.status.svg) ![Estado de mantemento](https://ci-apps.yunohost.org/ci/badges/vpnclient.maintain.svg)
+
+[![Instalar VPN Client con YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=vpnclient)
+
+*[Le este README en outros idiomas.](./ALL_README.md)*
+
+> *Este paquete permíteche instalar VPN Client de xeito rápido e doado nun servidor YunoHost.*  
+> *Se non usas YunoHost, le a [documentación](https://yunohost.org/install) para saber como instalalo.*
+
+## Vista xeral
+
+Install a VPN connection on your self-hosted server.
+* Useful for hosting your server behind a filtered (and/or non-neutral) internet access.
+* Useful to have static IP addresses (IPv6 and IPv4).
+* Useful to easily move your server anywhere.
+* Strong firewalling (internet access and self-hosted services only available through the VPN, not leaking to your commercial ISP)
+* Combine with the [Hotspot app](https://github.com/YunoHost-Apps/hotspot_ynh) to broadcast VPN-protected WiFi to other laptops without any further technical configuration needed.
+
+
+
+**Versión proporcionada:** 2.2~ynh5
+
+## Capturas de pantalla
+
+![Captura de pantalla de VPN Client](./doc/screenshots/vpnclient.png)
+
+## Documentación e recursos
+
+- Web oficial da app: <https://labriqueinter.net>
+- Tenda YunoHost: <https://apps.yunohost.org/app/vpnclient>
+- Informar dun problema: <https://github.com/YunoHost-Apps/vpnclient_ynh/issues>
+
+## Info de desenvolvemento
+
+Envía a túa colaboración á [rama `testing`](https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing).
+
+Para probar a rama `testing`, procede deste xeito:
+
+```bash
+sudo yunohost app install https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing --debug
+ou
+sudo yunohost app upgrade vpnclient -u https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing --debug
+```
+
+**Máis info sobre o empaquetado da app:** <https://yunohost.org/packaging_apps>

+ 52 - 0
README_id.md

@@ -0,0 +1,52 @@
+<!--
+N.B.: README ini dibuat secara otomatis oleh <https://github.com/YunoHost/apps/tree/master/tools/readme_generator>
+Ini TIDAK boleh diedit dengan tangan.
+-->
+
+# VPN Client untuk YunoHost
+
+[![Tingkat integrasi](https://dash.yunohost.org/integration/vpnclient.svg)](https://ci-apps.yunohost.org/ci/apps/vpnclient/) ![Status kerja](https://ci-apps.yunohost.org/ci/badges/vpnclient.status.svg) ![Status pemeliharaan](https://ci-apps.yunohost.org/ci/badges/vpnclient.maintain.svg)
+
+[![Pasang VPN Client dengan YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=vpnclient)
+
+*[Baca README ini dengan bahasa yang lain.](./ALL_README.md)*
+
+> *Paket ini memperbolehkan Anda untuk memasang VPN Client secara cepat dan mudah pada server YunoHost.*  
+> *Bila Anda tidak mempunyai YunoHost, silakan berkonsultasi dengan [panduan](https://yunohost.org/install) untuk mempelajari bagaimana untuk memasangnya.*
+
+## Ringkasan
+
+Install a VPN connection on your self-hosted server.
+* Useful for hosting your server behind a filtered (and/or non-neutral) internet access.
+* Useful to have static IP addresses (IPv6 and IPv4).
+* Useful to easily move your server anywhere.
+* Strong firewalling (internet access and self-hosted services only available through the VPN, not leaking to your commercial ISP)
+* Combine with the [Hotspot app](https://github.com/YunoHost-Apps/hotspot_ynh) to broadcast VPN-protected WiFi to other laptops without any further technical configuration needed.
+
+
+
+**Versi terkirim:** 2.2~ynh5
+
+## Tangkapan Layar
+
+![Tangkapan Layar pada VPN Client](./doc/screenshots/vpnclient.png)
+
+## Dokumentasi dan sumber daya
+
+- Website aplikasi resmi: <https://labriqueinter.net>
+- Gudang YunoHost: <https://apps.yunohost.org/app/vpnclient>
+- Laporkan bug: <https://github.com/YunoHost-Apps/vpnclient_ynh/issues>
+
+## Info developer
+
+Silakan kirim pull request ke [`testing` branch](https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing).
+
+Untuk mencoba branch `testing`, silakan dilanjutkan seperti:
+
+```bash
+sudo yunohost app install https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing --debug
+atau
+sudo yunohost app upgrade vpnclient -u https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing --debug
+```
+
+**Info lebih lanjut mengenai pemaketan aplikasi:** <https://yunohost.org/packaging_apps>

+ 55 - 0
README_it.md

@@ -0,0 +1,55 @@
+<!--
+N.B.: Questo README è stato automaticamente generato da <https://github.com/YunoHost/apps/tree/master/tools/readme_generator>
+NON DEVE essere modificato manualmente.
+-->
+
+# VPN Client per YunoHost
+
+[![Livello di integrazione](https://dash.yunohost.org/integration/vpnclient.svg)](https://dash.yunohost.org/appci/app/vpnclient) ![Stato di funzionamento](https://ci-apps.yunohost.org/ci/badges/vpnclient.status.svg) ![Stato di manutenzione](https://ci-apps.yunohost.org/ci/badges/vpnclient.maintain.svg)
+
+[![Installa VPN Client con YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=vpnclient)
+
+*[Leggi questo README in altre lingue.](./ALL_README.md)*
+
+> *Questo pacchetto ti permette di installare VPN Client su un server YunoHost in modo semplice e veloce.*  
+> *Se non hai YunoHost, consulta [la guida](https://yunohost.org/install) per imparare a installarlo.*
+
+## Panoramica
+
+* Install a VPN connection on your self-hosted server.
+* Useful for hosting your server behind a filtered (and/or non-neutral) internet access.
+* Useful to have static IP addresses (IPv6 and IPv4).
+* Useful to easily move your server anywhere.
+* Strong firewalling (internet access and self-hosted services only available through the VPN, not leaking to your commercial ISP)
+* Combine with the [Hotspot app](https://github.com/YunoHost-Apps/hotspot_ynh) to broadcast VPN-protected WiFi to other laptops without any further technical configuration needed.
+
+
+
+**Versione pubblicata:** 2.1.2~ynh1
+
+## Screenshot
+
+![Screenshot di VPN Client](./doc/screenshots/vpnclient.png)
+
+## Attenzione/informazioni importanti
+
+Please note that this application is designed to interface with **dedicated, public IP VPNs accepting inbound traffic**, preferably with an associated `.cube` (or `.ovpn/.conf`) configuration file. **Do not** expect that any VPN you randomly bought on the Internet can be used! Checkout the [list of known compatible providers](https://yunohost.org/providers/vpn) for more info.
+
+## Documentazione e risorse
+
+- Store di YunoHost: <https://apps.yunohost.org/app/vpnclient>
+- Segnala un problema: <https://github.com/YunoHost-Apps/vpnclient_ynh/issues>
+
+## Informazioni per sviluppatori
+
+Si prega di inviare la tua pull request alla [branch di `testing`](https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing).
+
+Per provare la branch di `testing`, si prega di procedere in questo modo:
+
+```bash
+sudo yunohost app install https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing --debug
+o
+sudo yunohost app upgrade vpnclient -u https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing --debug
+```
+
+**Maggiori informazioni riguardo il pacchetto di quest’app:** <https://yunohost.org/packaging_apps>

+ 52 - 0
README_ru.md

@@ -0,0 +1,52 @@
+<!--
+Важно: этот README был автоматически сгенерирован <https://github.com/YunoHost/apps/tree/master/tools/readme_generator>
+Он НЕ ДОЛЖЕН редактироваться вручную.
+-->
+
+# VPN Client для YunoHost
+
+[![Уровень интеграции](https://dash.yunohost.org/integration/vpnclient.svg)](https://ci-apps.yunohost.org/ci/apps/vpnclient/) ![Состояние работы](https://ci-apps.yunohost.org/ci/badges/vpnclient.status.svg) ![Состояние сопровождения](https://ci-apps.yunohost.org/ci/badges/vpnclient.maintain.svg)
+
+[![Установите VPN Client с YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=vpnclient)
+
+*[Прочтите этот README на других языках.](./ALL_README.md)*
+
+> *Этот пакет позволяет Вам установить VPN Client быстро и просто на YunoHost-сервер.*  
+> *Если у Вас нет YunoHost, пожалуйста, посмотрите [инструкцию](https://yunohost.org/install), чтобы узнать, как установить его.*
+
+## Обзор
+
+Install a VPN connection on your self-hosted server.
+* Useful for hosting your server behind a filtered (and/or non-neutral) internet access.
+* Useful to have static IP addresses (IPv6 and IPv4).
+* Useful to easily move your server anywhere.
+* Strong firewalling (internet access and self-hosted services only available through the VPN, not leaking to your commercial ISP)
+* Combine with the [Hotspot app](https://github.com/YunoHost-Apps/hotspot_ynh) to broadcast VPN-protected WiFi to other laptops without any further technical configuration needed.
+
+
+
+**Поставляемая версия:** 2.2~ynh5
+
+## Снимки экрана
+
+![Снимок экрана VPN Client](./doc/screenshots/vpnclient.png)
+
+## Документация и ресурсы
+
+- Официальный веб-сайт приложения: <https://labriqueinter.net>
+- Магазин YunoHost: <https://apps.yunohost.org/app/vpnclient>
+- Сообщите об ошибке: <https://github.com/YunoHost-Apps/vpnclient_ynh/issues>
+
+## Информация для разработчиков
+
+Пришлите Ваш запрос на слияние в [ветку `testing`](https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing).
+
+Чтобы попробовать ветку `testing`, пожалуйста, сделайте что-то вроде этого:
+
+```bash
+sudo yunohost app install https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing --debug
+или
+sudo yunohost app upgrade vpnclient -u https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing --debug
+```
+
+**Больше информации о пакетировании приложений:** <https://yunohost.org/packaging_apps>

+ 52 - 0
README_zh_Hans.md

@@ -0,0 +1,52 @@
+<!--
+注意:此 README 由 <https://github.com/YunoHost/apps/tree/master/tools/readme_generator> 自动生成
+请勿手动编辑。
+-->
+
+# YunoHost 上的 VPN Client
+
+[![集成程度](https://dash.yunohost.org/integration/vpnclient.svg)](https://ci-apps.yunohost.org/ci/apps/vpnclient/) ![工作状态](https://ci-apps.yunohost.org/ci/badges/vpnclient.status.svg) ![维护状态](https://ci-apps.yunohost.org/ci/badges/vpnclient.maintain.svg)
+
+[![使用 YunoHost 安装 VPN Client](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=vpnclient)
+
+*[阅读此 README 的其它语言版本。](./ALL_README.md)*
+
+> *通过此软件包,您可以在 YunoHost 服务器上快速、简单地安装 VPN Client。*  
+> *如果您还没有 YunoHost,请参阅[指南](https://yunohost.org/install)了解如何安装它。*
+
+## 概况
+
+Install a VPN connection on your self-hosted server.
+* Useful for hosting your server behind a filtered (and/or non-neutral) internet access.
+* Useful to have static IP addresses (IPv6 and IPv4).
+* Useful to easily move your server anywhere.
+* Strong firewalling (internet access and self-hosted services only available through the VPN, not leaking to your commercial ISP)
+* Combine with the [Hotspot app](https://github.com/YunoHost-Apps/hotspot_ynh) to broadcast VPN-protected WiFi to other laptops without any further technical configuration needed.
+
+
+
+**分发版本:** 2.2~ynh5
+
+## 截图
+
+![VPN Client 的截图](./doc/screenshots/vpnclient.png)
+
+## 文档与资源
+
+- 官方应用网站: <https://labriqueinter.net>
+- YunoHost 商店: <https://apps.yunohost.org/app/vpnclient>
+- 报告 bug: <https://github.com/YunoHost-Apps/vpnclient_ynh/issues>
+
+## 开发者信息
+
+请向 [`testing` 分支](https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing) 发送拉取请求。
+
+如要尝试 `testing` 分支,请这样操作:
+
+```bash
+sudo yunohost app install https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing --debug
+或
+sudo yunohost app upgrade vpnclient -u https://github.com/YunoHost-Apps/vpnclient_ynh/tree/testing --debug
+```
+
+**有关应用打包的更多信息:** <https://yunohost.org/packaging_apps>

+ 11 - 3
conf/hook_post-iptable-rules

@@ -1,10 +1,10 @@
 #!/bin/bash
 
 server_names=$(grep -o -P '^\s*remote\s+\K([^\s]+)' /etc/openvpn/client.conf | sort | uniq)
-host6=$(dig AAAA +short $server_names @127.0.0.1 | grep -v '\.$' | grep -v "timed out")
-host4=$(dig A +short $server_names @127.0.0.1 | grep -v '\.$' | grep -v "timed out")
 
 # In case an ip has been provided in ovpn conf
+host4=""
+host6=""
 for i in ${server_names}; do
   if [[ "${i}" =~ : ]]; then
       host6+=" ${i}"
@@ -13,8 +13,16 @@ for i in ${server_names}; do
   fi
 done
 
+if [[ -z "${host6}" ]]; then
+  host6=$(dig AAAA +short $server_names @127.0.0.1 | grep -v '\.$' | grep -v "timed out")
+fi
+
+if [[ -z "${host4}" ]]; then
+  host4=$(dig A +short $server_names @127.0.0.1 | grep -v '\.$' | grep -v "timed out")
+fi
+
 interface=$(ip route | awk '/default via/ { print $5; }')
-dns=$(grep -o -P '\s*nameserver\s+\K[ABCDEFabcdef\d.:]+' /etc/resolv.dnsmasq.conf)
+dns=$(grep -o -P '^\s*nameserver\s+\K[a-fA-F\d.:]+$' /etc/resolv.dnsmasq.conf | sort | uniq)
 
 # IPv6
 

+ 2 - 3
conf/scripts/route-down.d/10-vpnclient-unset-firewall

@@ -7,9 +7,8 @@ is_firewall_set() {
 
 wired_device=$(ip route | awk '/default via/ { print $5; }')
 
-if is_firewall_set; then
-  rm -f /etc/yunohost/hooks.d/post_iptable_rules/90-vpnclient
-  
+rm -f /etc/yunohost/hooks.d/post_iptable_rules/90-vpnclient
+if is_firewall_set; then  
   # IPv4
 
   iptables -w -D INPUT -i "${wired_device}" -j vpnclient_in

+ 3 - 3
conf/scripts/route-down.d/20-vpnclient-unset-dns

@@ -20,9 +20,9 @@ if is_dns_set; then
   fi
 
   # FIXME : this situation happened to a user ...
-  # We could try to force regen the dns conf 
-  # (though for now it's tightly coupled to dnsmasq)
   if ! grep -q "^nameserver\s" "${resolvconf}"; then
-    echo "${resolvconf} does not have any nameserver line !?" >&2
+    echo "${resolvconf} does not have any nameserver line !? Regenerating ..." >&2
+    # This is the main line from yunohost's dnsmasq hook generating the resolv.dnsmasq.conf
+    cat /usr/share/yunohost/conf/dnsmasq/plain/resolv.dnsmasq.conf | grep "^nameserver" | shuf >${resolvconf}
   fi
 fi

+ 1 - 1
conf/scripts/route-up.d/10-vpnclient-set-firewall

@@ -9,8 +9,8 @@ is_firewall_set() {
 
 if ! is_firewall_set; then
   bash /etc/yunohost/apps/vpnclient/conf/hook_post-iptable-rules
-  cp /etc/yunohost/apps/vpnclient/conf/hook_post-iptable-rules /etc/yunohost/hooks.d/post_iptable_rules/90-vpnclient
 fi
+cp /etc/yunohost/apps/vpnclient/conf/hook_post-iptable-rules /etc/yunohost/hooks.d/post_iptable_rules/90-vpnclient
 
 if is_firewall_set; then
   echo "[ OK ] IPv6/IPv4 firewall set"

+ 10 - 2
conf/scripts/route-up.d/30-vpnclient-set-server-ipv6-route

@@ -45,14 +45,22 @@ old_server_ip6=$(yunohost app setting vpnclient server_ip6)
 new_ip6_gw=$(ip -6 route | awk '/default via/ { print $3 }')
 new_wired_device=$(ip route | awk '/default via/ { print $5; }')
 ynh_server_names=$(grep -o -P '^\s*remote\s+\K([^\s]+)' /etc/openvpn/client.conf | sort | uniq)
-new_server_ip6=$(dig AAAA +short $ynh_server_names @127.0.0.1 | grep -v '\.$' | grep -v "timed out" | sort | uniq)
 
+# In case an ip has been provided in ovpn conf
+new_server_ip6=""
+new_server_ip4=""
 for i in $ynh_server_names; do
-  if [[ "${i}" =~ : ]] && [[ ! "$new_server_ip6" == *"${i}"* ]] ; then
+  if [[ "${i}" =~ : ]]; then
     new_server_ip6+=" ${i}"
+  elif [[ "${i}" =~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; then
+    new_server_ip4+=" ${i}"
   fi
 done
 
+if [[ -z "${new_server_ip6}" && -z "${new_server_ip4}" ]]; then
+  new_server_ip6=$(dig AAAA +short $ynh_server_names @127.0.0.1 | grep -v '\.$' | grep -v "timed out" | sort | uniq)
+fi
+
 echo "[INFO] Autodetected internet interface: ${new_wired_device} (last start: ${old_wired_device})"
 echo "[INFO] Autodetected IPv6 address for the VPN server: ${new_server_ip6} (last start: ${old_server_ip6})"
 

+ 1 - 6
conf/ynh-vpnclient

@@ -103,11 +103,6 @@ check_config() {
     critical "You need a CA server (you can add it through the web admin)"
   fi
 
-  if ! openssl x509 -in /etc/openvpn/keys/ca-server.crt -noout -checkend 0 >/dev/null; then
-    ca_server_cert_expired_date=$(openssl x509 -in /etc/openvpn/keys/ca-server.crt -noout -enddate | cut -d '=' -f 2)
-    critical "The CA server expired on $ca_server_cert_expired_date"
-  fi
-
   if [[ ! -e /etc/openvpn/keys/user.crt || ! -e /etc/openvpn/keys/user.key ]]; then
     if [[ -s /etc/openvpn/keys/credentials ]]; then
       login_user=$(sed -n 1p /etc/openvpn/keys/credentials)
@@ -211,7 +206,7 @@ case "$action" in
         critical "The VPN is up but debian.org cannot be reached, indicating that something is probably misconfigured/blocked."
       fi
     else
-      critical "[CRIT] IPv4 routes are misconfigured !?"
+      critical "IPv4 routes are misconfigured !?"
     fi
   ;;
 

+ 11 - 11
config_panel.toml

@@ -6,17 +6,17 @@ name = "Auto-configuration"
     [main.vpn]
     name = ""
     optional = false
-        
+
         [main.vpn.status]
         ask = "The status of your VPN is unknown."
         type = "alert"
         style = "info"
-        
+
         [main.vpn.service_enabled]
         ask = "Enable VPN"
         type = "boolean"
         help = "If disabled, the VPN service will not automatically be started at boot."
-        
+
         [main.vpn.doc]
         ask.en = "VPNclient only interfaces with *dedicated, public IP VPNs accepting inbound traffic*, preferably with an associated `.cube` (or `.ovpn/.conf`) configuration file. Checkout the [list of known compatible providers](https://yunohost.org/providers/vpn) for more info."
         ask.fr = "VPNclient est prévu pour fonctionner avec des *VPN dédiés et à IP publique qui acceptent le traffic entrant*, et de préférence avec un fichier de configuration `.cube` (ou `.ovpn/.conf`) associé. Consultez [la liste des fournisseurs connus et compatibles](https://yunohost.org/providers/vpn) pour plus d'infos."
@@ -62,13 +62,13 @@ name = "Auto-configuration"
         type = "file"
         bind = "/etc/openvpn/keys/ca-server.crt"
         visible = 'config_file && match(config_file,"^\s*ca\s") && ! match(config_file,"^\s*<ca>")'
-        
+
         [main.auth.crt_client]
         ask = "Update Client Certificate"
         type = "file"
         bind = "/etc/openvpn/keys/user.crt"
         visible = 'config_file && match(config_file,"^\s*cert\s") && ! match(config_file,"^\s*<cert>")'
-        
+
         [main.auth.crt_client_key]
         ask = "Update Client Key"
         type = "file"
@@ -76,7 +76,7 @@ name = "Auto-configuration"
         bind = "/etc/openvpn/keys/user.key"
         visible = 'config_file && match(config_file,"^\s*key\s") && ! match(config_file,"^\s*<key>")'
         redact = true
-        
+
         [main.auth.login_user]
         ask = "Username"
         type = "string"
@@ -84,12 +84,12 @@ name = "Auto-configuration"
         pattern.regexp = '^[a-zA-Z0-9_\-\\\.@]+$'
         pattern.error = "OpenVPN accept only alphabetic chars and -_\\.@"
         visible = 'config_file && match(config_file,"^\s*auth-user-pass\s")'
-        
+
         [main.auth.login_passphrase]
         ask = "Password"
         type = "password"
         visible = 'config_file && match(config_file,"^\s*auth-user-pass(\s.*)?$")'
-        
+
         [main.auth.crt_client_ta]
         ask = "TLS Auth shared secret"
         type = "file"
@@ -98,7 +98,7 @@ name = "Auto-configuration"
         bind = "/etc/openvpn/keys/user_ta.key"
         visible = 'config_file && match(config_file,"^\s*tls-auth\s") && ! match(config_file,"^\s*<tls-auth>")'
         redact = true
-        
+
 [advanced]
 name = "DNS & IPv6"
     [advanced.dns]
@@ -117,7 +117,7 @@ name = "DNS & IPv6"
         visible = "dns_method == 'custom'"
         pattern.regexp = "^([0-9.]{7,15}|[0-9a-fA-F:]+)$"
         pattern.error = "Not an ip"
-        
+
     [advanced.ipv6]
     name = "IPv6"
 
@@ -128,7 +128,7 @@ name = "DNS & IPv6"
         example = "2001:db8:42::"
         pattern.regexp = "^[0-9a-fA-F:]+$"
         pattern.error = "Please provide a valid IPv6 Prefix"
-        
+
         [advanced.ipv6.ip6_addr]
         ask = "IPv6"
         type = "string"

+ 1 - 1
manifest.toml

@@ -7,7 +7,7 @@ name = "VPN Client"
 description.en = "Tunnel the internet traffic through a VPN"
 description.fr = "Fait passer le trafic internet à travers un VPN"
 
-version = "2.2~ynh1"
+version = "2.2~ynh5"
 
 maintainers = []