From d0c9f2effbbb79135dc527592994638feefacebf Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 15 Nov 2020 21:52:44 +0100 Subject: [PATCH 01/11] Update nginx.conf --- conf/nginx.conf | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/conf/nginx.conf b/conf/nginx.conf index 1d7ef8d..8f45254 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -11,6 +11,10 @@ location ^~ __PATH__/ { index index.php; + # setup for image upload + client_max_body_size 256M; + proxy_max_temp_file_size 1024M; + try_files $uri $uri/ @lychee; location ~ \.php$ { if (!-e $request_filename) { @@ -29,6 +33,7 @@ location ^~ __PATH__/ { # Include SSOWAT user panel. include conf.d/yunohost_panel.conf.inc; } + location @lychee { rewrite __PATH__/(.*)$ __PATH__/index.php?/$1 last; } From 34b554371f7b5b56ee79433004a80ffbf5c0602e Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 15 Nov 2020 22:15:38 +0100 Subject: [PATCH 02/11] Update nginx.conf --- conf/nginx.conf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/conf/nginx.conf b/conf/nginx.conf index 8f45254..a10d1c4 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -12,8 +12,8 @@ location ^~ __PATH__/ { index index.php; # setup for image upload - client_max_body_size 256M; - proxy_max_temp_file_size 1024M; + client_max_body_size 512M; + proxy_max_temp_file_size2048M; try_files $uri $uri/ @lychee; location ~ \.php$ { From 304995a1748eac58013e71cc5b3a4e5ec1a7761f Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 15 Nov 2020 23:03:45 +0100 Subject: [PATCH 03/11] Update php-fpm.conf --- conf/php-fpm.conf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/conf/php-fpm.conf b/conf/php-fpm.conf index 43fca0c..c1a6f44 100644 --- a/conf/php-fpm.conf +++ b/conf/php-fpm.conf @@ -419,8 +419,8 @@ chdir = __FINALPATH__ ;php_admin_value[memory_limit] = 32M ; Common values to change to increase file upload limit -php_admin_value[upload_max_filesize] = 200M -php_admin_value[post_max_size] = 200M +php_admin_value[upload_max_filesize] = 512M +php_admin_value[post_max_size] = 512M ; php_admin_flag[mail.add_x_header] = Off ; Other common parameters From e976ab954eb82fd62cb3a5e6295a184496d91cdd Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 15 Nov 2020 23:04:24 +0100 Subject: [PATCH 04/11] Update manifest.json --- manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifest.json b/manifest.json index 782fe01..99ab516 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Photo-management-system to manage and share photos.", "fr": "Système de gestion de photos pour gérer et partager des photos." }, - "version": "4.0.7~ynh1", + "version": "4.0.7~ynh2", "url": "https://lycheeorg.github.io/", "license": "MIT", "maintainer": { From 69c73aa8db5879080edcd84b7f25c05f44bc6afd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=89ric=20Gaspar?= <46165813+ericgaspar@users.noreply.github.com> Date: Sun, 15 Nov 2020 23:17:01 +0100 Subject: [PATCH 05/11] Update nginx.conf --- conf/nginx.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/conf/nginx.conf b/conf/nginx.conf index 703a88c..6922a0c 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -13,7 +13,7 @@ location ^~ __PATH__/ { # setup for image upload client_max_body_size 512M; - proxy_max_temp_file_size2048M; + proxy_max_temp_file_size 2048M; try_files $uri $uri/ __PATH__/__PATH__/index.php?$query_string; From 2f33ebbb6cd7c256e5508ec462df091ffd2a0597 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 15 Nov 2020 23:19:02 +0100 Subject: [PATCH 06/11] Upgrade PHP to 7.4 --- scripts/_common.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/_common.sh b/scripts/_common.sh index 7b7f25e..6bcb25c 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -4,7 +4,7 @@ # COMMON VARIABLES #================================================= -YNH_PHP_VERSION=7.3 +YNH_PHP_VERSION=7.4 extra_php_dependencies="php${YNH_PHP_VERSION}-xml php${YNH_PHP_VERSION}-imagick php${YNH_PHP_VERSION}-bcmath php${YNH_PHP_VERSION}-exif php${YNH_PHP_VERSION}-mbstring php${YNH_PHP_VERSION}-gd php${YNH_PHP_VERSION}-mysqli php${YNH_PHP_VERSION}-json php${YNH_PHP_VERSION}-zip" From 5f0069718f5bcbecda7707581c7040f6e21a5b3c Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 15 Nov 2020 23:46:49 +0100 Subject: [PATCH 07/11] Update _common.sh --- scripts/_common.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/_common.sh b/scripts/_common.sh index 6bcb25c..7b7f25e 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -4,7 +4,7 @@ # COMMON VARIABLES #================================================= -YNH_PHP_VERSION=7.4 +YNH_PHP_VERSION=7.3 extra_php_dependencies="php${YNH_PHP_VERSION}-xml php${YNH_PHP_VERSION}-imagick php${YNH_PHP_VERSION}-bcmath php${YNH_PHP_VERSION}-exif php${YNH_PHP_VERSION}-mbstring php${YNH_PHP_VERSION}-gd php${YNH_PHP_VERSION}-mysqli php${YNH_PHP_VERSION}-json php${YNH_PHP_VERSION}-zip" From 42bb313c709b4d07fe442dfb5c406fc6d0e2ac05 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Tue, 17 Nov 2020 16:36:37 +0100 Subject: [PATCH 08/11] Update nginx.conf --- conf/nginx.conf | 1 - 1 file changed, 1 deletion(-) diff --git a/conf/nginx.conf b/conf/nginx.conf index 6922a0c..49eb90b 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -13,7 +13,6 @@ location ^~ __PATH__/ { # setup for image upload client_max_body_size 512M; - proxy_max_temp_file_size 2048M; try_files $uri $uri/ __PATH__/__PATH__/index.php?$query_string; From 0934346b3407b9319eb68a07cfc886e5925c7f42 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Wed, 18 Nov 2020 14:31:45 +0100 Subject: [PATCH 09/11] Change versions --- manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/manifest.json b/manifest.json index 99ab516..e2f72af 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Photo-management-system to manage and share photos.", "fr": "Système de gestion de photos pour gérer et partager des photos." }, - "version": "4.0.7~ynh2", + "version": "4.0.7~ynh3", "url": "https://lycheeorg.github.io/", "license": "MIT", "maintainer": { From 293c9ca5656b8487a7ff6ac122a54aaf3eb7bf43 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Thu, 19 Nov 2020 23:40:12 +0100 Subject: [PATCH 10/11] Upgrade to version 4.0.8 --- README.md | 2 +- README_fr.md | 2 +- conf/app.src | 4 ++-- manifest.json | 2 +- scripts/upgrade | 6 +++--- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 6954479..49e16d4 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/in ## Overview Lychee is a free photo-management tool, which runs on your server or web-space. Installing is a matter of seconds. Upload, manage and share photos like from a native application. Lychee comes with everything you need and all your photos are stored securely. -**Shipped version:** 4.0.7 +**Shipped version:** 4.0.8 ## Screenshots diff --git a/README_fr.md b/README_fr.md index 8315882..409011c 100644 --- a/README_fr.md +++ b/README_fr.md @@ -11,7 +11,7 @@ Si vous n'avez pas YunoHost, consultez [le guide](https://yunohost.org/#/install ## Vue d'ensemble Lychee est un outil de gestion de photos gratuit, qui fonctionne sur votre serveur ou votre espace Web. L'installation est une question de secondes. Téléchargez, gérez et partagez des photos comme à partir d'une application native. Lychee est livré avec tout ce dont vous avez besoin et toutes vos photos sont stockées en toute sécurité. -**Version incluse :** 4.0.7 +**Version incluse :** 4.0.8 ## Captures d'écran diff --git a/conf/app.src b/conf/app.src index db225fc..265cd0f 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://github.com/LycheeOrg/Lychee/releases/download/v4.0.7/Lychee.zip -SOURCE_SUM=cebf61ccac3c9bbf081fefa7dfb287f2ef74f09bbda5ee530ae1e4b1c13d28d7 +SOURCE_URL=https://github.com/LycheeOrg/Lychee/releases/download/v4.0.8/Lychee.zip +SOURCE_SUM=107aea88ea20c6cff7e3279354819ecfeffef780197d2d86229d088082cfbf5d SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=zip SOURCE_IN_SUBDIR=true diff --git a/manifest.json b/manifest.json index e2f72af..0ab3064 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Photo-management-system to manage and share photos.", "fr": "Système de gestion de photos pour gérer et partager des photos." }, - "version": "4.0.7~ynh3", + "version": "4.0.8~ynh1", "url": "https://lycheeorg.github.io/", "license": "MIT", "maintainer": { diff --git a/scripts/upgrade b/scripts/upgrade index 53e31ec..501878e 100755 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -124,9 +124,9 @@ ynh_install_composer ynh_exec_warn_less ynh_composer_exec --commands=\"dump-autoload\" -( cd $final_path && php$YNH_PHP_VERSION artisan migrate -n --force) -( cd $final_path && php$YNH_PHP_VERSION artisan config:clear -n ) -( cd $final_path && php$YNH_PHP_VERSION artisan config:cache -n ) +( cd $final_path && php$phpversion artisan migrate -n --force ) +( cd $final_path && php$phpversion artisan config:clear -n ) +( cd $final_path && php$phpversion artisan config:cache -n ) ynh_backup_if_checksum_is_different --file="$final_path/.env" # Recalculate and store the checksum of the file for the next upgrade. From cbf56a468ce4fdb30f745089127d809a5fead6d0 Mon Sep 17 00:00:00 2001 From: tituspijean Date: Fri, 20 Nov 2020 19:36:35 +0100 Subject: [PATCH 11/11] Use yunohost.app directory for picture storage --- conf/.env.example | 2 +- conf/nginx.conf | 4 ++++ scripts/backup | 3 ++- scripts/install | 24 ++++++++++++++---------- scripts/remove | 2 ++ scripts/restore | 8 +++++--- scripts/upgrade | 14 +++++++++++++- 7 files changed, 41 insertions(+), 16 deletions(-) diff --git a/conf/.env.example b/conf/.env.example index 7b8e2a8..db3c0da 100644 --- a/conf/.env.example +++ b/conf/.env.example @@ -33,7 +33,7 @@ TIMEZONE=UTC # folders in which the files will be stored #LYCHEE_DIST="/var/www/__APP__/public/dist/" -#LYCHEE_UPLOADS="/var/www/__APP__/public/uploads/" +LYCHEE_UPLOADS="/home/yunohost.__APP__/uploads/" # url to access those files # LYCHEE_DIST_URL="dist/" diff --git a/conf/nginx.conf b/conf/nginx.conf index 49eb90b..8f157cb 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -30,6 +30,10 @@ location ^~ __PATH__/ { } + location /lychee/uploads/ { + alias __PUBLIC_PATH__/uploads/ ; + } + # Include SSOWAT user panel. include conf.d/yunohost_panel.conf.inc; } diff --git a/scripts/backup b/scripts/backup index e7ee942..e5ee3e8 100755 --- a/scripts/backup +++ b/scripts/backup @@ -24,6 +24,7 @@ ynh_print_info --message="Backing up Lychee..." app=$YNH_APP_INSTANCE_NAME final_path=$(ynh_app_setting_get --app=$app --key=final_path) +public_path=$(ynh_app_setting_get --app=$app --key=public_path) domain=$(ynh_app_setting_get --app=$app --key=domain) db_name=$(ynh_app_setting_get --app=$app --key=db_name) phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) @@ -38,7 +39,7 @@ ynh_backup --src_path="$final_path" # BACKUP MEDIA FOLDER #================================================= -#ynh_backup --src_path="/home/yunohost.$app" --is_big +ynh_backup --src_path="$public_path" --is_big #================================================= # BACKUP THE NGINX CONFIGURATION diff --git a/scripts/install b/scripts/install index 33d3013..c532cee 100755 --- a/scripts/install +++ b/scripts/install @@ -33,6 +33,9 @@ ynh_script_progression --message="Validating installation parameters..." --weigh final_path=/var/www/$app test ! -e "$final_path" || ynh_die --message="This path already contains a folder" +public_path=/home/yunohost.app/$app +test ! -e "${public_path}" || ynh_die --message="${public_path} already exists" + # Register (book) web path ynh_webpath_register --app=$app --domain=$domain --path_url=$path_url @@ -64,13 +67,21 @@ 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" +#================================================= +# CREATE DIRECTORIES +#================================================= + +ynh_app_setting_set --app=$app --key=public_path --value=$public_path +mkdir -p ${public_path}/uploads +mkdir -p ${public_path}/uploads/{big,medium,small,thumb,import} + #================================================= # NGINX CONFIGURATION #================================================= ynh_script_progression --message="Configuring NGINX web server..." --weight=2 # Create a dedicated NGINX config -ynh_add_nginx_config +ynh_add_nginx_config "public_path" #================================================= # YUNOHOST MULTIMEDIA INTEGRATION @@ -130,21 +141,14 @@ ynh_script_progression --message="Storing the config file checksum..." # Calculate and store the config file checksum into the app settings ynh_store_file_checksum "$final_path/.env" -#================================================= -# CREATE DIRECTORIES -#================================================= - -#mkdir -p /home/yunohost.${app}/uploads -#mkdir -p /home/yunohost.${app}/uploads/{big,medium,small,thumb,import} - #================================================= # SECURE FILES AND DIRECTORIES #================================================= # Set permissions to app files chown -R $app: $final_path -#chown -R $app: /home/yunohost.${app} -#chmod -R 750 /home/yunohost.${app} +chown -R $app: ${public_path} +chmod -R 755 ${public_path} #================================================= # SETUP SSOWAT diff --git a/scripts/remove b/scripts/remove index 17714d2..066fa3f 100755 --- a/scripts/remove +++ b/scripts/remove @@ -18,6 +18,7 @@ app=$YNH_APP_INSTANCE_NAME domain=$(ynh_app_setting_get --app=$app --key=domain) final_path=$(ynh_app_setting_get --app=$app --key=final_path) +public_path=$(ynh_app_setting_get --app=$app --key=public_path) db_name=$(ynh_app_setting_get --app=$app --key=db_name) db_user=$db_name @@ -30,6 +31,7 @@ ynh_script_progression --message="Removing Lychee main directory..." --weight=3 # Remove the app directory securely ynh_secure_remove --file="$final_path" +ynh_secure_remove --file="$public_path" #================================================= # REMOVE THE MYSQL DATABASE diff --git a/scripts/restore b/scripts/restore index c0296af..a7d6c7d 100755 --- a/scripts/restore +++ b/scripts/restore @@ -25,6 +25,7 @@ app=$YNH_APP_INSTANCE_NAME domain=$(ynh_app_setting_get --app=$app --key=domain) path_url=$(ynh_app_setting_get --app=$app --key=path) final_path=$(ynh_app_setting_get --app=$app --key=final_path) +public_path=$(ynh_app_setting_get --app=$app --key=public_path) db_name=$(ynh_app_setting_get --app=$app --key=db_name) db_user=$db_name phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) @@ -65,10 +66,10 @@ ynh_system_user_create --username=$app #================================================= # RESTORE DATA #================================================= -#ynh_script_progression --message="Restoring Lychee data..." +ynh_script_progression --message="Restoring Lychee data..." # Use --not_mandatory for the data directory, because if the backup has been made with BACKUP_CORE_ONLY, there's no data into the backup. -#ynh_restore_file --origin_path="/home/yunohost.$app" --not_mandatory +ynh_restore_file --origin_path="$public_path" --not_mandatory #================================================= # RESTORE USER RIGHTS @@ -76,7 +77,8 @@ ynh_system_user_create --username=$app # Restore permissions on app files chown -R $app: $final_path -#chmod -R 750 /home/yunohost.$app/{uploads,data} +chown -R $app: $public_path +chmod -R 750 $public_path #================================================= # RESTORE THE PHP-FPM CONFIGURATION diff --git a/scripts/upgrade b/scripts/upgrade index 501878e..f9efbe0 100755 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -20,6 +20,7 @@ domain=$(ynh_app_setting_get --app=$app --key=domain) path_url=$(ynh_app_setting_get --app=$app --key=path) is_public=$(ynh_app_setting_get --app=$app --key=is_public) final_path=$(ynh_app_setting_get --app=$app --key=final_path) +public_path=$(ynh_app_setting_get --app=$app --key=public_path) db_name=$(ynh_app_setting_get --app=$app --key=db_name) phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) @@ -56,6 +57,16 @@ if [ -z "$final_path" ]; then ynh_app_setting_set --app=$app --key=final_path --value=$final_path fi +# If public_path doesn't exist, create it +if [ -z "$public_path" ]; then + public_path=/home/yunohost.app/$app + ynh_app_setting_set --app=$app --key=public_path --value=$public_path +fi + +if [ ! -d "$public_path/uploads" ]; then + mkdir -p $public_path/uploads +fi + #================================================= # BACKUP BEFORE UPGRADE THEN ACTIVE TRAP #================================================= @@ -138,7 +149,8 @@ ynh_store_file_checksum --file="$final_path/.env" # Set permissions on app files chown -R $app: $final_path -#chmod -R 750 /home/yunohost.$app/{uploads,data} +chown -R $app: $public_path +chmod -R 750 $public_path #================================================= # RELOAD NGINX