From bf1ca8bcb9a773bc208b83cd9e7527e960db3985 Mon Sep 17 00:00:00 2001 From: "ljf (zamentur)" Date: Fri, 2 Oct 2020 19:27:04 +0200 Subject: [PATCH 01/31] [fix] Chromium net::ERR_HTTP2_PROTOCOL_ERROR 200 --- conf/nginx.conf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/conf/nginx.conf b/conf/nginx.conf index 4feb38f..cd91a43 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -13,8 +13,8 @@ location __PATH__/ { client_max_body_size __MAX_FILE_SIZE__M; if ($request_uri ~* ^/(img|css|font|js)/) { - more_set_headers Expires "Thu, 31 Dec 2037 23:55:55 GMT"; - more_set_headers Cache-Control "public, max-age=315360000"; + #more_set_headers Expires "Thu, 31 Dec 2037 23:55:55 GMT"; + #more_set_headers Cache-Control "public, max-age=315360000"; } proxy_pass http://127.0.0.1:__PORT____PATH__; From c0930e6caf6a2bc50f5719c5a335c1602ea8e7a1 Mon Sep 17 00:00:00 2001 From: "ljf (zamentur)" Date: Sat, 3 Oct 2020 18:03:42 +0200 Subject: [PATCH 02/31] [fix] Explain why those lines are commented --- conf/nginx.conf | 2 ++ 1 file changed, 2 insertions(+) diff --git a/conf/nginx.conf b/conf/nginx.conf index cd91a43..9520b19 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -13,6 +13,8 @@ location __PATH__/ { client_max_body_size __MAX_FILE_SIZE__M; if ($request_uri ~* ^/(img|css|font|js)/) { + # If uncommented, it triggers some net::ERR_HTTP2_PROTOCOL_ERROR + # with chromium #more_set_headers Expires "Thu, 31 Dec 2037 23:55:55 GMT"; #more_set_headers Cache-Control "public, max-age=315360000"; } From 278b5ca383b288a9fafb8de48673633880501caa Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 1 Nov 2020 18:24:02 +0100 Subject: [PATCH 03/31] Upgrade to 0.05.7 --- README.md | 10 +++------- README_fr.md | 11 +++++------ conf/app.src | 6 ++++-- issue_template.md | 6 +++--- manifest.json | 4 ++-- scripts/change_url | 16 ++++++++-------- scripts/install | 13 +++---------- scripts/remove | 4 ++-- scripts/restore | 4 ++-- scripts/upgrade | 4 ++-- 10 files changed, 34 insertions(+), 44 deletions(-) diff --git a/README.md b/README.md index 974b158..ffae519 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ The administrator of the Lufi instance you use will not be able to see what is i The encryption key part of the URL is a anchor (Cf. [Fragment Identifier](https://en.wikipedia.org/wiki/Fragment_identifier)), that means this part is only processed client-side and does not reach the server. :-) -**Shipped version:** 0.03.5 +**Shipped version:** 0.05.7 ## Screenshots @@ -28,7 +28,7 @@ The encryption key part of the URL is a anchor (Cf. [Fragment Identifier](https: ## Configuration -How to configure this app: a plain file at `/var/www/lufi/lufi.conf` with SSH. +* How to configure this app: a plain file at `/var/www/lufi/lufi.conf` with SSH. ## Documentation @@ -46,9 +46,6 @@ Can the app be used by multiple users? **Yes** * x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/lufi%20%28Apps%29.svg)](https://ci-apps.yunohost.org/ci/apps/lufi/) * ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/lufi%20%28Apps%29.svg)](https://ci-apps-arm.yunohost.org/ci/apps/lufi/) -**More info on the documentation page:** -https://yunohost.org/packaging_apps - ## Links * Report a bug: https://github.com/YunoHost-Apps/lufi_ynh/issues @@ -57,8 +54,7 @@ https://yunohost.org/packaging_apps --- -Developer info ----------------- +## Developer info Please send your pull request to the [testing branch](https://github.com/YunoHost-Apps/lufi_ynh/tree/testing). diff --git a/README_fr.md b/README_fr.md index 4ffbae5..6922ef9 100644 --- a/README_fr.md +++ b/README_fr.md @@ -11,11 +11,11 @@ Si vous n'avez pas YunoHost, consultez [le guide](https://yunohost.org/#/install ## Vue d'ensemble Il stocke vos fichiers et vous permet de les télécharger. -Est-ce tout? Non. Tous les fichiers sont chiffrés par le navigateur! L'administrateur de l'instance Lufi ne pourra pas voir quel est votre administrateur réseau ou votre FAI. +Est-ce tout ? Non. Tous les fichiers sont chiffrés par le navigateur ! L'administrateur de l'instance Lufi ne pourra pas voir quel est votre administrateur réseau ou votre FAI. La clé de déchiffrement est une ancre (voir [Fragment Identifier](https://en.wikipedia.org/wiki/Fragment_identifier)), ce qui signifie que cette partie n'est traitée que par le client et n'atteint pas le serveur. :-) -**Version incluse:** 0.03.5 +**Version incluse:** 0.05.7 ## Captures d'écran @@ -27,11 +27,11 @@ La clé de déchiffrement est une ancre (voir [Fragment Identifier](https://en.w ## Configuration -Comment configurer cette application: un fichier brut en SSH. +* Comment configurer cette application: un fichier brut `/var/www/lufi/lufi.conf` en SSH. ## Documentation - * Documentation officielle: https://framagit.org/luc/lufi/wikis/home + * Documentation officielle : https://framagit.org/luc/lufi/wikis/home ## Caractéristiques spécifiques YunoHost @@ -53,8 +53,7 @@ Comment configurer cette application: un fichier brut en SSH. --- -Informations pour les développeurs ----------------- +## Informations pour les développeurs Merci de faire vos pull request sur la [branche testing](https://github.com/YunoHost-Apps/lufi_ynh/tree/testing). diff --git a/conf/app.src b/conf/app.src index 3b1e0b7..91e43b2 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,6 +1,8 @@ -SOURCE_URL=https://framagit.org/fiat-tux/hat-softwares/lufi/-/archive/0.03.5/lufi-0.03.5.tar.gz -SOURCE_SUM=aeb4bb4e7b4d5a7a12a7b8a49578e98c4ef8b6cb606b266b4531767a6ea6debe +SOURCE_URL=https://framagit.org/fiat-tux/hat-softwares/lufi/-/archive/0.05.7/lufi-0.05.7.tar.gz +SOURCE_SUM=a1f60ce84584e642a19bec9aaccf764c8b704f2be4dcf1068535414054bf5326 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true SOURCE_FILENAME= + + diff --git a/issue_template.md b/issue_template.md index 79a0944..f49c8bf 100644 --- a/issue_template.md +++ b/issue_template.md @@ -7,7 +7,7 @@ about: Create a report to help us debug, it would be nice to fill the template a **How to post a meaningful bug report** 1. *Read this whole template first.* 2. *Determine if you are on the right place:* - - *If you were performing an action on the app from the webadmin or the CLI (install, update, backup, restore, change url...), you are on the right place!* + - *If you were performing an action on the app from the webadmin or the CLI (install, update, backup, restore, change_url...), you are on the right place!* - *Otherwise, the issue may be due to lufi itself. Refer to its documentation or repository for help.* - *If you have a doubt, post here, we will figure it out together.* 3. *Delete the italic comments as you write over them below, and remove this guide.* @@ -34,8 +34,8 @@ about: Create a report to help us debug, it would be nice to fill the template a - *If you used the webadmin, please perform the equivalent command from the CLI first.* - *If the error occurs in your browser, explain what you did:* 1. *Go to '...'* - 2. *Click on '....'* - 3. *Scroll down to '....'* + 2. *Click on '...'* + 3. *Scroll down to '...'* 4. *See error* **Expected behavior** diff --git a/manifest.json b/manifest.json index 707e8a3..299fe03 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Self hosting files and sharing anonymous application", "fr": "Application d'hébergement et de partage de fichiers anonyme" }, - "version": "0.03.5~ynh2", + "version": "0.05.7~ynh1", "url": "https://git.framasoft.org/luc/lufi", "license": "AGPL-3.0-or-later", "maintainer": { @@ -14,7 +14,7 @@ "email": "win10@tutanota.com, cyp@rouquin.me" }, "requirements": { - "yunohost": ">= 3.5" + "yunohost": ">= 3.8.1" }, "multi_instance": true, "services": [ diff --git a/scripts/change_url b/scripts/change_url index 9b72f3f..d228ada 100644 --- a/scripts/change_url +++ b/scripts/change_url @@ -41,7 +41,7 @@ max_file_size=$(ynh_app_setting_get --app=$app --key=max_file_size) #================================================= # BACKUP BEFORE UPGRADE THEN ACTIVE TRAP #================================================= -ynh_script_progression --message="Backing up the app before changing its url (may take a while)..." +ynh_script_progression --message="Backing up the app before changing its URL (may take a while)..." # Backup the current version of the app ynh_backup_before_upgrade @@ -83,23 +83,23 @@ ynh_systemd_action --service_name=$app --action="stop" --log_path="$final_path/l #================================================= # MODIFY URL IN NGINX CONF #================================================= -ynh_script_progression --message="Updating nginx web server configuration..." +ynh_script_progression --message="Updating NGINX web server configuration..." nginx_conf_path=/etc/nginx/conf.d/$old_domain.d/$app.conf -# Change the path in the nginx config file +# Change the path in the NGINX config file if [ $change_path -eq 1 ] then - # Make a backup of the original nginx config file if modified + # Make a backup of the original NGINX config file if modified ynh_backup_if_checksum_is_different --file="$nginx_conf_path" - # Set global variables for nginx helper + # Set global variables for NGINX helper domain="$old_domain" path_url="$new_path" - # Create a dedicated nginx config + # Create a dedicated NGINX config ynh_add_nginx_config max_file_size fi -# Change the domain for nginx +# Change the domain for NGINX if [ $change_domain -eq 1 ] then # Delete file checksum for the old conf file location @@ -170,7 +170,7 @@ ynh_systemd_action --service_name=$app --action="start" --log_path="$final_path/ #================================================= # RELOAD NGINX #================================================= -ynh_script_progression --message="Reloading nginx web server..." +ynh_script_progression --message="Reloading NGINX web server..." ynh_systemd_action --service_name=nginx --action=reload diff --git a/scripts/install b/scripts/install index 9680758..7a82166 100644 --- a/scripts/install +++ b/scripts/install @@ -74,13 +74,6 @@ ynh_script_progression --message="Configuring firewall..." port=$(ynh_find_port --port=8095) ynh_app_setting_set --app=$app --key=port --value=$port -# Optional: Expose this port publicly -# (N.B. : you only need to do this if the app actually needs to expose the port publicly. -# If you do this and the app doesn't actually need you are CREATING SECURITY HOLES IN THE SERVER !) - -# Open the port -# ynh_exec_warn_less yunohost firewall allow --no-upnp TCP $port - #================================================= # INSTALL DEPENDENCIES #================================================= @@ -116,9 +109,9 @@ ynh_setup_source --dest_dir="$final_path" #================================================= # NGINX CONFIGURATION #================================================= -ynh_script_progression --message="Configuring nginx web server..." +ynh_script_progression --message="Configuring NGINX web server..." -# Create a dedicated nginx config +# Create a dedicated NGINX config ynh_add_nginx_config max_file_size #================================================= @@ -239,7 +232,7 @@ fi #================================================= # RELOAD NGINX #================================================= -ynh_script_progression --message="Reloading nginx web server..." +ynh_script_progression --message="Reloading NGINX web server..." ynh_systemd_action --service_name=nginx --action=reload diff --git a/scripts/remove b/scripts/remove index 9a16cb2..72de306 100644 --- a/scripts/remove +++ b/scripts/remove @@ -70,9 +70,9 @@ ynh_secure_remove --file="$final_path" #================================================= # REMOVE NGINX CONFIGURATION #================================================= -ynh_script_progression --message="Removing nginx web server configuration..." +ynh_script_progression --message="Removing NGINX web server configuration..." -# Remove the dedicated nginx config +# Remove the dedicated NGINX config ynh_remove_nginx_config #================================================= diff --git a/scripts/restore b/scripts/restore index bc340ba..4b88ceb 100644 --- a/scripts/restore +++ b/scripts/restore @@ -49,7 +49,7 @@ test ! -d $final_path \ #================================================= # RESTORE THE NGINX CONFIGURATION #================================================= -ynh_script_progression --message="Restoring the nginx configuration..." +ynh_script_progression --message="Restoring NGINX configuration..." ynh_restore_file --origin_path="/etc/nginx/conf.d/$domain.d/$app.conf" @@ -139,7 +139,7 @@ ynh_restore_file --origin_path="/etc/logrotate.d/$app" #================================================= # RELOAD NGINX #================================================= -ynh_script_progression --message="Reloading nginx web server..." +ynh_script_progression --message="Reloading NGINX web server..." ynh_systemd_action --service_name=nginx --action=reload diff --git a/scripts/upgrade b/scripts/upgrade index aff997c..ec3e3b5 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -105,7 +105,7 @@ fi #================================================= # NGINX CONFIGURATION #================================================= -ynh_script_progression --message="Upgrading nginx web server configuration..." +ynh_script_progression --message="Upgrading NGINX web server configuration..." # Create a dedicated nginx config ynh_add_nginx_config max_file_size @@ -266,7 +266,7 @@ ynh_systemd_action --service_name=$app --action="restart" --log_path="$final_pat #================================================= # RELOAD NGINX #================================================= -ynh_script_progression --message="Reloading nginx web server..." +ynh_script_progression --message="Reloading NGINX web server..." ynh_systemd_action --service_name=nginx --action=reload From 25186f30d31e58e59c5481f80baf7c73e6a9f662 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Thu, 5 Nov 2020 09:53:03 +0100 Subject: [PATCH 04/31] Set upgrade in package_check --- README.md | 1 + README_fr.md | 1 + check_process | 12 +++--------- 3 files changed, 5 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index ffae519..8043dbd 100644 --- a/README.md +++ b/README.md @@ -33,6 +33,7 @@ The encryption key part of the URL is a anchor (Cf. [Fragment Identifier](https: ## Documentation * Official documentation: https://framagit.org/luc/lufi/wikis/home + * YunoHost documentation: https://yunohost.org/#/app_lufi ## YunoHost specific features diff --git a/README_fr.md b/README_fr.md index 6922ef9..7824094 100644 --- a/README_fr.md +++ b/README_fr.md @@ -32,6 +32,7 @@ La clé de déchiffrement est une ancre (voir [Fragment Identifier](https://en.w ## Documentation * Documentation officielle : https://framagit.org/luc/lufi/wikis/home + * Documentation YunoHost : https://yunohost.org/#/app_lufi_fr ## Caractéristiques spécifiques YunoHost diff --git a/check_process b/check_process index 6a2fb26..52c00de 100644 --- a/check_process +++ b/check_process @@ -14,21 +14,15 @@ setup_private=1 setup_public=1 upgrade=1 - # 0.01 - upgrade=1 from_commit=1d53901957efcf8861b10efc8d3f081cadd2ba9e # 0.03.5 - upgrade=1 from_commit=6e05053ee90370e659d16abd9dcd9220e9e497f5 + upgrade=1 from_commit=64a53051c3cd12840ca32b2fdaf0c3063e0158bf backup_restore=1 multi_instance=1 - # This test is no longer necessary since the version 2.7 (PR: https://github.com/YunoHost/yunohost/pull/304), you can still do it if your app could be installed with this version. - # incorrect_path=1 port_already_use=1 (8095) change_url=1 ;;; Levels # If the level 5 (Package linter) is forced to 1. Please add justifications here. Level 5=auto ;;; Upgrade options - ; commit=1d53901957efcf8861b10efc8d3f081cadd2ba9e - name=0.01 - ; commit=6e05053ee90370e659d16abd9dcd9220e9e497f5 - name=0.03.5 + ; commit=64a53051c3cd12840ca32b2fdaf0c3063e0158bf + name=Merge pull request #42 from YunoHost-Apps/testing From 3cadd2b9974a7b418586c658dac19ffd3d1caeac Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sat, 14 Nov 2020 08:31:09 +0100 Subject: [PATCH 05/31] Small typos --- manifest.json | 2 +- scripts/install | 4 ++-- scripts/remove | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/manifest.json b/manifest.json index 299fe03..3b79ccc 100644 --- a/manifest.json +++ b/manifest.json @@ -14,7 +14,7 @@ "email": "win10@tutanota.com, cyp@rouquin.me" }, "requirements": { - "yunohost": ">= 3.8.1" + "yunohost": ">= 4.0.0" }, "multi_instance": true, "services": [ diff --git a/scripts/install b/scripts/install index 7a82166..844d6ce 100644 --- a/scripts/install +++ b/scripts/install @@ -127,7 +127,7 @@ ynh_system_user_create --username=$app #================================================= # CONFIGURE LUFI #================================================= -ynh_script_progression --message="Configuring lufi..." +ynh_script_progression --message="Configuring $app..." config=${final_path}/lufi.conf cp ../conf/lufi.conf.template "$config" @@ -155,7 +155,7 @@ ynh_store_file_checksum --file="$config" #================================================= # INSTALL LUFI #================================================= -ynh_script_progression --message="Installing lufi..." +ynh_script_progression --message="Installing $app..." pushd $final_path carton install --deployment --without=sqlite --without=mysql --without=htpasswd --without=test diff --git a/scripts/remove b/scripts/remove index 72de306..7640fa9 100644 --- a/scripts/remove +++ b/scripts/remove @@ -28,7 +28,7 @@ final_path=$(ynh_app_setting_get --app=$app --key=final_path) # REMOVE SERVICE INTEGRATION IN YUNOHOST #================================================= -# Remove the service from the list of services known by Yunohost (added from `yunohost service add`) +# Remove the service from the list of services known by YunoHost (added from `yunohost service add`) if ynh_exec_warn_less yunohost service status $app >/dev/null then ynh_script_progression --message="Removing $app service..." From 2e1695c9f4de31b5457786c3ac8d3230863649e4 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sat, 14 Nov 2020 15:00:47 +0100 Subject: [PATCH 06/31] Update nginx.conf --- conf/nginx.conf | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/conf/nginx.conf b/conf/nginx.conf index 9520b19..58a3d19 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -5,23 +5,22 @@ location __PATH__/ { rewrite ^ https://$server_name$request_uri? permanent; } - # This is important for user's privacy ! + # This is important for user's privacy! access_log off; error_log /var/log/nginx/lufi.error.log; - # This is important ! Make it OK with your Lutim configuration + # This is important! Make it OK with your Lutim configuration client_max_body_size __MAX_FILE_SIZE__M; if ($request_uri ~* ^/(img|css|font|js)/) { - # If uncommented, it triggers some net::ERR_HTTP2_PROTOCOL_ERROR - # with chromium + # If uncommented, it triggers some net::ERR_HTTP2_PROTOCOL_ERROR with chromium #more_set_headers Expires "Thu, 31 Dec 2037 23:55:55 GMT"; #more_set_headers Cache-Control "public, max-age=315360000"; } proxy_pass http://127.0.0.1:__PORT____PATH__; - # Really important ! Lufi uses WebSocket, it won't work without this + # Really important! Lufi uses WebSocket, it won't work without this proxy_set_header Upgrade $http_upgrade ; proxy_set_header Connection "upgrade" ; From 56c6ce70c5453d9e6db0c83ea275c2bd1ff70e2d Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Mon, 16 Nov 2020 16:16:51 +0100 Subject: [PATCH 07/31] Use carton from debian's repositories to avoid inconsistencies if lutim is installed --- conf/cron_lufi | 8 ++++---- conf/systemd.service | 6 +++--- scripts/_common.sh | 2 +- scripts/install | 3 --- scripts/restore | 3 --- 5 files changed, 8 insertions(+), 14 deletions(-) diff --git a/conf/cron_lufi b/conf/cron_lufi index 3da3cc4..adb3f63 100644 --- a/conf/cron_lufi +++ b/conf/cron_lufi @@ -1,11 +1,11 @@ # Génération des statistiques. Tous les jours, à 5h. -0 5 * * * __USER__ cd "__FINALPATH__" && /usr/local/bin/carton exec script/lufi cron stats +0 5 * * * __USER__ cd "__FINALPATH__" && /usr/bin/carton exec script/lufi cron stats # Suppression des adresses IP obsolètes. Tous les jours, à 6h. -0 6 * * * __USER__ cd "__FINALPATH__" && /usr/local/bin/carton exec script/lufi cron cleanbdd +0 6 * * * __USER__ cd "__FINALPATH__" && /usr/bin/carton exec script/lufi cron cleanbdd # Suppression des images dont le délai a expiré. Tous les jours, à 6h. -0 6 * * * __USER__ cd "__FINALPATH__" && /usr/local/bin/carton exec script/lufi cron cleanfiles +0 6 * * * __USER__ cd "__FINALPATH__" && /usr/bin/carton exec script/lufi cron cleanfiles # Vérification de l'occupation du dossier des images. Tous les jours, à 7h. -0 7 * * * __USER__ cd "__FINALPATH__" && /usr/local/bin/carton exec script/lufi cron watch +0 7 * * * __USER__ cd "__FINALPATH__" && /usr/bin/carton exec script/lufi cron watch diff --git a/conf/systemd.service b/conf/systemd.service index a9397f3..560d102 100644 --- a/conf/systemd.service +++ b/conf/systemd.service @@ -10,9 +10,9 @@ User=__APP__ Group=__APP__ WorkingDirectory=__FINALPATH__ PIDFile=__FINALPATH__/script/hypnotoad.pid -ExecStart=/usr/local/bin/carton exec hypnotoad script/lufi -ExecStop=/usr/local/bin/carton exec hypnotoad -s script/lufi -ExecReload=/usr/local/bin/carton exec hypnotoad script/lufi +ExecStart=/usr/bin/carton exec hypnotoad script/lufi +ExecStop=/usr/bin/carton exec hypnotoad -s script/lufi +ExecReload=/usr/bin/carton exec hypnotoad script/lufi [Install] WantedBy=multi-user.target diff --git a/scripts/_common.sh b/scripts/_common.sh index 6042ab2..9977374 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -5,7 +5,7 @@ #================================================= # dependencies used by the app -pkg_dependencies="build-essential libssl-dev libio-socket-ssl-perl liblwp-protocol-https-perl libpq-dev postgresql cpanminus" +pkg_dependencies="build-essential libssl-dev libio-socket-ssl-perl liblwp-protocol-https-perl libpq-dev postgresql carton" #================================================= # PERSONAL HELPERS diff --git a/scripts/install b/scripts/install index 9680758..623258b 100644 --- a/scripts/install +++ b/scripts/install @@ -88,9 +88,6 @@ ynh_script_progression --message="Installing dependencies..." ynh_install_app_dependencies $pkg_dependencies -# Install Carton -echo yes | cpanm Carton - #================================================= # CREATE A POSTGRESQL DATABASE #================================================= diff --git a/scripts/restore b/scripts/restore index bc340ba..72a4a6b 100644 --- a/scripts/restore +++ b/scripts/restore @@ -86,9 +86,6 @@ ynh_script_progression --message="Reinstalling dependencies..." # Define and install dependencies ynh_install_app_dependencies $pkg_dependencies -# Install Carton -echo yes | cpanm Carton - #================================================= # RESTORE THE POSTGRESQL DATABASE #================================================= From a802d1acc8610ec0cec2a48e1a9b61405b73808e Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Mon, 16 Nov 2020 16:44:02 +0100 Subject: [PATCH 08/31] Bump version requirement to 4.0 because carton from Debian's repo before buster isn't great according to framasky --- manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifest.json b/manifest.json index 707e8a3..2cfac83 100644 --- a/manifest.json +++ b/manifest.json @@ -14,7 +14,7 @@ "email": "win10@tutanota.com, cyp@rouquin.me" }, "requirements": { - "yunohost": ">= 3.5" + "yunohost": ">= 4.0" }, "multi_instance": true, "services": [ From 84f9f5960b8d14b241010cdf7ef970f9c99161de Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Fri, 27 Nov 2020 05:31:55 +0100 Subject: [PATCH 09/31] Fix more_set_headers syntax + Expires is irrelevant if Cache-Control is used --- conf/nginx.conf | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/conf/nginx.conf b/conf/nginx.conf index 58a3d19..215fb2d 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -13,9 +13,7 @@ location __PATH__/ { client_max_body_size __MAX_FILE_SIZE__M; if ($request_uri ~* ^/(img|css|font|js)/) { - # If uncommented, it triggers some net::ERR_HTTP2_PROTOCOL_ERROR with chromium - #more_set_headers Expires "Thu, 31 Dec 2037 23:55:55 GMT"; - #more_set_headers Cache-Control "public, max-age=315360000"; + more_set_headers "Cache-Control: public, max-age=315360000"; } proxy_pass http://127.0.0.1:__PORT____PATH__; From c9c5632eaf0e8a0bf447e004f43dfdea64b07a82 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Fri, 27 Nov 2020 09:07:07 +0100 Subject: [PATCH 10/31] Upgrade to 0.05.9 --- README.md | 2 +- README_fr.md | 2 +- conf/app.src | 6 ++---- manifest.json | 2 +- 4 files changed, 5 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 8043dbd..7fd3060 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ The administrator of the Lufi instance you use will not be able to see what is i The encryption key part of the URL is a anchor (Cf. [Fragment Identifier](https://en.wikipedia.org/wiki/Fragment_identifier)), that means this part is only processed client-side and does not reach the server. :-) -**Shipped version:** 0.05.7 +**Shipped version:** 0.05.9 ## Screenshots diff --git a/README_fr.md b/README_fr.md index 7824094..0e6a695 100644 --- a/README_fr.md +++ b/README_fr.md @@ -15,7 +15,7 @@ Est-ce tout ? Non. Tous les fichiers sont chiffrés par le navigateur ! L'admini La clé de déchiffrement est une ancre (voir [Fragment Identifier](https://en.wikipedia.org/wiki/Fragment_identifier)), ce qui signifie que cette partie n'est traitée que par le client et n'atteint pas le serveur. :-) -**Version incluse:** 0.05.7 +**Version incluse:** 0.05.9 ## Captures d'écran diff --git a/conf/app.src b/conf/app.src index 91e43b2..6b8477c 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,8 +1,6 @@ -SOURCE_URL=https://framagit.org/fiat-tux/hat-softwares/lufi/-/archive/0.05.7/lufi-0.05.7.tar.gz -SOURCE_SUM=a1f60ce84584e642a19bec9aaccf764c8b704f2be4dcf1068535414054bf5326 +SOURCE_URL=https://framagit.org/fiat-tux/hat-softwares/lufi/-/archive/0.05.9/lufi-0.05.9.tar.gz +SOURCE_SUM=96712861334c7b1bad9f64b4a07f1f2e8d57cd5ad462881b003c3b329da00229 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true SOURCE_FILENAME= - - diff --git a/manifest.json b/manifest.json index 3b79ccc..a87ffcc 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Self hosting files and sharing anonymous application", "fr": "Application d'hébergement et de partage de fichiers anonyme" }, - "version": "0.05.7~ynh1", + "version": "0.05.9~ynh1", "url": "https://git.framasoft.org/luc/lufi", "license": "AGPL-3.0-or-later", "maintainer": { From 3bf2e20501aefe6c1faf0fbb92aca4bfd27170ad Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 13 Dec 2020 21:16:52 +0100 Subject: [PATCH 11/31] Fix linter warings --- check_process | 3 --- scripts/backup | 1 - scripts/install | 5 +---- scripts/restore | 4 ++-- scripts/upgrade | 2 +- 5 files changed, 4 insertions(+), 11 deletions(-) diff --git a/check_process b/check_process index 52c00de..6dcc829 100644 --- a/check_process +++ b/check_process @@ -20,9 +20,6 @@ multi_instance=1 port_already_use=1 (8095) change_url=1 -;;; Levels - # If the level 5 (Package linter) is forced to 1. Please add justifications here. - Level 5=auto ;;; Upgrade options ; commit=64a53051c3cd12840ca32b2fdaf0c3063e0158bf name=Merge pull request #42 from YunoHost-Apps/testing diff --git a/scripts/backup b/scripts/backup index b8decc0..111d116 100644 --- a/scripts/backup +++ b/scripts/backup @@ -34,7 +34,6 @@ db_name=$(ynh_app_setting_get --app=$app --key=db_name) #================================================= # DECLARE DATA AND CONF FILES TO BACKUP #================================================= - ynh_print_info --message="Declaring files to be backed up..." #================================================= diff --git a/scripts/install b/scripts/install index 026e097..ba5f63a 100644 --- a/scripts/install +++ b/scripts/install @@ -39,9 +39,6 @@ ynh_script_progression --message="Validating installation parameters..." final_path=/var/www/$app test ! -e "$final_path" || ynh_die --message="This path already contains a folder" -# Normalize the url path syntax -path_url=$(ynh_normalize_url_path --path_url=$path_url) - # Check if max_file_size is a number if ! [[ $max_file_size =~ "^[\-0-9]+$" ]] && [ $max_file_size -lt 0 ]; then ynh_die --message="Max file must be a number positive or zero" @@ -199,7 +196,7 @@ ynh_use_logrotate #================================================= ynh_script_progression --message="Integrating service in YunoHost..." -yunohost service add $app --description "Lufi service" --log "$final_path/log/production.log" +yunohost service add $app --description="Lufi service" --log="$final_path/log/production.log" #================================================= # START SYSTEMD SERVICE diff --git a/scripts/restore b/scripts/restore index 7bb349b..50f8303 100644 --- a/scripts/restore +++ b/scripts/restore @@ -101,14 +101,14 @@ ynh_psql_execute_file_as_root --file="./db.sql" --database="$db_name" ynh_script_progression --message="Restoring the systemd configuration..." ynh_restore_file --origin_path="/etc/systemd/system/$app.service" -systemctl enable $app.service +systemctl enable $app.service --quiet #================================================= # INTEGRATE SERVICE IN YUNOHOST #================================================= ynh_script_progression --message="Integrating service in YunoHost..." -yunohost service add $app --description "lufi service" --log "$final_path/log/production.log" +yunohost service add $app --description="Lufi service" --log="$final_path/log/production.log" #================================================= # START SYSTEMD SERVICE diff --git a/scripts/upgrade b/scripts/upgrade index ec3e3b5..959aa2b 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -211,7 +211,7 @@ chmod +x $final_path/script/lufi #================================================= ynh_script_progression --message="Storing the config file checksum..." -yunohost service add $app --description "lufi service" --log "$final_path/log/production.log" +yunohost service add $app --description="Lufi service" --log="$final_path/log/production.log" #================================================= # SETUP LOGROTATE From af53b8f5ad41bc80ce6677f2eb50bb5577a2e40c Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Fri, 18 Dec 2020 17:23:36 +0100 Subject: [PATCH 12/31] Small fixes --- README.md | 2 +- README_fr.md | 2 +- issue_template.md | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 7fd3060..7fe3e88 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ # Lufi for YunoHost [![Integration level](https://dash.yunohost.org/integration/lufi.svg)](https://dash.yunohost.org/appci/app/lufi) ![](https://ci-apps.yunohost.org/ci/badges/lufi.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/lufi.maintain.svg) -[![Install Lufi with YunoHost](https://install-app.yunohost.org/install-with-yunohost.png)](https://install-app.yunohost.org/?app=lufi) +[![Install Lufi with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=lufi) *[Lire ce readme en français.](./README_fr.md)* diff --git a/README_fr.md b/README_fr.md index 0e6a695..c234b0a 100644 --- a/README_fr.md +++ b/README_fr.md @@ -1,7 +1,7 @@ # Lufi pour YunoHost [![Niveau d'intégration](https://dash.yunohost.org/integration/lufi.svg)](https://dash.yunohost.org/appci/app/lufi) ![](https://ci-apps.yunohost.org/ci/badges/lufi.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/lufi.maintain.svg) -[![Installer Lufi avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.png)](https://install-app.yunohost.org/?app=lufi) +[![Installer Lufi avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=lufi) *[Read this readme in english.](./README.md)* diff --git a/issue_template.md b/issue_template.md index f49c8bf..5b839b9 100644 --- a/issue_template.md +++ b/issue_template.md @@ -8,7 +8,7 @@ about: Create a report to help us debug, it would be nice to fill the template a 1. *Read this whole template first.* 2. *Determine if you are on the right place:* - *If you were performing an action on the app from the webadmin or the CLI (install, update, backup, restore, change_url...), you are on the right place!* - - *Otherwise, the issue may be due to lufi itself. Refer to its documentation or repository for help.* + - *Otherwise, the issue may be due to Lufi itself. Refer to its documentation or repository for help.* - *If you have a doubt, post here, we will figure it out together.* 3. *Delete the italic comments as you write over them below, and remove this guide.* --- @@ -20,7 +20,7 @@ about: Create a report to help us debug, it would be nice to fill the template a - Hardware: *VPS bought online / Old laptop or computer / Raspberry Pi at home / Internet Cube with VPN / Other ARM board / ...* - YunoHost version: x.x.x - I have access to my server: *Through SSH | through the webadmin | direct access via keyboard / screen | ...* -- Are you in a special context or did you perform some particular tweaking on your YunoHost instance ?: *no / yes* +- Are you in a special context or did you perform some particular tweaking on your YunoHost instance?: *no / yes* - If yes, please explain: - Using, or trying to install package version/branch: - If upgrading, current package version: *can be found in the admin, or with `yunohost app info $app_id`* From 808bd06ecfc0f4753a36e1b2ee67bd5cbdb6c27b Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Sat, 9 Jan 2021 22:26:24 +0100 Subject: [PATCH 13/31] Finding an available port --- scripts/install | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/install b/scripts/install index ba5f63a..4f66aeb 100644 --- a/scripts/install +++ b/scripts/install @@ -65,7 +65,7 @@ ynh_app_setting_set --app=$app --key=secret --value=$secret #================================================= # FIND AND OPEN A PORT #================================================= -ynh_script_progression --message="Configuring firewall..." +ynh_script_progression --message="Finding an available port..." # Find an available port port=$(ynh_find_port --port=8095) From bbea87683bf6aace79dbb3c35287de21cede3d73 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Thu, 21 Jan 2021 15:18:37 +0100 Subject: [PATCH 14/31] Update manifest.json --- manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifest.json b/manifest.json index a87ffcc..75b11b1 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Self hosting files and sharing anonymous application", "fr": "Application d'hébergement et de partage de fichiers anonyme" }, - "version": "0.05.9~ynh1", + "version": "0.05.9~ynh2", "url": "https://git.framasoft.org/luc/lufi", "license": "AGPL-3.0-or-later", "maintainer": { From ff836bf9dfa9d879f64531233a73864a8c134dbd Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sat, 23 Jan 2021 09:26:17 +0100 Subject: [PATCH 15/31] upgrade to 0.05.12 --- README.md | 2 +- README_fr.md | 2 +- conf/app.src | 4 ++-- manifest.json | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 7fe3e88..6dd478c 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ The administrator of the Lufi instance you use will not be able to see what is i The encryption key part of the URL is a anchor (Cf. [Fragment Identifier](https://en.wikipedia.org/wiki/Fragment_identifier)), that means this part is only processed client-side and does not reach the server. :-) -**Shipped version:** 0.05.9 +**Shipped version:** 0.05.12 ## Screenshots diff --git a/README_fr.md b/README_fr.md index c234b0a..30b3733 100644 --- a/README_fr.md +++ b/README_fr.md @@ -15,7 +15,7 @@ Est-ce tout ? Non. Tous les fichiers sont chiffrés par le navigateur ! L'admini La clé de déchiffrement est une ancre (voir [Fragment Identifier](https://en.wikipedia.org/wiki/Fragment_identifier)), ce qui signifie que cette partie n'est traitée que par le client et n'atteint pas le serveur. :-) -**Version incluse:** 0.05.9 +**Version incluse:** 0.05.12 ## Captures d'écran diff --git a/conf/app.src b/conf/app.src index 6b8477c..06c8bdc 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://framagit.org/fiat-tux/hat-softwares/lufi/-/archive/0.05.9/lufi-0.05.9.tar.gz -SOURCE_SUM=96712861334c7b1bad9f64b4a07f1f2e8d57cd5ad462881b003c3b329da00229 +SOURCE_URL=https://framagit.org/fiat-tux/hat-softwares/lufi/-/archive/0.05.12/lufi-0.05.12.tar.gz +SOURCE_SUM=e51fac06a79e4b38527a9a5c9d8caddbad75f26d7e2b95f81543065969f0679e SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true diff --git a/manifest.json b/manifest.json index 75b11b1..e67bcd6 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Self hosting files and sharing anonymous application", "fr": "Application d'hébergement et de partage de fichiers anonyme" }, - "version": "0.05.9~ynh2", + "version": "0.05.12~ynh1", "url": "https://git.framasoft.org/luc/lufi", "license": "AGPL-3.0-or-later", "maintainer": { From 3a8bf8fa816e284912b933dd077a9fc66fa69ada Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sat, 23 Jan 2021 09:30:37 +0100 Subject: [PATCH 16/31] Update check_process --- check_process | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/check_process b/check_process index 6dcc829..ba56559 100644 --- a/check_process +++ b/check_process @@ -15,11 +15,11 @@ setup_public=1 upgrade=1 # 0.03.5 - upgrade=1 from_commit=64a53051c3cd12840ca32b2fdaf0c3063e0158bf + upgrade=1 from_commit=23e84578464b1fa09f79c98b6a9b5f19bbcf83f3 backup_restore=1 multi_instance=1 port_already_use=1 (8095) change_url=1 ;;; Upgrade options - ; commit=64a53051c3cd12840ca32b2fdaf0c3063e0158bf - name=Merge pull request #42 from YunoHost-Apps/testing + ; commit=23e84578464b1fa09f79c98b6a9b5f19bbcf83f3 + name=Merge pull request #35 from YunoHost-Apps/fix-buster From 3b9135ec6d3baca43f04b05e708534190b049828 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sat, 23 Jan 2021 17:06:02 +0100 Subject: [PATCH 17/31] silence PostgreSQL --- scripts/install | 2 +- scripts/restore | 2 +- scripts/upgrade | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/install b/scripts/install index 4f66aeb..1400b24 100644 --- a/scripts/install +++ b/scripts/install @@ -76,7 +76,7 @@ ynh_app_setting_set --app=$app --key=port --value=$port #================================================= ynh_script_progression --message="Installing dependencies..." -ynh_install_app_dependencies $pkg_dependencies +ynh_exec_warn_less ynh_install_app_dependencies $pkg_dependencies #================================================= # CREATE A POSTGRESQL DATABASE diff --git a/scripts/restore b/scripts/restore index 50f8303..8790bf1 100644 --- a/scripts/restore +++ b/scripts/restore @@ -84,7 +84,7 @@ chown -R $app:$app $final_path ynh_script_progression --message="Reinstalling dependencies..." # Define and install dependencies -ynh_install_app_dependencies $pkg_dependencies +ynh_exec_warn_less ynh_install_app_dependencies $pkg_dependencies #================================================= # RESTORE THE POSTGRESQL DATABASE diff --git a/scripts/upgrade b/scripts/upgrade index 959aa2b..69d6b20 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -115,7 +115,7 @@ ynh_add_nginx_config max_file_size #================================================= ynh_script_progression --message="Upgrading dependencies..." -ynh_install_app_dependencies $pkg_dependencies +ynh_exec_warn_less ynh_install_app_dependencies $pkg_dependencies #================================================= # CREATE DEDICATED USER From 067b75c53e17503503de33df15270cf5d594ce55 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Sat, 20 Mar 2021 15:33:35 +0100 Subject: [PATCH 18/31] Upgrade to 0.05.13 (#55) --- README.md | 4 ++-- README_fr.md | 4 ++-- check_process | 3 +-- conf/app.src | 4 ++-- manifest.json | 16 ++-------------- pull_request_template.md | 4 +--- scripts/install | 15 +++++++-------- scripts/upgrade | 20 ++++++++++---------- 8 files changed, 27 insertions(+), 43 deletions(-) diff --git a/README.md b/README.md index 6dd478c..908b417 100644 --- a/README.md +++ b/README.md @@ -16,7 +16,7 @@ The administrator of the Lufi instance you use will not be able to see what is i The encryption key part of the URL is a anchor (Cf. [Fragment Identifier](https://en.wikipedia.org/wiki/Fragment_identifier)), that means this part is only processed client-side and does not reach the server. :-) -**Shipped version:** 0.05.12 +**Shipped version:** 0.05.13 ## Screenshots @@ -33,7 +33,7 @@ The encryption key part of the URL is a anchor (Cf. [Fragment Identifier](https: ## Documentation * Official documentation: https://framagit.org/luc/lufi/wikis/home - * YunoHost documentation: https://yunohost.org/#/app_lufi + * YunoHost documentation: https://yunohost.org/en/app_lufi ## YunoHost specific features diff --git a/README_fr.md b/README_fr.md index 30b3733..eea48f0 100644 --- a/README_fr.md +++ b/README_fr.md @@ -15,7 +15,7 @@ Est-ce tout ? Non. Tous les fichiers sont chiffrés par le navigateur ! L'admini La clé de déchiffrement est une ancre (voir [Fragment Identifier](https://en.wikipedia.org/wiki/Fragment_identifier)), ce qui signifie que cette partie n'est traitée que par le client et n'atteint pas le serveur. :-) -**Version incluse:** 0.05.12 +**Version incluse:** 0.05.13 ## Captures d'écran @@ -32,7 +32,7 @@ La clé de déchiffrement est une ancre (voir [Fragment Identifier](https://en.w ## Documentation * Documentation officielle : https://framagit.org/luc/lufi/wikis/home - * Documentation YunoHost : https://yunohost.org/#/app_lufi_fr + * Documentation YunoHost : https://yunohost.org/fr/app_lufi ## Caractéristiques spécifiques YunoHost diff --git a/check_process b/check_process index ba56559..1986361 100644 --- a/check_process +++ b/check_process @@ -4,7 +4,7 @@ domain="domain.tld" (DOMAIN) path="/path" (PATH) max_file_size=100 - is_public="Yes" (PUBLIC|public=Yes|private=No) + is_public=1 (PUBLIC|public=1|private=0) admin="john" (USER) ; Checks pkg_linter=1 @@ -18,7 +18,6 @@ upgrade=1 from_commit=23e84578464b1fa09f79c98b6a9b5f19bbcf83f3 backup_restore=1 multi_instance=1 - port_already_use=1 (8095) change_url=1 ;;; Upgrade options ; commit=23e84578464b1fa09f79c98b6a9b5f19bbcf83f3 diff --git a/conf/app.src b/conf/app.src index 06c8bdc..f6e8c70 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://framagit.org/fiat-tux/hat-softwares/lufi/-/archive/0.05.12/lufi-0.05.12.tar.gz -SOURCE_SUM=e51fac06a79e4b38527a9a5c9d8caddbad75f26d7e2b95f81543065969f0679e +SOURCE_URL=https://framagit.org/fiat-tux/hat-softwares/lufi/-/archive/0.05.13/lufi-0.05.13.tar.gz +SOURCE_SUM=c43c19c9901bb4b0d103980a61c3b1d9458a54f23b0b1c2b42c9706073df4d5a SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true diff --git a/manifest.json b/manifest.json index e67bcd6..f82f919 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Self hosting files and sharing anonymous application", "fr": "Application d'hébergement et de partage de fichiers anonyme" }, - "version": "0.05.12~ynh1", + "version": "0.05.13~ynh1", "url": "https://git.framasoft.org/luc/lufi", "license": "AGPL-3.0-or-later", "maintainer": { @@ -14,7 +14,7 @@ "email": "win10@tutanota.com, cyp@rouquin.me" }, "requirements": { - "yunohost": ">= 4.0.0" + "yunohost": ">= 4.1.7" }, "multi_instance": true, "services": [ @@ -25,19 +25,11 @@ { "name": "domain", "type": "domain", - "ask": { - "en": "Choose a domain name for Lufi", - "fr": "Choisissez un nom de domaine pour Lufi" - }, "example": "domain.org" }, { "name": "path", "type": "path", - "ask": { - "en": "Choose a path for Lufi", - "fr": "Choisissez un chemin pour Lufi" - }, "example": "/lufi", "default": "/lufi" }, @@ -54,10 +46,6 @@ { "name": "is_public", "type": "boolean", - "ask": { - "en": "Is it a public application?", - "fr": "Est-ce une application publique ?" - }, "default": true } ] diff --git a/pull_request_template.md b/pull_request_template.md index 93994e7..6c28fc5 100644 --- a/pull_request_template.md +++ b/pull_request_template.md @@ -13,6 +13,4 @@ ## Package_check results --- -*If you have access to [App Continuous Integration for packagers](https://yunohost.org/#/packaging_apps_ci) you can provide a link to the package_check results like below, replacing '-NUM-' in this link by the PR number and USERNAME by your username on the ci-apps-dev. Or you provide a screenshot or a pastebin of the results* - -[![Build Status](https://ci-apps-dev.yunohost.org/jenkins/job/lufi_ynh%20PR-NUM-%20(USERNAME)/badge/icon)](https://ci-apps-dev.yunohost.org/jenkins/job/lufi_ynh%20PR-NUM-%20(USERNAME)/) +* An automatic package_check will be launch at https://ci-apps-dev.yunohost.org/, when you add a specific comment to your Pull Request: "!testme", "!gogogadgetoci" or "By the power of systemd, I invoke The Great App CI to test this Pull Request!"* diff --git a/scripts/install b/scripts/install index 1400b24..bea93a0 100644 --- a/scripts/install +++ b/scripts/install @@ -44,8 +44,6 @@ if ! [[ $max_file_size =~ "^[\-0-9]+$" ]] && [ $max_file_size -lt 0 ]; then ynh_die --message="Max file must be a number positive or zero" fi -# Check web path availability -ynh_webpath_available --domain=$domain --path_url=$path_url # Register (book) web path ynh_webpath_register --app=$app --domain=$domain --path_url=$path_url @@ -56,7 +54,6 @@ ynh_script_progression --message="Storing installation settings..." ynh_app_setting_set --app=$app --key=domain --value=$domain ynh_app_setting_set --app=$app --key=path --value=$path_url -ynh_app_setting_set --app=$app --key=is_public --value=$is_public ynh_app_setting_set --app=$app --key=max_file_size --value=$max_file_size ynh_app_setting_set --app=$app --key=secret --value=$secret @@ -160,9 +157,10 @@ popd #================================================= ynh_script_progression --message="Setuping a cron..." -cp ../conf/cron_lufi /etc/cron.d/$app -ynh_replace_string --match_string="__FINALPATH__" --replace_string="$final_path/" --target_file="/etc/cron.d/$app" -ynh_replace_string --match_string="__USER__" --replace_string="$app" --target_file="/etc/cron.d/$app" +# cp ../conf/cron_lufi /etc/cron.d/$app +# ynh_replace_string --match_string="__FINALPATH__" --replace_string="$final_path/" --target_file="/etc/cron.d/$app" +# ynh_replace_string --match_string="__USER__" --replace_string="$app" --target_file="/etc/cron.d/$app" +ynh_add_config --template="../conf/cron_lufi" --destination="/etc/cron.d/$app" chmod +x $final_path/script/lufi #================================================= @@ -209,9 +207,10 @@ ynh_systemd_action --service_name=$app --action="start" --line_match="Creating p #================================================= # SETUP SSOWAT #================================================= -ynh_script_progression --message="Configuring SSOwat..." +ynh_script_progression --message="Configuring permissions..." + +ynh_permission_update --permission="main" --add="visitors" -ynh_app_setting_set --app=$app --key=unprotected_uris --value="/" if [ $is_public -eq 0 ] then if [ "$path_url" == "/" ]; then diff --git a/scripts/upgrade b/scripts/upgrade index 69d6b20..64d2333 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -39,15 +39,6 @@ upgrade_type=$(ynh_check_app_version_changed) #================================================= ynh_script_progression --message="Ensuring downward compatibility..." -# Fix is_public as a boolean value -if [ "$is_public" = "Yes" ]; then - ynh_app_setting_set --app=$app --key=is_public --value=1 - is_public=1 -elif [ "$is_public" = "No" ]; then - ynh_app_setting_set --app=$app --key=is_public --value=0 - is_public=0 -fi - # If final_path doesn't exist, create it if [ -z "$final_path" ]; then final_path=/var/www/$app @@ -66,6 +57,14 @@ if [ -z "$max_file_size" ]; then ynh_app_setting_set --app=$app --key=max_file_size --value=$max_file_size fi +# Make app public if necessary +if [ $is_public -eq 1 ] +then + # Everyone can access the app. + # The "main" permission is automatically created before the install script. + ynh_permission_update --permission="main" --add="visitors" +fi + #================================================= # BACKUP BEFORE UPGRADE THEN ACTIVE TRAP #================================================= @@ -244,7 +243,8 @@ chown -R $app: $final_path #================================================= ynh_script_progression --message="Upgrading SSOwat configuration..." -ynh_app_setting_set --app=$app --key=unprotected_uris --value="/" +ynh_permission_update --permission="main" --add="visitors" + if [ $is_public -eq 0 ] then if [ "$path_url" == "/" ]; then From 0e61164948b11316d96401a52f7522f5c9184599 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 21 Mar 2021 09:19:14 +0100 Subject: [PATCH 19/31] Update install --- scripts/install | 1 + 1 file changed, 1 insertion(+) diff --git a/scripts/install b/scripts/install index bea93a0..b3ae194 100644 --- a/scripts/install +++ b/scripts/install @@ -54,6 +54,7 @@ ynh_script_progression --message="Storing installation settings..." ynh_app_setting_set --app=$app --key=domain --value=$domain ynh_app_setting_set --app=$app --key=path --value=$path_url +ynh_app_setting_set --app=$app --key=is_public --value=$is_public ynh_app_setting_set --app=$app --key=max_file_size --value=$max_file_size ynh_app_setting_set --app=$app --key=secret --value=$secret From 57c3245a64c8308e2184cb46f3f878ba99fd32bc Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 21 Mar 2021 09:20:17 +0100 Subject: [PATCH 20/31] Update upgrade --- scripts/upgrade | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/scripts/upgrade b/scripts/upgrade index 64d2333..493011e 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -57,12 +57,11 @@ if [ -z "$max_file_size" ]; then ynh_app_setting_set --app=$app --key=max_file_size --value=$max_file_size fi -# Make app public if necessary -if [ $is_public -eq 1 ] -then - # Everyone can access the app. - # The "main" permission is automatically created before the install script. - ynh_permission_update --permission="main" --add="visitors" +# Cleaning legacy permissions +if ynh_legacy_permissions_exists; then + ynh_legacy_permissions_delete_all + + ynh_app_setting_delete --app=$app --key=is_public fi #================================================= From 99cd96e7743df0f0d0d4ec975dc1376844496df8 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 21 Mar 2021 09:21:20 +0100 Subject: [PATCH 21/31] Fix permissions --- scripts/change_url | 3 ++- scripts/upgrade | 4 +--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/scripts/change_url b/scripts/change_url index d228ada..a98a4f3 100644 --- a/scripts/change_url +++ b/scripts/change_url @@ -146,7 +146,8 @@ ynh_store_file_checksum --file="$config" #================================================= ynh_script_progression --message="Reconfigure SSOwat" -ynh_app_setting_set $app unprotected_uris "/" +ynh_permission_update --permission="main" --add="visitors" + if [ $is_public -eq 0 ] then if [ "$path_url" == "/" ]; then diff --git a/scripts/upgrade b/scripts/upgrade index 493011e..a47faf4 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -199,9 +199,7 @@ popd #================================================= ynh_script_progression --message="Setuping cron..." -cp ../conf/cron_lufi /etc/cron.d/$app -ynh_replace_string --match_string="__FINALPATH__" --replace_string="$final_path/" --target_file="/etc/cron.d/$app" -ynh_replace_string --match_string="__USER__" --replace_string="$app" --target_file="/etc/cron.d/$app" +ynh_add_config --template="../conf/cron_lufi" --destination="/etc/cron.d/$app" chmod +x $final_path/script/lufi #================================================= From 61c2186fc79c5ce96c250494549fa795244c3e7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Sat, 8 May 2021 23:38:59 +0200 Subject: [PATCH 22/31] Remove old sqlite db (#57) * Remove old sqlite db --- README.md | 4 +-- README_fr.md | 4 +-- scripts/change_url | 5 +++- scripts/install | 22 +++++++------- scripts/remove | 10 ------- scripts/restore | 14 ++++----- scripts/upgrade | 75 ++++++++++++++-------------------------------- 7 files changed, 48 insertions(+), 86 deletions(-) diff --git a/README.md b/README.md index 908b417..16157ee 100644 --- a/README.md +++ b/README.md @@ -44,8 +44,8 @@ Can the app be used by multiple users? **Yes** #### Supported architectures -* x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/lufi%20%28Apps%29.svg)](https://ci-apps.yunohost.org/ci/apps/lufi/) -* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/lufi%20%28Apps%29.svg)](https://ci-apps-arm.yunohost.org/ci/apps/lufi/) +* x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/lufi.svg)](https://ci-apps.yunohost.org/ci/apps/lufi/) +* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/lufi.svg)](https://ci-apps-arm.yunohost.org/ci/apps/lufi/) ## Links diff --git a/README_fr.md b/README_fr.md index eea48f0..d1ede40 100644 --- a/README_fr.md +++ b/README_fr.md @@ -43,8 +43,8 @@ La clé de déchiffrement est une ancre (voir [Fragment Identifier](https://en.w #### Architectures supportées -* x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/lufi%20%28Apps%29.svg)](https://ci-apps.yunohost.org/ci/apps/lufi/) -* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/lufi%20%28Apps%29.svg)](https://ci-apps-arm.yunohost.org/ci/apps/lufi/) +* x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/lufi.svg)](https://ci-apps.yunohost.org/ci/apps/lufi/) +* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/lufi.svg)](https://ci-apps-arm.yunohost.org/ci/apps/lufi/) ## Liens diff --git a/scripts/change_url b/scripts/change_url index a98a4f3..17b4b74 100644 --- a/scripts/change_url +++ b/scripts/change_url @@ -141,10 +141,13 @@ else fi ynh_store_file_checksum --file="$config" +chmod 600 $final_path/lufi.conf +chown $app:$app $final_path/lufi.conf + #================================================= # UPDATE SSOWAT #================================================= -ynh_script_progression --message="Reconfigure SSOwat" +ynh_script_progression --message="Reconfiguring permissions..." ynh_permission_update --permission="main" --add="visitors" diff --git a/scripts/install b/scripts/install index b3ae194..918714e 100644 --- a/scripts/install +++ b/scripts/install @@ -76,6 +76,14 @@ ynh_script_progression --message="Installing dependencies..." ynh_exec_warn_less ynh_install_app_dependencies $pkg_dependencies +#================================================= +# CREATE DEDICATED USER +#================================================= +ynh_script_progression --message="Configuring system user..." + +# Create a system user +ynh_system_user_create --username=$app + #================================================= # CREATE A POSTGRESQL DATABASE #================================================= @@ -106,14 +114,6 @@ ynh_script_progression --message="Configuring NGINX web server..." # Create a dedicated NGINX config ynh_add_nginx_config max_file_size -#================================================= -# CREATE DEDICATED USER -#================================================= -ynh_script_progression --message="Configuring system user..." - -# Create a system user -ynh_system_user_create --username=$app - #================================================= # SPECIFIC SETUP #================================================= @@ -144,6 +144,9 @@ fi ynh_store_file_checksum --file="$config" +chmod 600 $final_path/lufi.conf +chown $app:$app $final_path/lufi.conf + #================================================= # INSTALL LUFI #================================================= @@ -158,9 +161,6 @@ popd #================================================= ynh_script_progression --message="Setuping a cron..." -# cp ../conf/cron_lufi /etc/cron.d/$app -# ynh_replace_string --match_string="__FINALPATH__" --replace_string="$final_path/" --target_file="/etc/cron.d/$app" -# ynh_replace_string --match_string="__USER__" --replace_string="$app" --target_file="/etc/cron.d/$app" ynh_add_config --template="../conf/cron_lufi" --destination="/etc/cron.d/$app" chmod +x $final_path/script/lufi diff --git a/scripts/remove b/scripts/remove index 7640fa9..0cca7d3 100644 --- a/scripts/remove +++ b/scripts/remove @@ -83,16 +83,6 @@ ynh_script_progression --message="Removing logrotate configuration..." # Remove the app-specific logrotate config ynh_remove_logrotate -#================================================= -# CLOSE A PORT -#================================================= - -if yunohost firewall list | grep -q "\- $port$" -then - ynh_script_progression --message="Closing port $port..." - ynh_exec_warn_less yunohost firewall disallow TCP $port -fi - #================================================= # SPECIFIC REMOVE #================================================= diff --git a/scripts/restore b/scripts/restore index 8790bf1..a6153c4 100644 --- a/scripts/restore +++ b/scripts/restore @@ -53,13 +53,6 @@ ynh_script_progression --message="Restoring NGINX configuration..." ynh_restore_file --origin_path="/etc/nginx/conf.d/$domain.d/$app.conf" -#================================================= -# RESTORE THE APP MAIN DIR -#================================================= -ynh_script_progression --message="Restoring the app main directory..." - -ynh_restore_file --origin_path="$final_path" - #================================================= # RECREATE THE DEDICATED USER #================================================= @@ -68,6 +61,13 @@ ynh_script_progression --message="Recreating the dedicated system user..." # Create the dedicated user (if not existing) ynh_system_user_create --username=$app +#================================================= +# RESTORE THE APP MAIN DIR +#================================================= +ynh_script_progression --message="Restoring the app main directory..." + +ynh_restore_file --origin_path="$final_path" + #================================================= # RESTORE USER RIGHTS #================================================= diff --git a/scripts/upgrade b/scripts/upgrade index a47faf4..bea6a94 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -39,19 +39,18 @@ upgrade_type=$(ynh_check_app_version_changed) #================================================= ynh_script_progression --message="Ensuring downward compatibility..." +# If db_name doesn't exist, create it +if [ -z "$db_name" ]; then + db_name=$(ynh_sanitize_dbid --db_name=$app) + ynh_app_setting_set --app=$app --key=db_name --value=$db_name +fi + # If final_path doesn't exist, create it if [ -z "$final_path" ]; then final_path=/var/www/$app ynh_app_setting_set --app=$app --key=final_path --value=$final_path fi -if [ -z "$db_pwd" ]; then - # Need to install new dependencies before creating the new database - need_migration_from_sqlite_to_psql=1 -else - need_migration_from_sqlite_to_psql=0 -fi - if [ -z "$max_file_size" ]; then max_file_size=100 # 100 Mo ynh_app_setting_set --app=$app --key=max_file_size --value=$max_file_size @@ -86,7 +85,15 @@ ynh_abort_if_errors #================================================= ynh_script_progression --message="Stopping a systemd service..." -ynh_systemd_action --service_name=$app --action="stop" --log_path="$final_path/log/production.log" +ynh_systemd_action --service_name=$app --action=stop --log_path="$final_path/log/production.log" + +#================================================= +# CREATE DEDICATED USER +#================================================= +ynh_script_progression --message="Making sure dedicated system user exists..." + +# Create a dedicated user (if not existing) +ynh_system_user_create --username=$app #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE @@ -115,36 +122,10 @@ ynh_script_progression --message="Upgrading dependencies..." ynh_exec_warn_less ynh_install_app_dependencies $pkg_dependencies -#================================================= -# CREATE DEDICATED USER -#================================================= -ynh_script_progression --message="Making sure dedicated system user exists..." - -# Create a dedicated user (if not existing) -ynh_system_user_create --username=$app - -#================================================= -# SPECIFIC UPGRADE -#================================================= -# CREATE A POSTGRESQL DATABASE IF NEEDED -#================================================= - -if [ $need_migration_from_sqlite_to_psql -eq 1 ]; then - ynh_print_info --message="Creating a PostgreSQL database..." - # Create postgresql database - ynh_psql_test_if_first_run - db_name=$(ynh_sanitize_dbid --db_name=$app) - db_user=$db_name - ynh_app_setting_set --app=$app --key=db_name --value=$db_name - # Initialize database and store postgres password for upgrade - ynh_psql_setup_db --db_user=$db_user --db_name=$db_name - db_pwd=$(ynh_app_setting_get --app=$app --key=psqlpwd) # Password created in ynh_psql_setup_db function -fi - #================================================= # SETUP LUFI #================================================= -ynh_script_progression --message="Configuring lufi..." +ynh_script_progression --message="Configuring Lufi..." config=${final_path}/lufi.conf ynh_backup_if_checksum_is_different --file="$config" @@ -170,28 +151,16 @@ fi ynh_store_file_checksum --file="$config" +chmod 600 $final_path/lufi.conf +chown $app:$app $final_path/lufi.conf + #================================================= # BUILD LUFI #================================================= ynh_script_progression --message="Building Lufi..." pushd $final_path -# Migrate from SQLite to PostgreSQL -if [ $need_migration_from_sqlite_to_psql -eq 1 ]; then - # Preinstall with sqlite - carton install --deployment --without=mysql --without=htpasswd --without=test - - # if /var/log/$app/production.log is a symbolic link, then move it to $final_path/log/production.log - if [ ! -L "/var/log/$app/production.log" ] - then - mv "/var/log/$app/production.log" "$final_path/log/production.log" - chown -R $app: "$final_path/log/production.log" - fi - - carton exec script/lufi sqliteToOtherDB -fi - -carton install --deployment --without=sqlite --without=mysql --without=htpasswd --without=test + carton install --deployment --without=sqlite --without=mysql --without=htpasswd --without=test popd #================================================= @@ -233,12 +202,12 @@ ynh_add_systemd_config ynh_script_progression --message="Securing files and directories..." # Set permissions on app files -chown -R $app: $final_path +chown -R $app:$app $final_path #================================================= # SETUP SSOWAT #================================================= -ynh_script_progression --message="Upgrading SSOwat configuration..." +ynh_script_progression --message="Upgrading permissions..." ynh_permission_update --permission="main" --add="visitors" From 43e0f05fb39835b6b6efac946e04027be5f4a2ae Mon Sep 17 00:00:00 2001 From: YunoHost Bot Date: Fri, 4 Jun 2021 13:47:46 +0200 Subject: [PATCH 23/31] [autopatch] Update issue and PR templates (#62) Co-authored-by: Yunohost-Bot <> --- .../ISSUE_TEMPLATE.md | 31 ++++++++++++------- .github/PULL_REQUEST_TEMPLATE.md | 16 ++++++++++ pull_request_template.md | 16 ---------- 3 files changed, 36 insertions(+), 27 deletions(-) rename issue_template.md => .github/ISSUE_TEMPLATE.md (57%) create mode 100644 .github/PULL_REQUEST_TEMPLATE.md delete mode 100644 pull_request_template.md diff --git a/issue_template.md b/.github/ISSUE_TEMPLATE.md similarity index 57% rename from issue_template.md rename to .github/ISSUE_TEMPLATE.md index 5b839b9..2729a6b 100644 --- a/issue_template.md +++ b/.github/ISSUE_TEMPLATE.md @@ -1,6 +1,6 @@ --- name: Bug report -about: Create a report to help us debug, it would be nice to fill the template as much as you can to help us, help you and help us all. +about: When creating a bug report, please use the following template to provide all the relevant information and help debugging efficiently. --- @@ -8,15 +8,17 @@ about: Create a report to help us debug, it would be nice to fill the template a 1. *Read this whole template first.* 2. *Determine if you are on the right place:* - *If you were performing an action on the app from the webadmin or the CLI (install, update, backup, restore, change_url...), you are on the right place!* - - *Otherwise, the issue may be due to Lufi itself. Refer to its documentation or repository for help.* - - *If you have a doubt, post here, we will figure it out together.* + - *Otherwise, the issue may be due to the app itself. Refer to its documentation or repository for help.* + - *When in doubt, post here and we will figure it out together.* 3. *Delete the italic comments as you write over them below, and remove this guide.* --- -**Describe the bug** +### Describe the bug + *A clear and concise description of what the bug is.* -**Versions** +### Context + - Hardware: *VPS bought online / Old laptop or computer / Raspberry Pi at home / Internet Cube with VPN / Other ARM board / ...* - YunoHost version: x.x.x - I have access to my server: *Through SSH | through the webadmin | direct access via keyboard / screen | ...* @@ -25,11 +27,11 @@ about: Create a report to help us debug, it would be nice to fill the template a - Using, or trying to install package version/branch: - If upgrading, current package version: *can be found in the admin, or with `yunohost app info $app_id`* -**To Reproduce** -*Steps to reproduce the behavior.* +### Steps to reproduce + - *If you performed a command from the CLI, the command itself is enough. For example:* ```sh - sudo yunohost app install lufi + sudo yunohost app install the_app ``` - *If you used the webadmin, please perform the equivalent command from the CLI first.* - *If the error occurs in your browser, explain what you did:* @@ -38,9 +40,16 @@ about: Create a report to help us debug, it would be nice to fill the template a 3. *Scroll down to '...'* 4. *See error* -**Expected behavior** +### Expected behavior + *A clear and concise description of what you expected to happen. You can remove this section if the command above is enough to understand your intent.* -**Logs** -*After a failed command, YunoHost makes the log available to you, but also to others, thanks to `yunohost log display [log name] --share`. The actual command, with the correct log name, is displayed at the end of the failed attempt in the CLI. Execute it and copy here the share link it outputs.* +### Logs + +*When an operation fails, YunoHost provides a simple way to share the logs.* +- *In the webadmin, the error message contains a link to the relevant log page. On that page, you will be able to 'Share with Yunopaste'. If you missed it, the logs of previous operations are also available under Tools > Logs.* +- *In command line, the command to share the logs is displayed at the end of the operation and looks like `yunohost log display [log name] --share`. If you missed it, you can find the log ID of a previous operation using `yunohost log list`.* + +*After sharing the log, please copypaste directly the link provided by YunoHost (to help readability, no need to copypaste the entire content of the log here, just the link is enough...)* + *If applicable and useful, add screenshots to help explain your problem.* diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000..ef70e18 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,16 @@ +## Problem + +- *Description of why you made this PR* + +## Solution + +- *And how do you fix that problem* + +## PR Status + +- [ ] Code finished and ready to be reviewed/tested +- [ ] The fix/enhancement were manually tested (if applicable) + +## Automatic tests + +Automatic tests can be triggered on https://ci-apps-dev.yunohost.org/ *after creating the PR*, by commenting "!testme", "!gogogadgetoci" or "By the power of systemd, I invoke The Great App CI to test this Pull Request!". (N.B. : for this to work you need to be a member of the Yunohost-Apps organization) diff --git a/pull_request_template.md b/pull_request_template.md deleted file mode 100644 index 6c28fc5..0000000 --- a/pull_request_template.md +++ /dev/null @@ -1,16 +0,0 @@ -## Problem -- *Description of why you made this PR* - -## Solution -- *And how do you fix that problem* - -## PR Status -- [ ] Code finished. -- [ ] Tested with Package_check. -- [ ] Fix or enhancement tested. -- [ ] Upgrade from last version tested. -- [ ] Can be reviewed and tested. - -## Package_check results ---- -* An automatic package_check will be launch at https://ci-apps-dev.yunohost.org/, when you add a specific comment to your Pull Request: "!testme", "!gogogadgetoci" or "By the power of systemd, I invoke The Great App CI to test this Pull Request!"* From 95fe51b6b4291ee5a335d817121ad57789da73ef Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Fri, 4 Jun 2021 13:49:55 +0200 Subject: [PATCH 24/31] Upgrade --- check_process | 8 ++++---- manifest.json | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/check_process b/check_process index 1986361..e177dbf 100644 --- a/check_process +++ b/check_process @@ -1,11 +1,11 @@ ;; Nom du test auto_remove=1 ; Manifest - domain="domain.tld" (DOMAIN) - path="/path" (PATH) + domain="domain.tld" + path="/path" max_file_size=100 - is_public=1 (PUBLIC|public=1|private=0) - admin="john" (USER) + is_public=1 + admin="john" ; Checks pkg_linter=1 setup_sub_dir=1 diff --git a/manifest.json b/manifest.json index f82f919..8830c91 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Self hosting files and sharing anonymous application", "fr": "Application d'hébergement et de partage de fichiers anonyme" }, - "version": "0.05.13~ynh1", + "version": "0.05.13~ynh2", "url": "https://git.framasoft.org/luc/lufi", "license": "AGPL-3.0-or-later", "maintainer": { @@ -14,7 +14,7 @@ "email": "win10@tutanota.com, cyp@rouquin.me" }, "requirements": { - "yunohost": ">= 4.1.7" + "yunohost": ">= 4.2.0" }, "multi_instance": true, "services": [ From 81225577c024edafe65af9e68268f120f9bfef85 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Fri, 4 Jun 2021 14:00:53 +0200 Subject: [PATCH 25/31] Add templates --- doc/DISCLAIMER.md | 3 +++ doc/DISCLAIMER_fr.md | 3 +++ doc/screenshots/screenshot_lufi_1.png | Bin 0 -> 23543 bytes manifest.json | 8 ++++++++ 4 files changed, 14 insertions(+) create mode 100644 doc/DISCLAIMER.md create mode 100644 doc/DISCLAIMER_fr.md create mode 100644 doc/screenshots/screenshot_lufi_1.png diff --git a/doc/DISCLAIMER.md b/doc/DISCLAIMER.md new file mode 100644 index 0000000..1dcb41b --- /dev/null +++ b/doc/DISCLAIMER.md @@ -0,0 +1,3 @@ +## Configuration + +* How to configure this app: a plain file at `/var/www/lufi/lufi.conf` with SSH. diff --git a/doc/DISCLAIMER_fr.md b/doc/DISCLAIMER_fr.md new file mode 100644 index 0000000..cc1be3d --- /dev/null +++ b/doc/DISCLAIMER_fr.md @@ -0,0 +1,3 @@ +## Configuration + +* Comment configurer cette application: un fichier brut `/var/www/lufi/lufi.conf` en SSH. diff --git a/doc/screenshots/screenshot_lufi_1.png b/doc/screenshots/screenshot_lufi_1.png new file mode 100644 index 0000000000000000000000000000000000000000..07d3dc04cc9aeb8cff982231d8598d0ceb4a4c03 GIT binary patch literal 23543 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 PoSTgd%=L-7cOLx Date: Fri, 4 Jun 2021 12:01:00 +0000 Subject: [PATCH 26/31] Auto-update README --- README.md | 53 +++++++++++++++++++-------------------------------- README_fr.md | 54 ++++++++++++++++++---------------------------------- 2 files changed, 39 insertions(+), 68 deletions(-) diff --git a/README.md b/README.md index 16157ee..9a41d04 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,8 @@ + + # Lufi for YunoHost [![Integration level](https://dash.yunohost.org/integration/lufi.svg)](https://dash.yunohost.org/appci/app/lufi) ![](https://ci-apps.yunohost.org/ci/badges/lufi.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/lufi.maintain.svg) @@ -5,55 +10,35 @@ *[Lire ce readme en français.](./README_fr.md)* -> *This package allows you to install Lufi quickly and simply on a YunoHost server. +> *This package allows you to install Lufi 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 -It stores files and allows you to download them. -Is that all? No. All the files are encrypted **by the browser**! It means that your files **never** leave your computer unencrypted. -The administrator of the Lufi instance you use will not be able to see what is in your file, neither will your network administrator, or your ISP. +Self hosting files and sharing anonymous application -The encryption key part of the URL is a anchor (Cf. [Fragment Identifier](https://en.wikipedia.org/wiki/Fragment_identifier)), that means this part is only processed client-side and does not reach the server. :-) +**Shipped version:** 0.05.13~ynh2 -**Shipped version:** 0.05.13 +**Demo:** https://demo.lufi.io/ ## Screenshots -![](https://framalibre.org/sites/default/files/screenshot_lufi_1.png) +![](./doc/screenshots/screenshot_lufi_1.png) -## Demo - -* [Official demo](https://demo.lufi.io/) +## Disclaimers / important information ## Configuration * How to configure this app: a plain file at `/var/www/lufi/lufi.conf` with SSH. -## Documentation +## Documentation and resources - * Official documentation: https://framagit.org/luc/lufi/wikis/home - * YunoHost documentation: https://yunohost.org/en/app_lufi - -## YunoHost specific features - -#### Multi-user support - -Are LDAP and HTTP auth supported? **Yes** -Can the app be used by multiple users? **Yes** - -#### Supported architectures - -* x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/lufi.svg)](https://ci-apps.yunohost.org/ci/apps/lufi/) -* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/lufi.svg)](https://ci-apps-arm.yunohost.org/ci/apps/lufi/) - -## Links - - * Report a bug: https://github.com/YunoHost-Apps/lufi_ynh/issues - * Upstream app repository: https://framagit.org/fiat-tux/hat-softwares/lufi - * YunoHost website: https://yunohost.org/ - ---- +* Official app website: https://example.com +* Official user documentation: https://yunohost.org/en/app_lufi +* Official admin documentation: https://framagit.org/luc/lufi/wikis/home +* Upstream app code repository: https://framagit.org/fiat-tux/hat-softwares/lufi +* YunoHost documentation for this app: https://yunohost.org/app_lufi +* Report a bug: https://github.com/YunoHost-Apps/lufi_ynh/issues ## Developer info @@ -65,3 +50,5 @@ sudo yunohost app install https://github.com/YunoHost-Apps/lufi_ynh/tree/testing or sudo yunohost app upgrade lufi -u https://github.com/YunoHost-Apps/lufi_ynh/tree/testing --debug ``` + +**More info regarding app packaging:** https://yunohost.org/packaging_apps \ No newline at end of file diff --git a/README_fr.md b/README_fr.md index d1ede40..6dbb47c 100644 --- a/README_fr.md +++ b/README_fr.md @@ -3,56 +3,38 @@ [![Niveau d'intégration](https://dash.yunohost.org/integration/lufi.svg)](https://dash.yunohost.org/appci/app/lufi) ![](https://ci-apps.yunohost.org/ci/badges/lufi.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/lufi.maintain.svg) [![Installer Lufi avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=lufi) -*[Read this readme in english.](./README.md)* +*[Read this readme in english.](./README.md)* +*[Lire ce readme en français.](./README_fr.md)* -> *Ce package vous permet d'installer Lufi rapidement et simplement sur un serveur YunoHost. -Si vous n'avez pas YunoHost, consultez [le guide](https://yunohost.org/#/install) pour apprendre comment l'installer.* +> *Ce package vous permet d'installer Lufi 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.* ## Vue d'ensemble -Il stocke vos fichiers et vous permet de les télécharger. -Est-ce tout ? Non. Tous les fichiers sont chiffrés par le navigateur ! L'administrateur de l'instance Lufi ne pourra pas voir quel est votre administrateur réseau ou votre FAI. +Application d'hébergement et de partage de fichiers anonyme -La clé de déchiffrement est une ancre (voir [Fragment Identifier](https://en.wikipedia.org/wiki/Fragment_identifier)), ce qui signifie que cette partie n'est traitée que par le client et n'atteint pas le serveur. :-) +**Version incluse :** 0.05.13~ynh2 -**Version incluse:** 0.05.13 +**Démo :** https://demo.lufi.io/ ## Captures d'écran -![](https://framalibre.org/sites/default/files/screenshot_lufi_1.png) +![](./doc/screenshots/screenshot_lufi_1.png) -## Démo - -* [Démo officielle](https://demo.lufi.io/) +## Avertissements / informations importantes ## Configuration -* Comment configurer cette application: un fichier brut `/var/www/lufi/lufi.conf` en SSH. +* Comment configurer cette application: un fichier brut `/var/www/lufi/lufi.conf` en SSH. -## Documentation +## Documentations et ressources - * Documentation officielle : https://framagit.org/luc/lufi/wikis/home - * Documentation YunoHost : https://yunohost.org/fr/app_lufi - -## Caractéristiques spécifiques YunoHost - -#### Support multi-utilisateur - -* L'authentification LDAP et HTTP est-elle prise en charge ? **Oui** -* L'application peut-elle être utilisée par plusieurs utilisateurs ? **Oui** - -#### Architectures supportées - -* x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/lufi.svg)](https://ci-apps.yunohost.org/ci/apps/lufi/) -* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/lufi.svg)](https://ci-apps-arm.yunohost.org/ci/apps/lufi/) - -## Liens - - * Signaler un bug : https://github.com/YunoHost-Apps/lufi_ynh/issues - * Dépôt de l'application principale : https://framagit.org/fiat-tux/hat-softwares/lufi - * Site web YunoHost : https://yunohost.org/ - ---- +* Site officiel de l'app : https://example.com +* Documentation officielle utilisateur : https://yunohost.org/en/app_lufi +* Documentation officielle de l'admin : https://framagit.org/luc/lufi/wikis/home +* Dépôt de code officiel de l'app : https://framagit.org/fiat-tux/hat-softwares/lufi +* Documentation YunoHost pour cette app : https://yunohost.org/app_lufi +* Signaler un bug : https://github.com/YunoHost-Apps/lufi_ynh/issues ## Informations pour les développeurs @@ -64,3 +46,5 @@ sudo yunohost app install https://github.com/YunoHost-Apps/lufi_ynh/tree/testing ou sudo yunohost app upgrade lufi -u https://github.com/YunoHost-Apps/lufi_ynh/tree/testing --debug ``` + +**Plus d'infos sur le packaging d'applications :** https://yunohost.org/packaging_apps \ No newline at end of file From b0f764015a5cd994b7d1fb7b1d2a78a7bb31125b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Sun, 6 Jun 2021 19:02:01 +0200 Subject: [PATCH 27/31] Set rights (#63) --- scripts/install | 16 +++++----------- scripts/restore | 12 ++++-------- scripts/upgrade | 16 +++++----------- 3 files changed, 14 insertions(+), 30 deletions(-) diff --git a/scripts/install b/scripts/install index 918714e..c186fdf 100644 --- a/scripts/install +++ b/scripts/install @@ -82,7 +82,7 @@ ynh_exec_warn_less ynh_install_app_dependencies $pkg_dependencies ynh_script_progression --message="Configuring system user..." # Create a system user -ynh_system_user_create --username=$app +ynh_system_user_create --username=$app --home_dir="$final_path" #================================================= # CREATE A POSTGRESQL DATABASE @@ -106,6 +106,10 @@ ynh_app_setting_set --app=$app --key=final_path --value=$final_path # Download, check integrity, uncompress and patch the source from app.src ynh_setup_source --dest_dir="$final_path" +chmod 750 "$final_path" +chmod -R o-rwx "$final_path" +chown -R $app:www-data "$final_path" + #================================================= # NGINX CONFIGURATION #================================================= @@ -172,16 +176,6 @@ ynh_script_progression --message="Configuring a systemd service..." # Create a dedicated systemd config ynh_add_systemd_config -#================================================= -# GENERIC FINALIZATION -#================================================= -# SECURE FILES AND DIRECTORIES -#================================================= -ynh_script_progression --message="Securing files and directories..." - -# Set permissions to app files -chown -R $app:$app $final_path - #================================================= # SETUP LOGROTATE #================================================= diff --git a/scripts/restore b/scripts/restore index a6153c4..73c8b8a 100644 --- a/scripts/restore +++ b/scripts/restore @@ -59,7 +59,7 @@ ynh_restore_file --origin_path="/etc/nginx/conf.d/$domain.d/$app.conf" ynh_script_progression --message="Recreating the dedicated system user..." # Create the dedicated user (if not existing) -ynh_system_user_create --username=$app +ynh_system_user_create --username=$app --home_dir="$final_path" #================================================= # RESTORE THE APP MAIN DIR @@ -68,13 +68,9 @@ ynh_script_progression --message="Restoring the app main directory..." ynh_restore_file --origin_path="$final_path" -#================================================= -# RESTORE USER RIGHTS -#================================================= -ynh_script_progression --message="Restoring user rights..." - -# Restore permissions on app files -chown -R $app:$app $final_path +chmod 750 "$final_path" +chmod -R o-rwx "$final_path" +chown -R $app:www-data "$final_path" #================================================= # SPECIFIC RESTORATION diff --git a/scripts/upgrade b/scripts/upgrade index bea6a94..764a299 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -93,7 +93,7 @@ ynh_systemd_action --service_name=$app --action=stop --log_path="$final_path/log ynh_script_progression --message="Making sure dedicated system user exists..." # Create a dedicated user (if not existing) -ynh_system_user_create --username=$app +ynh_system_user_create --username=$app --home_dir="$final_path" #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE @@ -107,6 +107,10 @@ then ynh_setup_source --dest_dir="$final_path" fi +chmod 750 "$final_path" +chmod -R o-rwx "$final_path" +chown -R $app:www-data "$final_path" + #================================================= # NGINX CONFIGURATION #================================================= @@ -194,16 +198,6 @@ ynh_script_progression --message="Upgrading systemd configuration..." # Create a dedicated systemd config ynh_add_systemd_config -#================================================= -# GENERIC FINALIZATION -#================================================= -# SECURING FILES AND DIRECTORIES -#================================================= -ynh_script_progression --message="Securing files and directories..." - -# Set permissions on app files -chown -R $app:$app $final_path - #================================================= # SETUP SSOWAT #================================================= From 9f4122d5b836bad032dccf2df2f47235fedc61e7 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sat, 19 Jun 2021 16:46:59 +0200 Subject: [PATCH 28/31] Update manifest.json --- manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifest.json b/manifest.json index df8db82..01406dd 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Self hosting files and sharing anonymous application", "fr": "Application d'hébergement et de partage de fichiers anonyme" }, - "version": "0.05.13~ynh2", + "version": "0.05.13~ynh3", "url": "https://git.framasoft.org/luc/lufi", "upstream": { "license": "AGPL-3.0-or-later", From 539714e1efd01ffc6a024617dd1bf96e60e2eb5a Mon Sep 17 00:00:00 2001 From: Yunohost-Bot <> Date: Sat, 19 Jun 2021 14:47:07 +0000 Subject: [PATCH 29/31] Auto-update README --- README.md | 2 +- README_fr.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 9a41d04..ab9a3cb 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/in Self hosting files and sharing anonymous application -**Shipped version:** 0.05.13~ynh2 +**Shipped version:** 0.05.13~ynh3 **Demo:** https://demo.lufi.io/ diff --git a/README_fr.md b/README_fr.md index 6dbb47c..6830132 100644 --- a/README_fr.md +++ b/README_fr.md @@ -13,7 +13,7 @@ Si vous n'avez pas YunoHost, regardez [ici](https://yunohost.org/#/install) pour Application d'hébergement et de partage de fichiers anonyme -**Version incluse :** 0.05.13~ynh2 +**Version incluse :** 0.05.13~ynh3 **Démo :** https://demo.lufi.io/ From 2b6fa75a4dac4d57c5ce1d638c92461eb59cdbf9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Sat, 13 Nov 2021 08:11:55 +0100 Subject: [PATCH 30/31] 0.05.16 (#66) * 0.05.16 --- README.md | 4 +--- README_fr.md | 4 +--- conf/app.src | 5 ++--- manifest.json | 9 +++------ scripts/restore | 2 -- 5 files changed, 7 insertions(+), 17 deletions(-) diff --git a/README.md b/README.md index ab9a3cb..bb83230 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/in Self hosting files and sharing anonymous application -**Shipped version:** 0.05.13~ynh3 +**Shipped version:** 0.05.16~ynh1 **Demo:** https://demo.lufi.io/ @@ -33,8 +33,6 @@ Self hosting files and sharing anonymous application ## Documentation and resources -* Official app website: https://example.com -* Official user documentation: https://yunohost.org/en/app_lufi * Official admin documentation: https://framagit.org/luc/lufi/wikis/home * Upstream app code repository: https://framagit.org/fiat-tux/hat-softwares/lufi * YunoHost documentation for this app: https://yunohost.org/app_lufi diff --git a/README_fr.md b/README_fr.md index 6830132..236fe6f 100644 --- a/README_fr.md +++ b/README_fr.md @@ -13,7 +13,7 @@ Si vous n'avez pas YunoHost, regardez [ici](https://yunohost.org/#/install) pour Application d'hébergement et de partage de fichiers anonyme -**Version incluse :** 0.05.13~ynh3 +**Version incluse :** 0.05.16~ynh1 **Démo :** https://demo.lufi.io/ @@ -29,8 +29,6 @@ Application d'hébergement et de partage de fichiers anonyme ## Documentations et ressources -* Site officiel de l'app : https://example.com -* Documentation officielle utilisateur : https://yunohost.org/en/app_lufi * Documentation officielle de l'admin : https://framagit.org/luc/lufi/wikis/home * Dépôt de code officiel de l'app : https://framagit.org/fiat-tux/hat-softwares/lufi * Documentation YunoHost pour cette app : https://yunohost.org/app_lufi diff --git a/conf/app.src b/conf/app.src index f6e8c70..795afb9 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,6 +1,5 @@ -SOURCE_URL=https://framagit.org/fiat-tux/hat-softwares/lufi/-/archive/0.05.13/lufi-0.05.13.tar.gz -SOURCE_SUM=c43c19c9901bb4b0d103980a61c3b1d9458a54f23b0b1c2b42c9706073df4d5a +SOURCE_URL=https://framagit.org/fiat-tux/hat-softwares/lufi/-/archive/0.05.16/lufi-0.05.16.tar.gz +SOURCE_SUM=bd8146e6062fb180897544c27f862b5de56840e3fe7cde41824538f1de55a2b6 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.gz SOURCE_IN_SUBDIR=true -SOURCE_FILENAME= diff --git a/manifest.json b/manifest.json index 01406dd..938f162 100644 --- a/manifest.json +++ b/manifest.json @@ -6,14 +6,12 @@ "en": "Self hosting files and sharing anonymous application", "fr": "Application d'hébergement et de partage de fichiers anonyme" }, - "version": "0.05.13~ynh3", + "version": "0.05.16~ynh1", "url": "https://git.framasoft.org/luc/lufi", "upstream": { "license": "AGPL-3.0-or-later", - "website": "https://example.com", "demo": "https://demo.lufi.io/", "admindoc": "https://framagit.org/luc/lufi/wikis/home", - "userdoc": "https://yunohost.org/en/app_lufi", "code": "https://framagit.org/fiat-tux/hat-softwares/lufi" }, "license": "AGPL-3.0-or-later", @@ -22,7 +20,7 @@ "email": "win10@tutanota.com, cyp@rouquin.me" }, "requirements": { - "yunohost": ">= 4.2.0" + "yunohost": ">= 4.2.3" }, "multi_instance": true, "services": [ @@ -32,8 +30,7 @@ "install": [ { "name": "domain", - "type": "domain", - "example": "domain.org" + "type": "domain" }, { "name": "path", diff --git a/scripts/restore b/scripts/restore index 73c8b8a..c9bb718 100644 --- a/scripts/restore +++ b/scripts/restore @@ -39,8 +39,6 @@ db_pwd=$(ynh_app_setting_get --app=$app --key=psqlpwd) #================================================= ynh_script_progression --message="Validating restoration parameters..." -ynh_webpath_available --domain=$domain --path_url=$path_url \ - || ynh_die --message="Path not available: ${domain}${path_url}" test ! -d $final_path \ || ynh_die --message="There is already a directory: $final_path " From ea12f5cb8c758cf713669545eb9adff91991fa81 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sat, 13 Nov 2021 12:01:57 +0100 Subject: [PATCH 31/31] Update upgrade --- scripts/upgrade | 31 +++++++++++++++---------------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/scripts/upgrade b/scripts/upgrade index 764a299..0e94262 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -30,10 +30,24 @@ max_file_size=$(ynh_app_setting_get --app=$app --key=max_file_size) #================================================= # CHECK VERSION #================================================= -ynh_script_progression --message="Checking version..." upgrade_type=$(ynh_check_app_version_changed) +#================================================= +# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP +#================================================= +ynh_script_progression --message="Backing up the app before upgrading (may take a while)..." + +# Backup the current version of the app +ynh_backup_before_upgrade +ynh_clean_setup () { + ynh_clean_check_starting + # restore it if the upgrade fails + ynh_restore_upgradebackup +} +# Exit if an error occurs during the execution of the script +ynh_abort_if_errors + #================================================= # ENSURE DOWNWARD COMPATIBILITY #================================================= @@ -63,21 +77,6 @@ if ynh_legacy_permissions_exists; then ynh_app_setting_delete --app=$app --key=is_public fi -#================================================= -# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP -#================================================= -ynh_script_progression --message="Backing up the app before upgrading (may take a while)..." - -# Backup the current version of the app -ynh_backup_before_upgrade -ynh_clean_setup () { - ynh_clean_check_starting - # restore it if the upgrade fails - ynh_restore_upgradebackup -} -# Exit if an error occurs during the execution of the script -ynh_abort_if_errors - #================================================= # STANDARD UPGRADE STEPS #=================================================