From 76d0ed0a809cd019981a4b63cc9c8f2ace2ae913 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Sat, 17 Apr 2021 15:43:27 +0200 Subject: [PATCH 01/57] make first this branch equal as master branch --- conf/0.9.8.src | 6 ++++ manifest.json | 2 +- scripts/install | 2 +- scripts/upgrade | 79 ++++++++++++++++++++++++++++++++++++++++++++----- 4 files changed, 80 insertions(+), 9 deletions(-) create mode 100644 conf/0.9.8.src diff --git a/conf/0.9.8.src b/conf/0.9.8.src new file mode 100644 index 0000000..0be6dec --- /dev/null +++ b/conf/0.9.8.src @@ -0,0 +1,6 @@ +SOURCE_URL=https://fossil.kd2.org/garradin/uv/garradin-0.9.8.1.tar.bz2 +SOURCE_SUM=7cc64b51c9721c2dd7ee510f245bcfc4693ee07f74581ad74003906eb4716ef1 +SOURCE_SUM_PRG=sha256sum +SOURCE_FORMAT=tar.bz2 +SOURCE_IN_SUBDIR=true +SOURCE_FILENAME= \ No newline at end of file diff --git a/manifest.json b/manifest.json index 0545d5b..2460e78 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Software to manage association", "fr": "Logiciel libre de gestion d'association" }, - "version": "1.0.7~ynh1", + "version": "1.0.7~ynh2", "url": "http://garradin.eu/a-propos/", "license": "GPL-3.0-or-later", "maintainer": { diff --git a/scripts/install b/scripts/install index 9ff666a..9d138fd 100644 --- a/scripts/install +++ b/scripts/install @@ -130,4 +130,4 @@ ynh_systemd_action --service_name=nginx --action=reload # END OF SCRIPT #================================================= -ynh_script_progression --message="Installation of Garradin completed" --last +ynh_script_progression --message="Installation of Garradin completed" --last \ No newline at end of file diff --git a/scripts/upgrade b/scripts/upgrade index cb15d46..00e6678 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -24,13 +24,14 @@ phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) #================================================= # CHECK VERSION #================================================= + if ynh_compare_current_package_version --comparison lt --version 0.9.8.1~ynh1; then - ynh_print_info --message="Sorry your version is outdated and need first an update to version 0.9.8.1 with the branch 0.9.8, proceed like that: 'sudo yunohost app upgrade garradin -u https://github.com/YunoHost-Apps/garradin_ynh/tree/0.9.8 --debug' and open your admin page to finalize before next update" - ynh_die "Sorry your version is outdated and need first an update to version 0.9.8.1 with the branch 0.9.8, proceed like that: 'sudo yunohost app upgrade garradin -u https://github.com/YunoHost-Apps/garradin_ynh/tree/0.9.8 --debug' and open your admin page to finalize before next update" + upgrade_type="0.9.8" else upgrade_type=$(ynh_check_app_version_changed) fi + #================================================= # ENSURE DOWNWARD COMPATIBILITY #================================================= @@ -66,17 +67,73 @@ ynh_script_progression --message="Backing up Garradin before upgrading (may take # Backup the current version of the app ynh_backup_before_upgrade ynh_clean_setup () { - # restore it if the upgrade fails - ynh_restore_upgradebackup + # restore it if the upgrade fails + ynh_restore_upgradebackup } # Exit if an error occurs during the execution of the script ynh_abort_if_errors + +#================================================= +# UPGRADE TO 0.9.8 if necessary +#================================================= + +if [ "$upgrade_type" == "0.9.8" ] +then + ynh_script_progression --message="Upgrading upgrade to 0.9.8" --weight=5 + # Download, check integrity, uncompress and patch the source from 0.9.8.src + ynh_setup_source --dest_dir="$final_path" --source_id="0.9.8" + # Set permissions on app files + ynh_system_user_create --username=$app + ynh_add_nginx_config + ynh_add_fpm_config --package="$extra_php_dependencies" + phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) + ynh_script_progression --message="restore data..." --weight=10 + + backup_bdd=/tmp/association.sqlite + backup_squelettes=/tmp/squelettes + + if [ -d "$backup_squelettes" ] + then + cp -ar $backup_squelettes $final_path/www/squelettes + ynh_secure_remove $backup_squelettes + fi + + if [ -e "$backup_bdd" ] + then + cp -a $backup_bdd $final_path/association.sqlite + ynh_secure_remove $backup_bdd + fi + + key=$(ynh_string_random --length=50) + cp -a $final_path/config.dist.php $final_path/config.local.php + ynh_replace_string --match_string="const SECRET_KEY = '3xUhIgGwuovRKOjVsVPQ5yUMfXUSIOX2GKzcebsz5OINrYC50r';" --replace_string="const SECRET_KEY = '$key';" --target_file="$final_path/config.local.php" + if [ "$path_url" == "/" ]; then + ynh_replace_string --match_string="//const WWW_URI = '/asso/';" --replace_string="const WWW_URI = '$path_url';" --target_file="$final_path/config.local.php" + else + ynh_replace_string --match_string="//const WWW_URI = '/asso/';" --replace_string="const WWW_URI = '$path_url/';" --target_file="$final_path/config.local.php" + fi + chown $app:$app $final_path -R + chmod 755 $final_path -R + # Create the visitors permission if needed + if ! ynh_permission_exists --permission "visitors"; then + ynh_permission_create --permission "visitors" + fi + + ynh_systemd_action --service_name=nginx --action=reload + #finalyse upgrade + ynh_local_curl "/index.php" + sleep 5 + ynh_local_curl "/index.php" + upgrade_type="UPGRADE_APP" +fi + #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE #================================================= ynh_script_progression --message="Upgrading source files..." --weight=5 + if [ "$upgrade_type" == "UPGRADE_APP" ] then # Download, check integrity, uncompress and patch the source from app.src @@ -115,7 +172,7 @@ ynh_script_progression --message="restore data..." --weight=10 backup_bdd=/tmp/association.sqlite backup_squelettes=/tmp/squelettes -if [ -d "$backup_squelettes" ] +if [ -d "$backup_squelettes" ] then cp -ar $backup_squelettes $final_path/www/squelettes ynh_secure_remove $backup_squelettes @@ -123,7 +180,7 @@ fi if [ -e "$backup_bdd" ] then - cp -a $backup_bdd $final_path/association.sqlite + cp -a $backup_bdd $final_path/association.sqlite ynh_secure_remove $backup_bdd fi @@ -161,8 +218,16 @@ ynh_script_progression --message="Reloading NGINX web server..." --weight=1 ynh_systemd_action --service_name=nginx --action=reload +#================================================= +# Finalise Upgrade +#================================================= + +ynh_script_progression --message="Finalise upgrade" --weight=1 + +ynh_local_curl "/admin/index.php" + #================================================= # END OF SCRIPT #================================================= -ynh_script_progression --message="Upgrade of Garradin completed" --last +ynh_script_progression --message="Upgrade of Garradin completed" --last \ No newline at end of file From b4ebffa89f768c49aac2ee8336e00308f062fe17 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Sat, 17 Apr 2021 16:57:07 +0200 Subject: [PATCH 02/57] update to version 1.1 --- README.md | 2 +- README_fr.md | 2 +- conf/app.src | 4 ++-- manifest.json | 2 +- scripts/upgrade | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index eb6ff36..7b9f897 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 Garradin is a free association managing software. -**Shipped version:** 1.0.7 +**Shipped version:** 1.1.1 ## Screenshots diff --git a/README_fr.md b/README_fr.md index d472910..edb820f 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 Garradin est un logiciel libre de gestion associative. il permet de gérer des membres. -**Version incluse :** 1.0.7 +**Version incluse :** 1.1.1 ## Captures d'écran diff --git a/conf/app.src b/conf/app.src index cd191db..c17366f 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://fossil.kd2.org/garradin/uv/garradin-1.0.7.tar.bz2 -SOURCE_SUM=bf54afad2ebd1e04cb5fa7f5a2033a7c790e30e7fb69b6795b103d66dfcb6c06 +SOURCE_URL=https://fossil.kd2.org/garradin/uv/garradin-1.1.1.tar.bz2 +SOURCE_SUM=a5bf599320e256e9adaba2ccc0a91a1116ad4efcc04c701fdbe3c05c0fc2f2f5 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.bz2 SOURCE_IN_SUBDIR=true diff --git a/manifest.json b/manifest.json index 2460e78..cf02d51 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Software to manage association", "fr": "Logiciel libre de gestion d'association" }, - "version": "1.0.7~ynh2", + "version": "1.1.1~ynh1", "url": "http://garradin.eu/a-propos/", "license": "GPL-3.0-or-later", "maintainer": { diff --git a/scripts/upgrade b/scripts/upgrade index 6435c1d..d3ecff8 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -79,7 +79,7 @@ ynh_abort_if_errors #================================================= if [ "$upgrade_type" == "0.9.8" ] -then +then ynh_script_progression --message="Upgrading upgrade to 0.9.8" --weight=5 # Download, check integrity, uncompress and patch the source from 0.9.8.src ynh_setup_source --dest_dir="$final_path" --source_id="0.9.8" From 23dc5ee763bf5df8611a8abd9c06f368e258d01b Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Sat, 17 Apr 2021 18:01:12 +0200 Subject: [PATCH 03/57] try update php dependencies --- scripts/_common.sh | 340 ++++++++++++++++++++++++++++++++++++++++++++- scripts/install | 10 +- scripts/remove | 2 +- scripts/restore | 2 +- scripts/upgrade | 2 +- 5 files changed, 350 insertions(+), 6 deletions(-) diff --git a/scripts/_common.sh b/scripts/_common.sh index 51dc46f..e230fac 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -4,9 +4,9 @@ # COMMON VARIABLES #================================================= # dependencies used by the app -YNH_PHP_VERSION="7.3" +YNH_PHP_VERSION="7.4" -extra_php_dependencies="php${YNH_PHP_VERSION}-sqlite3" +extra_php_dependencies="php${YNH_PHP_VERSION}-sqlite3 php${YNH_PHP_VERSION}-bz2 php${YNH_PHP_VERSION}-imap php${YNH_PHP_VERSION}-json php${YNH_PHP_VERSION}-intl php${YNH_PHP_VERSION}-curl php${YNH_PHP_VERSION}-zip" #================================================= # PERSONAL HELPERS @@ -15,7 +15,343 @@ extra_php_dependencies="php${YNH_PHP_VERSION}-sqlite3" #================================================= # EXPERIMENTAL HELPERS #================================================= +# Install another version of php. +# +# usage: ynh_install_php --phpversion=phpversion [--package=packages] +# | arg: -v, --phpversion - Version of php to install. +# | arg: -p, --package - Additionnal php packages to install +ynh_install_php () { + # Declare an array to define the options of this helper. + local legacy_args=vp + declare -Ar args_array=( [v]=phpversion= [p]=package= ) + local phpversion + local package + # Manage arguments with getopts + ynh_handle_getopts_args "$@" + package=${package:-} + # Store phpversion into the config of this app + ynh_app_setting_set $app phpversion $phpversion + + if [ "$phpversion" == "7.3" ] + then + ynh_die "Do not use ynh_install_php to install php7.3" + fi + + # Store the ID of this app and the version of php requested for it + echo "$YNH_APP_INSTANCE_NAME:$phpversion" | tee --append "/etc/php/ynh_app_version" + # Add an extra repository for those packages + ynh_install_extra_repo --repo="https://packages.sury.org/php/ $(lsb_release -sc) main" --key="https://packages.sury.org/php/apt.gpg" --priority=995 --name=extra_php_version + + # Install requested dependencies from this extra repository. + # Install php-fpm first, otherwise php will install apache as a dependency. + ynh_add_app_dependencies --package="php${phpversion}-fpm" + ynh_add_app_dependencies --package="php$phpversion php${phpversion}-common $package" + + # Set php7.3 back as the default version for php-cli. + update-alternatives --set php /usr/bin/php7.3 + + # Pin this extra repository after packages are installed to prevent sury of doing shit + ynh_pin_repo --package="*" --pin="origin \"packages.sury.org\"" --priority=200 --name=extra_php_version + ynh_pin_repo --package="php7.3*" --pin="origin \"packages.sury.org\"" --priority=600 --name=extra_php_version --append + # Advertise service in admin panel + yunohost service add php${phpversion}-fpm --log "/var/log/php${phpversion}-fpm.log" +} +# Remove the specific version of php used by the app. +# +# usage: ynh_install_php +ynh_remove_php () { + # Get the version of php used by this app + local phpversion=$(ynh_app_setting_get $app phpversion) + if [ "$phpversion" == "7.3" ] || [ -z "$phpversion" ] + then + if [ "$phpversion" == "7.3" ] + then + ynh_print_err "Do not use ynh_remove_php to install php7.3" + fi + return 0 + fi + # Remove the line for this app + sed --in-place "/$YNH_APP_INSTANCE_NAME:$phpversion/d" "/etc/php/ynh_app_version" + # If no other app uses this version of php, remove it. + if ! grep --quiet "$phpversion" "/etc/php/ynh_app_version" + then + # Purge php dependences for this version. + ynh_package_autopurge "php$phpversion php${phpversion}-fpm php${phpversion}-common" + # Remove the service from the admin panel + yunohost service remove php${phpversion}-fpm + fi + # If no other app uses alternate php versions, remove the extra repo for php + if [ ! -s "/etc/php/ynh_app_version" ] + then + ynh_secure_remove /etc/php/ynh_app_version + fi +} +#================================================= +# FUTURE OFFICIAL HELPERS +#================================================= +# Pin a repository. +# +# usage: ynh_pin_repo --package=packages --pin=pin_filter [--priority=priority_value] [--name=name] [--append] +# | arg: -p, --package - Packages concerned by the pin. Or all, *. +# | arg: -i, --pin - Filter for the pin. +# | arg: -p, --priority - Priority for the pin +# | arg: -n, --name - Name for the files for this repo, $app as default value. +# | arg: -a, --append - Do not overwrite existing files. +# +# See https://manpages.debian.org/stretch/apt/apt_preferences.5.en.html for information about pinning. +# +ynh_pin_repo () { + # Declare an array to define the options of this helper. + local legacy_args=pirna + declare -Ar args_array=( [p]=package= [i]=pin= [r]=priority= [n]=name= [a]=append ) + local package + local pin + local priority + local name + local append + # Manage arguments with getopts + ynh_handle_getopts_args "$@" + package="${package:-*}" + priority=${priority:-50} + name="${name:-$app}" + append=${append:-0} + if [ $append -eq 1 ] + then + append="tee -a" + else + append="tee" + fi + mkdir -p "/etc/apt/preferences.d" + echo "Package: $package +Pin: $pin +Pin-Priority: $priority +" \ + | $append "/etc/apt/preferences.d/$name" +} + +# Add a repository. +# +# usage: ynh_add_repo --uri=uri --suite=suite --component=component [--name=name] [--append] +# | arg: -u, --uri - Uri of the repository. +# | arg: -s, --suite - Suite of the repository. +# | arg: -c, --component - Component of the repository. +# | arg: -n, --name - Name for the files for this repo, $app as default value. +# | arg: -a, --append - Do not overwrite existing files. +# +# Example for a repo like deb http://forge.yunohost.org/debian/ stretch stable +# uri suite component +# ynh_add_repo --uri=http://forge.yunohost.org/debian/ --suite=stretch --component=stable +# +ynh_add_repo () { + # Declare an array to define the options of this helper. + local legacy_args=uscna + declare -Ar args_array=( [u]=uri= [s]=suite= [c]=component= [n]=name= [a]=append ) + local uri + local suite + local component + local name + local append + # Manage arguments with getopts + ynh_handle_getopts_args "$@" + name="${name:-$app}" + append=${append:-0} + if [ $append -eq 1 ] + then + append="tee -a" + else + append="tee" + fi + mkdir -p "/etc/apt/sources.list.d" + # Add the new repo in sources.list.d + echo "deb $uri $suite $component" \ + | $append "/etc/apt/sources.list.d/$name.list" +} +# Add an extra repository correctly, pin it and get the key. +# +# usage: ynh_install_extra_repo --repo="repo" [--key=key_url] [--priority=priority_value] [--name=name] [--append] +# | arg: -r, --repo - Complete url of the extra repository. +# | arg: -k, --key - url to get the public key. +# | arg: -p, --priority - Priority for the pin +# | arg: -n, --name - Name for the files for this repo, $app as default value. +# | arg: -a, --append - Do not overwrite existing files. +ynh_install_extra_repo () { + # Declare an array to define the options of this helper. + local legacy_args=rkpna + declare -Ar args_array=( [r]=repo= [k]=key= [p]=priority= [n]=name= [a]=append ) + local repo + local key + local priority + local name + local append + # Manage arguments with getopts + ynh_handle_getopts_args "$@" + name="${name:-$app}" + append=${append:-0} + key=${key:-0} + priority=${priority:-} + if [ $append -eq 1 ] + then + append="--append" + wget_append="tee -a" + else + append="" + wget_append="tee" + fi + # Split the repository into uri, suite and components. + # Remove "deb " at the beginning of the repo. + repo="${repo#deb }" + # Get the uri + local uri="$(echo "$repo" | awk '{ print $1 }')" + # Get the suite + local suite="$(echo "$repo" | awk '{ print $2 }')" + # Get the components + local component="${repo##$uri $suite }" + # Add the repository into sources.list.d + ynh_add_repo --uri="$uri" --suite="$suite" --component="$component" --name="$name" $append + # Pin the new repo with the default priority, so it won't be used for upgrades. + # Build $pin from the uri without http and any sub path + local pin="${uri#*://}" + pin="${pin%%/*}" + # Set a priority only if asked + if [ -n "$priority" ] + then + priority="--priority=$priority" + fi + ynh_pin_repo --package="*" --pin="origin \"$pin\"" $priority --name="$name" $append + # Get the public key for the repo + if [ -n "$key" ] + then + mkdir -p "/etc/apt/trusted.gpg.d" + wget -q "$key" -O - | gpg --dearmor | $wget_append /etc/apt/trusted.gpg.d/$name.gpg > /dev/null + fi + # Update the list of package with the new repo + ynh_package_update +} +# Remove an extra repository and the assiociated configuration. +# +# usage: ynh_remove_extra_repo [--name=name] +# | arg: -n, --name - Name for the files for this repo, $app as default value. +ynh_remove_extra_repo () { + # Declare an array to define the options of this helper. + local legacy_args=n + declare -Ar args_array=( [n]=name= ) + local name + # Manage arguments with getopts + ynh_handle_getopts_args "$@" + name="${name:-$app}" + ynh_secure_remove "/etc/apt/sources.list.d/$name.list" + ynh_secure_remove "/etc/apt/preferences.d/$name" + ynh_secure_remove "/etc/apt/trusted.gpg.d/$name.gpg" + ynh_secure_remove "/etc/apt/trusted.gpg.d/$name.asc" + # Update the list of package to exclude the old repo + ynh_package_update +} +# Install packages from an extra repository properly. +# +# usage: ynh_install_extra_app_dependencies --repo="repo" --package="dep1 dep2" [--key=key_url] [--name=name] +# | arg: -r, --repo - Complete url of the extra repository. +# | arg: -p, --package - The packages to install from this extra repository +# | arg: -k, --key - url to get the public key. +# | arg: -n, --name - Name for the files for this repo, $app as default value. +ynh_install_extra_app_dependencies () { + # Declare an array to define the options of this helper. + local legacy_args=rpkn + declare -Ar args_array=( [r]=repo= [p]=package= [k]=key= [n]=name= ) + local repo + local package + local key + local name + # Manage arguments with getopts + ynh_handle_getopts_args "$@" + name="${name:-$app}" + key=${key:-0} + # Set a key only if asked + if [ -n "$key" ] + then + key="--key=$key" + fi + # Add an extra repository for those packages + ynh_install_extra_repo --repo="$repo" $key --priority=995 --name=$name + # Install requested dependencies from this extra repository. + ynh_add_app_dependencies --package="$package" + # Remove this extra repository after packages are installed + ynh_remove_extra_repo --name=$app +} +#================================================= +# patched version of ynh_install_app_dependencies to be used with ynh_add_app_dependencies +# Define and install dependencies with a equivs control file +# This helper can/should only be called once per app +# +# usage: ynh_install_app_dependencies dep [dep [...]] +# | arg: dep - the package name to install in dependence +# You can give a choice between some package with this syntax : "dep1|dep2" +# Example : ynh_install_app_dependencies dep1 dep2 "dep3|dep4|dep5" +# This mean in the dependence tree : dep1 & dep2 & (dep3 | dep4 | dep5) +# +# Requires YunoHost version 2.6.4 or higher. +ynh_install_app_dependencies () { + local dependencies=$@ + dependencies="$(echo "$dependencies" | sed 's/\([^\<=\>]\)\ \([^(]\)/\1, \2/g')" + dependencies=${dependencies//|/ | } + local manifest_path="../manifest.json" + if [ ! -e "$manifest_path" ]; then + manifest_path="../settings/manifest.json" # Into the restore script, the manifest is not at the same place + fi + local version=$(grep '\"version\": ' "$manifest_path" | cut -d '"' -f 4) # Retrieve the version number in the manifest file. + if [ ${#version} -eq 0 ]; then + version="1.0" + fi + local dep_app=${app//_/-} # Replace all '_' by '-' + # Handle specific versions + if [[ "$dependencies" =~ [\<=\>] ]] + then + # Replace version specifications by relationships syntax + # https://www.debian.org/doc/debian-policy/ch-relationships.html + # Sed clarification + # [^(\<=\>] ignore if it begins by ( or < = >. To not apply twice. + # [\<=\>] matches < = or > + # \+ matches one or more occurence of the previous characters, for >= or >>. + # [^,]\+ matches all characters except ',' + # Ex: package>=1.0 will be replaced by package (>= 1.0) + dependencies="$(echo "$dependencies" | sed 's/\([^(\<=\>]\)\([\<=\>]\+\)\([^,]\+\)/\1 (\2 \3)/g')" + fi + cat > /tmp/${dep_app}-ynh-deps.control << EOF # Make a control file for equivs-build +Section: misc +Priority: optional +Package: ${dep_app}-ynh-deps +Version: ${version} +Depends: ${dependencies} +Architecture: all +Description: Fake package for $app (YunoHost app) dependencies + This meta-package is only responsible of installing its dependencies. +EOF + ynh_package_install_from_equivs /tmp/${dep_app}-ynh-deps.control \ + || ynh_die --message="Unable to install dependencies" # Install the fake package and its dependencies + rm /tmp/${dep_app}-ynh-deps.control + ynh_app_setting_set --app=$app --key=apt_dependencies --value="$dependencies" +} +ynh_add_app_dependencies () { + # Declare an array to define the options of this helper. + local legacy_args=pr + declare -Ar args_array=( [p]=package= [r]=replace) + local package + local replace + # Manage arguments with getopts + ynh_handle_getopts_args "$@" + replace=${replace:-0} + local current_dependencies="" + if [ $replace -eq 0 ] + then + local dep_app=${app//_/-} # Replace all '_' by '-' + if ynh_package_is_installed --package="${dep_app}-ynh-deps" + then + current_dependencies="$(dpkg-query --show --showformat='${Depends}' ${dep_app}-ynh-deps) " + fi + current_dependencies=${current_dependencies// | /|} + fi + ynh_install_app_dependencies "${current_dependencies}${package}" +} #================================================= # FUTURE OFFICIAL HELPERS #================================================= diff --git a/scripts/install b/scripts/install index 9ff666a..c735ca8 100644 --- a/scripts/install +++ b/scripts/install @@ -46,6 +46,14 @@ ynh_script_progression --message="Storing installation settings..." --weight=1 ynh_app_setting_set --app=$app --key=domain --value=$domain ynh_app_setting_set --app=$app --key=path --value=$path_url +#================================================= +# INSTALL DEPENDENCIES +#================================================= +ynh_script_progression --message="Installing dependencies..." --weight=10 + +ynh_install_app_dependencies $pkg_dependencies +ynh_install_php --phpversion="$php_version" --package="$extra_pkg_dependencies" + #================================================= # CREATE DEDICATED USER #================================================= @@ -77,7 +85,7 @@ ynh_add_nginx_config ynh_script_progression --message="Configuring PHP-FPM..." --weight=5 # Create a dedicated PHP-FPM config -ynh_add_fpm_config --package="$extra_php_dependencies" +ynh_add_fpm_config --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependencies" phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) #================================================= diff --git a/scripts/remove b/scripts/remove index 7780ced..3f0c7d7 100644 --- a/scripts/remove +++ b/scripts/remove @@ -41,7 +41,7 @@ ynh_remove_nginx_config ynh_script_progression --message="Removing PHP-FPM configuration..." --weight=2 # Remove the dedicated PHP-FPM config -ynh_remove_fpm_config --package="$extra_php_dependencies" +ynh_remove_fpm_config --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependencies" #================================================= # GENERIC FINALIZATION diff --git a/scripts/restore b/scripts/restore index 5d3be8e..f23b8ad 100644 --- a/scripts/restore +++ b/scripts/restore @@ -76,7 +76,7 @@ ynh_script_progression --message="Reconfiguring PHP-FPM..." --weight=6 ynh_restore_file --origin_path="/etc/php/$phpversion/fpm/pool.d/$app.conf" -ynh_add_fpm_config --package="$extra_php_dependencies" +ynh_add_fpm_config --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependencies" #================================================= # GENERIC FINALIZATION diff --git a/scripts/upgrade b/scripts/upgrade index d3ecff8..b2d87eb 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -162,7 +162,7 @@ ynh_add_nginx_config ynh_script_progression --message="Upgrading PHP-FPM configuration..." --weight=2 # Create a dedicated PHP-FPM config -ynh_add_fpm_config --package="$extra_php_dependencies" +ynh_add_fpm_config --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependencies" phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) #======================================================= # backup bdd, squelettes directory and config.local.php From e9eca701be7181e74cd326ab80fdc340f08ef4a7 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Sat, 17 Apr 2021 18:51:07 +0200 Subject: [PATCH 04/57] change php modules extra_dependencies --- scripts/_common.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/_common.sh b/scripts/_common.sh index e230fac..2a8ec47 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -6,7 +6,7 @@ # dependencies used by the app YNH_PHP_VERSION="7.4" -extra_php_dependencies="php${YNH_PHP_VERSION}-sqlite3 php${YNH_PHP_VERSION}-bz2 php${YNH_PHP_VERSION}-imap php${YNH_PHP_VERSION}-json php${YNH_PHP_VERSION}-intl php${YNH_PHP_VERSION}-curl php${YNH_PHP_VERSION}-zip" +extra_php_dependencies="php${YNH_PHP_VERSION}-sqlite3 hp${YNH_PHP_VERSION}-gd php${YNH_PHP_VERSION}-imagick php${YNH_PHP_VERSION}-imap php${YNH_PHP_VERSION}-intl php${YNH_PHP_VERSION}-cli" #================================================= # PERSONAL HELPERS From 0da50209d46bfefb464451640f09777bdadd865c Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Sat, 17 Apr 2021 21:25:41 +0200 Subject: [PATCH 05/57] line script install extra_dependencies --- scripts/install | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/install b/scripts/install index c735ca8..c03c730 100644 --- a/scripts/install +++ b/scripts/install @@ -51,7 +51,7 @@ ynh_app_setting_set --app=$app --key=path --value=$path_url #================================================= ynh_script_progression --message="Installing dependencies..." --weight=10 -ynh_install_app_dependencies $pkg_dependencies +ynh_install_app_dependencies $extra_pkg_dependencies ynh_install_php --phpversion="$php_version" --package="$extra_pkg_dependencies" #================================================= From 367a5b80defdd6d63d65c61eed199d0139977bab Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Sat, 17 Apr 2021 23:24:36 +0200 Subject: [PATCH 06/57] debug script install --- scripts/install | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/install b/scripts/install index c03c730..23f407a 100644 --- a/scripts/install +++ b/scripts/install @@ -52,7 +52,7 @@ ynh_app_setting_set --app=$app --key=path --value=$path_url ynh_script_progression --message="Installing dependencies..." --weight=10 ynh_install_app_dependencies $extra_pkg_dependencies -ynh_install_php --phpversion="$php_version" --package="$extra_pkg_dependencies" +ynh_install_php --phpversion=$YNH_PHP_VERSION --package="$extra_pkg_dependencies" #================================================= # CREATE DEDICATED USER From d267ec9df1f5cb7099a56e55cc74f987f3284db8 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Sat, 17 Apr 2021 23:35:15 +0200 Subject: [PATCH 07/57] debug script install --- scripts/install | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/scripts/install b/scripts/install index 23f407a..255da68 100644 --- a/scripts/install +++ b/scripts/install @@ -51,8 +51,8 @@ ynh_app_setting_set --app=$app --key=path --value=$path_url #================================================= ynh_script_progression --message="Installing dependencies..." --weight=10 -ynh_install_app_dependencies $extra_pkg_dependencies -ynh_install_php --phpversion=$YNH_PHP_VERSION --package="$extra_pkg_dependencies" +ynh_install_app_dependencies $pkg_dependencies +#ynh_install_php --phpversion="$php_version" --package="$extra_pkg_dependencies" #================================================= # CREATE DEDICATED USER @@ -77,7 +77,7 @@ ynh_setup_source --dest_dir="$final_path" ynh_script_progression --message="Configuring NGINX web server..." --weight=2 # Create a dedicated NGINX config -ynh_add_nginx_config +ynh_add_nginx_config YNH_PHP_VERSION #================================================= # PHP-FPM CONFIGURATION @@ -86,7 +86,7 @@ ynh_script_progression --message="Configuring PHP-FPM..." --weight=5 # Create a dedicated PHP-FPM config ynh_add_fpm_config --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependencies" -phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) +#phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) #================================================= # Files owned by user app From 2c8542eaadc1a3e9e15693a66c7030394375d596 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Sat, 17 Apr 2021 23:44:09 +0200 Subject: [PATCH 08/57] debug script install --- scripts/_common.sh | 4 +++- scripts/install | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/scripts/_common.sh b/scripts/_common.sh index 2a8ec47..075e73c 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -4,9 +4,11 @@ # COMMON VARIABLES #================================================= # dependencies used by the app +#pkg_dependencies="imagemagick" + YNH_PHP_VERSION="7.4" -extra_php_dependencies="php${YNH_PHP_VERSION}-sqlite3 hp${YNH_PHP_VERSION}-gd php${YNH_PHP_VERSION}-imagick php${YNH_PHP_VERSION}-imap php${YNH_PHP_VERSION}-intl php${YNH_PHP_VERSION}-cli" +extra_php_dependencies="php${YNH_PHP_VERSION}-sqlite3 php${YNH_PHP_VERSION}-gd php${YNH_PHP_VERSION}-imagick php${YNH_PHP_VERSION}-imap php${YNH_PHP_VERSION}-intl php${YNH_PHP_VERSION}-cli" #================================================= # PERSONAL HELPERS diff --git a/scripts/install b/scripts/install index 255da68..2009f93 100644 --- a/scripts/install +++ b/scripts/install @@ -52,7 +52,7 @@ ynh_app_setting_set --app=$app --key=path --value=$path_url ynh_script_progression --message="Installing dependencies..." --weight=10 ynh_install_app_dependencies $pkg_dependencies -#ynh_install_php --phpversion="$php_version" --package="$extra_pkg_dependencies" +ynh_install_php --phpversion="$php_version" --package="$extra_php_dependencies" #================================================= # CREATE DEDICATED USER From 13926c06d449adc2eb3177149b9514963e7b65dc Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Sat, 17 Apr 2021 23:51:01 +0200 Subject: [PATCH 09/57] debug script install, no need pavkage_dependencies --- scripts/install | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/install b/scripts/install index 2009f93..9483adf 100644 --- a/scripts/install +++ b/scripts/install @@ -51,8 +51,8 @@ ynh_app_setting_set --app=$app --key=path --value=$path_url #================================================= ynh_script_progression --message="Installing dependencies..." --weight=10 -ynh_install_app_dependencies $pkg_dependencies -ynh_install_php --phpversion="$php_version" --package="$extra_php_dependencies" +#ynh_install_app_dependencies $pkg_dependencies +#ynh_install_php --phpversion=YNH_PHP_VERSION --package="$extra_php_dependencies" #================================================= # CREATE DEDICATED USER From 5fc26fd0022a6a966d97100cb36f229153b6238f Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Mon, 19 Apr 2021 18:05:14 +0200 Subject: [PATCH 10/57] try update to 1.1.3 --- 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 7b9f897..ae53f2f 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 Garradin is a free association managing software. -**Shipped version:** 1.1.1 +**Shipped version:** 1.1.3 ## Screenshots diff --git a/README_fr.md b/README_fr.md index edb820f..3c8534f 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 Garradin est un logiciel libre de gestion associative. il permet de gérer des membres. -**Version incluse :** 1.1.1 +**Version incluse :** 1.1.3 ## Captures d'écran diff --git a/conf/app.src b/conf/app.src index c17366f..b33dcae 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://fossil.kd2.org/garradin/uv/garradin-1.1.1.tar.bz2 -SOURCE_SUM=a5bf599320e256e9adaba2ccc0a91a1116ad4efcc04c701fdbe3c05c0fc2f2f5 +SOURCE_URL=https://fossil.kd2.org/garradin/uv/garradin-1.1.3.tar.bz2 +SOURCE_SUM=9910e888ae0e2db29a7e8eb63715b13c55f5547a68da9932ac24d05b0d852ff5 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.bz2 SOURCE_IN_SUBDIR=true diff --git a/manifest.json b/manifest.json index cf02d51..4cd5046 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Software to manage association", "fr": "Logiciel libre de gestion d'association" }, - "version": "1.1.1~ynh1", + "version": "1.1.3~ynh1", "url": "http://garradin.eu/a-propos/", "license": "GPL-3.0-or-later", "maintainer": { From 7565295eed2d9a2f84ada733b9894a934d89a6b5 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Thu, 22 Apr 2021 16:30:20 +0200 Subject: [PATCH 11/57] try fix this upgrade --- scripts/_common.sh | 2 +- scripts/install | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/_common.sh b/scripts/_common.sh index 075e73c..f6fd9f8 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -8,7 +8,7 @@ YNH_PHP_VERSION="7.4" -extra_php_dependencies="php${YNH_PHP_VERSION}-sqlite3 php${YNH_PHP_VERSION}-gd php${YNH_PHP_VERSION}-imagick php${YNH_PHP_VERSION}-imap php${YNH_PHP_VERSION}-intl php${YNH_PHP_VERSION}-cli" +extra_php_dependencies="php${YNH_PHP_VERSION}-sqlite3 php${YNH_PHP_VERSION}-gd php${YNH_PHP_VERSION}-imagick php${YNH_PHP_VERSION}-intl php${YNH_PHP_VERSION}-cli" #================================================= # PERSONAL HELPERS diff --git a/scripts/install b/scripts/install index 9483adf..e46cc4e 100644 --- a/scripts/install +++ b/scripts/install @@ -77,7 +77,7 @@ ynh_setup_source --dest_dir="$final_path" ynh_script_progression --message="Configuring NGINX web server..." --weight=2 # Create a dedicated NGINX config -ynh_add_nginx_config YNH_PHP_VERSION +ynh_add_nginx_config #================================================= # PHP-FPM CONFIGURATION From 85c0e52e667004fe5fddb88c3b332eb60fa5a1c6 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Wed, 5 May 2021 08:00:09 +0200 Subject: [PATCH 12/57] upgrade version 1.1.4 --- README.md | 2 +- README_fr.md | 2 +- conf/app.src | 4 ++-- conf/php-fpm.conf | 2 +- manifest.json | 2 +- scripts/install | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index ae53f2f..34cd249 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 Garradin is a free association managing software. -**Shipped version:** 1.1.3 +**Shipped version:** 1.1.4 ## Screenshots diff --git a/README_fr.md b/README_fr.md index 3c8534f..3b3e50b 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 Garradin est un logiciel libre de gestion associative. il permet de gérer des membres. -**Version incluse :** 1.1.3 +**Version incluse :** 1.1.4 ## Captures d'écran diff --git a/conf/app.src b/conf/app.src index b33dcae..c79ba67 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://fossil.kd2.org/garradin/uv/garradin-1.1.3.tar.bz2 -SOURCE_SUM=9910e888ae0e2db29a7e8eb63715b13c55f5547a68da9932ac24d05b0d852ff5 +SOURCE_URL=https://fossil.kd2.org/garradin/uv/garradin-1.1.4.tar.bz2 +SOURCE_SUM=b6f3088d063185c17bb63f6b33ee5f3ba481a28f73931060fbc5e844e1a56bf9 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.bz2 SOURCE_IN_SUBDIR=true diff --git a/conf/php-fpm.conf b/conf/php-fpm.conf index 5b710a8..9be1163 100644 --- a/conf/php-fpm.conf +++ b/conf/php-fpm.conf @@ -96,7 +96,7 @@ pm = dynamic ; forget to tweak pm.* to fit your needs. ; Note: Used when pm is set to 'static', 'dynamic' or 'ondemand' ; Note: This value is mandatory. -pm.max_children = 10 +pm.max_children = 5 ; The number of child processes created on startup. ; Note: Used only when pm is set to 'dynamic' diff --git a/manifest.json b/manifest.json index 4cd5046..8a1b140 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Software to manage association", "fr": "Logiciel libre de gestion d'association" }, - "version": "1.1.3~ynh1", + "version": "1.1.4~ynh1", "url": "http://garradin.eu/a-propos/", "license": "GPL-3.0-or-later", "maintainer": { diff --git a/scripts/install b/scripts/install index e46cc4e..2cde1ce 100644 --- a/scripts/install +++ b/scripts/install @@ -77,7 +77,7 @@ ynh_setup_source --dest_dir="$final_path" ynh_script_progression --message="Configuring NGINX web server..." --weight=2 # Create a dedicated NGINX config -ynh_add_nginx_config +ynh_add_nginx_config #================================================= # PHP-FPM CONFIGURATION From c25ab1a2ccca83d9259150c09cd01f180d09587f Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Wed, 5 May 2021 09:18:37 +0200 Subject: [PATCH 13/57] try a change on nginx conf --- scripts/install | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/install b/scripts/install index 2cde1ce..c9d83ba 100644 --- a/scripts/install +++ b/scripts/install @@ -77,7 +77,7 @@ ynh_setup_source --dest_dir="$final_path" ynh_script_progression --message="Configuring NGINX web server..." --weight=2 # Create a dedicated NGINX config -ynh_add_nginx_config +ynh_add_nginx_config $YNH_PHP_VERSION #================================================= # PHP-FPM CONFIGURATION From ebf3b4a4d400ba8f6063ac5550fd18275a219407 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Wed, 5 May 2021 09:22:13 +0200 Subject: [PATCH 14/57] back to previous nginx conf --- scripts/install | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/install b/scripts/install index c9d83ba..2cde1ce 100644 --- a/scripts/install +++ b/scripts/install @@ -77,7 +77,7 @@ ynh_setup_source --dest_dir="$final_path" ynh_script_progression --message="Configuring NGINX web server..." --weight=2 # Create a dedicated NGINX config -ynh_add_nginx_config $YNH_PHP_VERSION +ynh_add_nginx_config #================================================= # PHP-FPM CONFIGURATION From f5661c7c5bf4e0d0a783d0105257f9f7e14938ba Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Wed, 5 May 2021 09:53:40 +0200 Subject: [PATCH 15/57] upgrades --- README.md | 2 +- README_fr.md | 10 +++++----- check_process | 2 -- manifest.json | 2 +- pull_request_template.md | 4 +--- scripts/change_url | 18 +++++++++++++++++- scripts/install | 15 +++++---------- scripts/upgrade | 35 ++++++++++++++++------------------- 8 files changed, 46 insertions(+), 42 deletions(-) diff --git a/README.md b/README.md index eb6ff36..c4a7d30 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Garradin for YunoHost -[![Integration level](https://dash.yunohost.org/integration/garradin.svg)](https://dash.yunohost.org/appci/app/garradin) ![](https://ci-apps.yunohost.org/ci/badges/garradin.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/garradin.maintain.svg) +[![Integration level](https://dash.yunohost.org/integration/garradin.svg)](https://dash.yunohost.org/appci/app/garradin) ![](https://ci-apps.yunohost.org/ci/badges/garradin.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/garradin.maintain.svg) [![Install Garradin with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=garradin) *[Lire ce readme en français.](./README_fr.md)* diff --git a/README_fr.md b/README_fr.md index d472910..1664431 100644 --- a/README_fr.md +++ b/README_fr.md @@ -1,12 +1,12 @@ # Garradin pour YunoHost -[![Niveau d'intégration](https://dash.yunohost.org/integration/garradin.svg)](https://dash.yunohost.org/appci/app/garradin) ![](https://ci-apps.yunohost.org/ci/badges/garradin.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/garradin.maintain.svg) -[![Installer Garradin avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.png)](https://install-app.yunohost.org/?app=garradin) +[![Niveau d'intégration](https://dash.yunohost.org/integration/garradin.svg)](https://dash.yunohost.org/appci/app/garradin) ![](https://ci-apps.yunohost.org/ci/badges/garradin.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/garradin.maintain.svg) +[![Installer Garradin avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=garradin) *[Read this readme in english.](./README.md)* > *Ce package vous permet d'installer Garradin 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.* +Si vous n'avez pas YunoHost, consultez [le guide](https://yunohost.org/install) pour apprendre comment l'installer.* ## Vue d'ensemble Garradin est un logiciel libre de gestion associative. il permet de gérer des membres. @@ -37,8 +37,8 @@ Garradin est un logiciel libre de gestion associative. il permet de gérer des m #### Architectures supportées -* x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/garradin%20%28Apps%29.svg)](https://ci-apps.yunohost.org/ci/apps/garradin/) -* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/garradin%20%28Apps%29.svg)](https://ci-apps-arm.yunohost.org/ci/apps/garradin/) +* x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/garradin.svg)](https://ci-apps.yunohost.org/ci/apps/garradin/) +* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/garradin.svg)](https://ci-apps-arm.yunohost.org/ci/apps/garradin/) ## Limitations diff --git a/check_process b/check_process index 0b2b1d0..cc22c57 100644 --- a/check_process +++ b/check_process @@ -13,6 +13,4 @@ upgrade=1 backup_restore=1 multi_instance=1 - incorrect_path=1 - port_already_use=0 change_url=1 diff --git a/manifest.json b/manifest.json index 2460e78..dd7aef1 100644 --- a/manifest.json +++ b/manifest.json @@ -14,7 +14,7 @@ "email": "win10@tutanota.com" }, "requirements": { - "yunohost": ">=4.0" + "yunohost": ">=4.1.7" }, "multi_instance": true, "services": [ diff --git a/pull_request_template.md b/pull_request_template.md index b8b0a14..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/garradin_ynh%20PR-NUM-%20(USERNAME)/badge/icon)](https://ci-apps-dev.yunohost.org/jenkins/job/garradin_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/change_url b/scripts/change_url index 88940e9..68e37e3 100644 --- a/scripts/change_url +++ b/scripts/change_url @@ -8,7 +8,6 @@ source _common.sh source /usr/share/yunohost/helpers -ynh_abort_if_errors #================================================= # RETRIEVE ARGUMENTS @@ -30,6 +29,23 @@ ynh_script_progression --message="Loading installation settings..." --weight=1 # Needed for helper "ynh_add_nginx_config" final_path=$(ynh_app_setting_get --app=$app --key=final_path) +#================================================= +# BACKUP BEFORE CHANGE URL THEN ACTIVE TRAP +#================================================= +ynh_script_progression --message="Backing up the app before changing its URL (may take a while)..." --weight=1 + +# Backup the current version of the app +ynh_backup_before_upgrade +ynh_clean_setup () { + # Remove the new domain config file, the remove script won't do it as it doesn't know yet its location. + ynh_secure_remove --file="/etc/nginx/conf.d/$new_domain.d/$app.conf" + + # Restore it if the upgrade fails + ynh_restore_upgradebackup +} +# Exit if an error occurs during the execution of the script +ynh_abort_if_errors + #================================================= # CHECK WHICH PARTS SHOULD BE CHANGED #================================================= diff --git a/scripts/install b/scripts/install index 9d138fd..c1d7b78 100644 --- a/scripts/install +++ b/scripts/install @@ -23,6 +23,7 @@ ynh_abort_if_errors domain=$YNH_APP_ARG_DOMAIN path_url=$YNH_APP_ARG_PATH is_public=$YNH_APP_ARG_IS_PUBLIC + app=$YNH_APP_INSTANCE_NAME #================================================= @@ -84,11 +85,9 @@ phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) # Files owned by user app #================================================= -chown $app:$app $final_path -R -chmod 755 $final_path -R +chown -R $app:$app $final_path +chmod 755 $final_path -# Remove the public access -ynh_app_setting_delete --app=$app --key=skipped_uris #================================================= # SETUP SSOWAT #================================================= @@ -97,12 +96,8 @@ ynh_script_progression --message="Configuring permissions..." --weight=8 # 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" + ynh_permission_update --permission="main" --add="visitors" fi -# Only the users can access to the panel of the app -# ynh_permission_update --permission="main" --add "all_users" #================================================= # MODIFY A CONFIG FILE @@ -130,4 +125,4 @@ ynh_systemd_action --service_name=nginx --action=reload # END OF SCRIPT #================================================= -ynh_script_progression --message="Installation of Garradin completed" --last \ No newline at end of file +ynh_script_progression --message="Installation of Garradin completed" --last diff --git a/scripts/upgrade b/scripts/upgrade index 00e6678..7084a31 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -31,7 +31,6 @@ else upgrade_type=$(ynh_check_app_version_changed) fi - #================================================= # ENSURE DOWNWARD COMPATIBILITY #================================================= @@ -43,6 +42,13 @@ if [ -z "$final_path" ]; then ynh_app_setting_set --app=$app --key=final_path --value=$final_path fi +# Cleaning legacy permissions +if ynh_legacy_permissions_exists; then + ynh_legacy_permissions_delete_all + + ynh_app_setting_delete --app=$app --key=is_public +fi + #================================================= # Backup Data #================================================= @@ -113,11 +119,12 @@ then else ynh_replace_string --match_string="//const WWW_URI = '/asso/';" --replace_string="const WWW_URI = '$path_url/';" --target_file="$final_path/config.local.php" fi - chown $app:$app $final_path -R - chmod 755 $final_path -R + chown -R $app:$app $final_path + chmod 755 $final_path # Create the visitors permission if needed - if ! ynh_permission_exists --permission "visitors"; then - ynh_permission_create --permission "visitors" + if [ $is_public -eq 1 ] + then + ynh_permission_update --permission="main" --add="visitors" fi ynh_systemd_action --service_name=nginx --action=reload @@ -164,6 +171,7 @@ ynh_script_progression --message="Upgrading PHP-FPM configuration..." --weight=2 # Create a dedicated PHP-FPM config ynh_add_fpm_config --package="$extra_php_dependencies" phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) + #======================================================= # backup bdd, squelettes directory and config.local.php #======================================================= @@ -198,18 +206,8 @@ fi #================================================= # Set permissions on app files -chown $app:$app $final_path -R -chmod 755 $final_path -R - -#================================================= -# SETUP SSOWAT -#================================================= -ynh_script_progression --message="Upgrading permissions configuration..." --weight=2 - -# Create the visitors permission if needed -if ! ynh_permission_exists --permission "visitors"; then - ynh_permission_create --permission "visitors" -fi +chown -R $app:$app $final_path +chmod 755 $final_path #================================================= # RELOAD NGINX @@ -221,7 +219,6 @@ ynh_systemd_action --service_name=nginx --action=reload #================================================= # Finalise Upgrade #================================================= - ynh_script_progression --message="Finalise upgrade" --weight=1 ynh_local_curl "/admin/index.php" @@ -230,4 +227,4 @@ ynh_local_curl "/admin/index.php" # END OF SCRIPT #================================================= -ynh_script_progression --message="Upgrade of Garradin completed" --last \ No newline at end of file +ynh_script_progression --message="Upgrade of Garradin completed" --last From 28571f38fe1dc2c9ca73122cf2904368b44e7fb9 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Wed, 5 May 2021 10:40:58 +0200 Subject: [PATCH 16/57] some fix syntax and recursive chmod --- README_fr.md | 8 ++++---- check_process | 2 -- manifest.json | 2 +- scripts/change_url | 18 +++++++++++++++++- scripts/install | 19 +++---------------- scripts/upgrade | 35 ++++++++++++++++------------------- 6 files changed, 41 insertions(+), 43 deletions(-) diff --git a/README_fr.md b/README_fr.md index 3b3e50b..02d138d 100644 --- a/README_fr.md +++ b/README_fr.md @@ -1,12 +1,12 @@ # Garradin pour YunoHost [![Niveau d'intégration](https://dash.yunohost.org/integration/garradin.svg)](https://dash.yunohost.org/appci/app/garradin) ![](https://ci-apps.yunohost.org/ci/badges/garradin.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/garradin.maintain.svg) -[![Installer Garradin avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.png)](https://install-app.yunohost.org/?app=garradin) +[![Installer Garradin avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=garradin) *[Read this readme in english.](./README.md)* > *Ce package vous permet d'installer Garradin 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.* +Si vous n'avez pas YunoHost, consultez [le guide](https://yunohost.org/install) pour apprendre comment l'installer.* ## Vue d'ensemble Garradin est un logiciel libre de gestion associative. il permet de gérer des membres. @@ -37,8 +37,8 @@ Garradin est un logiciel libre de gestion associative. il permet de gérer des m #### Architectures supportées -* x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/garradin%20%28Apps%29.svg)](https://ci-apps.yunohost.org/ci/apps/garradin/) -* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/garradin%20%28Apps%29.svg)](https://ci-apps-arm.yunohost.org/ci/apps/garradin/) +* x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/garradin.svg)](https://ci-apps.yunohost.org/ci/apps/garradin/) +* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/garradin.svg)](https://ci-apps-arm.yunohost.org/ci/apps/garradin/) ## Limitations diff --git a/check_process b/check_process index 0b2b1d0..cc22c57 100644 --- a/check_process +++ b/check_process @@ -13,6 +13,4 @@ upgrade=1 backup_restore=1 multi_instance=1 - incorrect_path=1 - port_already_use=0 change_url=1 diff --git a/manifest.json b/manifest.json index 8a1b140..1a26425 100644 --- a/manifest.json +++ b/manifest.json @@ -14,7 +14,7 @@ "email": "win10@tutanota.com" }, "requirements": { - "yunohost": ">=4.0" + "yunohost": ">=4.1.7" }, "multi_instance": true, "services": [ diff --git a/scripts/change_url b/scripts/change_url index 88940e9..68e37e3 100644 --- a/scripts/change_url +++ b/scripts/change_url @@ -8,7 +8,6 @@ source _common.sh source /usr/share/yunohost/helpers -ynh_abort_if_errors #================================================= # RETRIEVE ARGUMENTS @@ -30,6 +29,23 @@ ynh_script_progression --message="Loading installation settings..." --weight=1 # Needed for helper "ynh_add_nginx_config" final_path=$(ynh_app_setting_get --app=$app --key=final_path) +#================================================= +# BACKUP BEFORE CHANGE URL THEN ACTIVE TRAP +#================================================= +ynh_script_progression --message="Backing up the app before changing its URL (may take a while)..." --weight=1 + +# Backup the current version of the app +ynh_backup_before_upgrade +ynh_clean_setup () { + # Remove the new domain config file, the remove script won't do it as it doesn't know yet its location. + ynh_secure_remove --file="/etc/nginx/conf.d/$new_domain.d/$app.conf" + + # Restore it if the upgrade fails + ynh_restore_upgradebackup +} +# Exit if an error occurs during the execution of the script +ynh_abort_if_errors + #================================================= # CHECK WHICH PARTS SHOULD BE CHANGED #================================================= diff --git a/scripts/install b/scripts/install index 2cde1ce..ca5c396 100644 --- a/scripts/install +++ b/scripts/install @@ -23,6 +23,7 @@ ynh_abort_if_errors domain=$YNH_APP_ARG_DOMAIN path_url=$YNH_APP_ARG_PATH is_public=$YNH_APP_ARG_IS_PUBLIC + app=$YNH_APP_INSTANCE_NAME #================================================= @@ -46,14 +47,6 @@ ynh_script_progression --message="Storing installation settings..." --weight=1 ynh_app_setting_set --app=$app --key=domain --value=$domain ynh_app_setting_set --app=$app --key=path --value=$path_url -#================================================= -# INSTALL DEPENDENCIES -#================================================= -ynh_script_progression --message="Installing dependencies..." --weight=10 - -#ynh_install_app_dependencies $pkg_dependencies -#ynh_install_php --phpversion=YNH_PHP_VERSION --package="$extra_php_dependencies" - #================================================= # CREATE DEDICATED USER #================================================= @@ -92,11 +85,9 @@ ynh_add_fpm_config --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependenc # Files owned by user app #================================================= -chown $app:$app $final_path -R -chmod 755 $final_path -R +chown -R $app:$app $final_path +chmod 755 $final_path -# Remove the public access -ynh_app_setting_delete --app=$app --key=skipped_uris #================================================= # SETUP SSOWAT #================================================= @@ -105,12 +96,8 @@ ynh_script_progression --message="Configuring permissions..." --weight=8 # 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 -# Only the users can access to the panel of the app -# ynh_permission_update --permission="main" --add "all_users" #================================================= # MODIFY A CONFIG FILE diff --git a/scripts/upgrade b/scripts/upgrade index b2d87eb..5a3d7c1 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -31,7 +31,6 @@ else upgrade_type=$(ynh_check_app_version_changed) fi - #================================================= # ENSURE DOWNWARD COMPATIBILITY #================================================= @@ -43,6 +42,13 @@ if [ -z "$final_path" ]; then ynh_app_setting_set --app=$app --key=final_path --value=$final_path fi +# Cleaning legacy permissions +if ynh_legacy_permissions_exists; then + ynh_legacy_permissions_delete_all + + ynh_app_setting_delete --app=$app --key=is_public +fi + #================================================= # Backup Data #================================================= @@ -113,13 +119,14 @@ then else ynh_replace_string --match_string="//const WWW_URI = '/asso/';" --replace_string="const WWW_URI = '$path_url/';" --target_file="$final_path/config.local.php" fi - chown $app:$app $final_path -R - chmod 755 $final_path -R + chown -R $app:$app $final_path + chmod 755 $final_path # Create the visitors permission if needed - if ! ynh_permission_exists --permission "visitors"; then - ynh_permission_create --permission "visitors" + if [ $is_public -eq 1 ] + then + ynh_permission_update --permission="main" --add="visitors" fi - + ynh_systemd_action --service_name=nginx --action=reload #finalyse upgrade ynh_local_curl "/index.php" @@ -164,6 +171,7 @@ ynh_script_progression --message="Upgrading PHP-FPM configuration..." --weight=2 # Create a dedicated PHP-FPM config ynh_add_fpm_config --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependencies" phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) + #======================================================= # backup bdd, squelettes directory and config.local.php #======================================================= @@ -198,18 +206,8 @@ fi #================================================= # Set permissions on app files -chown $app:$app $final_path -R -chmod 755 $final_path -R - -#================================================= -# SETUP SSOWAT -#================================================= -ynh_script_progression --message="Upgrading permissions configuration..." --weight=2 - -# Create the visitors permission if needed -if ! ynh_permission_exists --permission "visitors"; then - ynh_permission_create --permission "visitors" -fi +chown -R $app:$app $final_path +chmod 755 $final_path #================================================= # RELOAD NGINX @@ -221,7 +219,6 @@ ynh_systemd_action --service_name=nginx --action=reload #================================================= # Finalise Upgrade #================================================= - ynh_script_progression --message="Finalise upgrade" --weight=1 ynh_local_curl "/admin/index.php" From 43349c273d45e83224b130a47bf01a341a6ee481 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Wed, 5 May 2021 23:11:43 +0200 Subject: [PATCH 17/57] fix --- conf/app.src | 2 +- pull_request_template.md | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/conf/app.src b/conf/app.src index c79ba67..9f75246 100644 --- a/conf/app.src +++ b/conf/app.src @@ -3,4 +3,4 @@ SOURCE_SUM=b6f3088d063185c17bb63f6b33ee5f3ba481a28f73931060fbc5e844e1a56bf9 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.bz2 SOURCE_IN_SUBDIR=true -SOURCE_FILENAME= +SOURCE_FILENAME= \ No newline at end of file diff --git a/pull_request_template.md b/pull_request_template.md index 040e119..a17d017 100644 --- a/pull_request_template.md +++ b/pull_request_template.md @@ -11,3 +11,5 @@ - [ ] 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!"* \ No newline at end of file From 3cfeb09440976305f1a1b3248ce1927994f68187 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Fri, 7 May 2021 17:44:17 +0200 Subject: [PATCH 18/57] try fix change_url --- conf/app.src | 2 +- scripts/change_url | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/conf/app.src b/conf/app.src index 9f75246..c79ba67 100644 --- a/conf/app.src +++ b/conf/app.src @@ -3,4 +3,4 @@ SOURCE_SUM=b6f3088d063185c17bb63f6b33ee5f3ba481a28f73931060fbc5e844e1a56bf9 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.bz2 SOURCE_IN_SUBDIR=true -SOURCE_FILENAME= \ No newline at end of file +SOURCE_FILENAME= diff --git a/scripts/change_url b/scripts/change_url index 68e37e3..532750e 100644 --- a/scripts/change_url +++ b/scripts/change_url @@ -93,7 +93,8 @@ else [ $change_path -eq 1 ] fi # Change the domain for NGINX -if [ $change_domain -eq 1 ]; then +if [ $change_domain -eq 1 ] +then # Delete file checksum for the old conf file location ynh_delete_file_checksum --file="$nginx_conf_path" mv $nginx_conf_path /etc/nginx/conf.d/$new_domain.d/$app.conf From 29a0cbb7ca359bf9fc4e3cee17780945f79bd606 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Fri, 7 May 2021 19:17:53 +0200 Subject: [PATCH 19/57] fix urls --- README.md | 8 ++++---- README_fr.md | 4 ++-- images/documents.png | Bin 0 -> 121332 bytes images/edition-site-v1.1.png | Bin 0 -> 165124 bytes images/membre-v1.1.png | Bin 0 -> 41441 bytes manifest.json | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) create mode 100644 images/documents.png create mode 100644 images/edition-site-v1.1.png create mode 100644 images/membre-v1.1.png diff --git a/README.md b/README.md index 34cd249..e3812a5 100644 --- a/README.md +++ b/README.md @@ -15,10 +15,10 @@ Garradin is a free association managing software. ## Screenshots -![](images/membre.png) +![](images/membre-v1.1.png) ![](images/compta.png) ![](images/emails.png) -![](images/wiki.png) +![](images/edition-site-v1.1.png) ![](images/site.jpg) ## Demo @@ -37,8 +37,8 @@ LDAP is not supported yet. #### Supported architectures -* x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/garradin%20%28Apps%29.svg)](https://ci-apps.yunohost.org/ci/apps/garradin/) -* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/garradin%20%28Apps%29.svg)](https://ci-apps-arm.yunohost.org/ci/apps/garradin/) +* x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/garradin.svg)](https://ci-apps.yunohost.org/ci/apps/garradin/) +* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/garradin.svg)](https://ci-apps-arm.yunohost.org/ci/apps/garradin/) ## Limitations diff --git a/README_fr.md b/README_fr.md index 02d138d..0e3b996 100644 --- a/README_fr.md +++ b/README_fr.md @@ -15,10 +15,10 @@ Garradin est un logiciel libre de gestion associative. il permet de gérer des m ## Captures d'écran -![](images/membre.png) +![](images/membre-v1.1.png) ![](images/compta.png) ![](images/emails.png) -![](images/wiki.png) +![](images/edition-site-v1.1.png) ![](images/site.jpg) ## Démo diff --git a/images/documents.png b/images/documents.png new file mode 100644 index 0000000000000000000000000000000000000000..f1840440e6e3de5b06a424c5596d368f12e0bd49 GIT binary patch literal 121332 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 ar&o8(NVz?0W2~=$OG->mwDgm{-~R<#uNEo* literal 0 HcmV?d00001 diff --git a/images/edition-site-v1.1.png b/images/edition-site-v1.1.png new file mode 100644 index 0000000000000000000000000000000000000000..18e5c6d0193ad5cb4162a8b28e6cdff52ceb8dd2 GIT binary patch literal 165124 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�YxdaGHB-)gj723-sFM~v*0{^GUxh=zXYjU|g|}8Ty-PY&(ReQ+ zytK4T;uj`W!sr+3P|>;N)2Z2ck@iqYBGJ&?>V)t@DE#U_Bm9N8DC5LkAx zYnN%~({QDSY9l%4zXygC=tz?@q8+sjC*{w3h4A@!PtYkxN#)?0C3N=W!j7#B!uO73Jw zg_efk*3--!r+atY8`9yz}H zR4ecdeGjgd>lRc@?^2bnA8=5ij_P~zC!W)h!qqw2h>WtFIms!Qm|l>wuJ0b0QTk-_ zE2s}h$5emqIt|#j{!LBXy!Oyre`xTv_(`UZX13aGdGz&W#4rg7-F`{8gZ7{K@V!T! z?BMrgOZiQoC#i1#WBwJD;vd&L?qbLQ+5%Lo`E{Ab;hd3|UJg5Fg!f59ooDM#(cDsr z$cqG&ff*mIT5GIWD>P+vzS_-RCsN67rceGypTm_m`wTgmuOT@xZnRpRi!KF&W|P`c zuLqL~8Voa<-aCX0lW?%8d+&JChAcRuENIM}w+nb8nMYNAJy#7TCY%Z5ew2m-s`WiQ zo7DMS_xks)iMynHmYAKq^36bPj*DLE?X=vAb(-za%6P+m?bZ&nN3dZKE|qM@&J}2> z-@%y(MOb4zM08~@H_i;tRPs;ZX|`l6^->#{$U$NSs0ADikPf=YisS+rYBZS zT|H}-d(KiDNX(azX%88HjB?-3-kt%}6q0cbpXq=@;!q|gx&H*&Vp>-fz^VBugX2Ry>01;jagi4OC!sA zfV!}f0OqB;g3HfyDU|wYaDs?X*euWo;2c?4wL&V~$wD?K8n|Axw+wsesDRmjPbu~U zP2iDPyZf3O3=RvmmG@8SlI&>WFh4Y-15cFb$h^%L7Nmy6O10D_)-S7dG0gvQeScD8 z{MW~B|3*R^)vX&(X#c!eD7t)%;v&TK~DcSyv9V{3I%KCOrU>3{u%nQEqynG$~JZ-2B z`L?jf0$|-MJm;$zD0v9GSQ@SB5?X1y^h55V|KrODB8rGTRQ#ZGp776M ztr7{i7PtBWpC+QFzU*I#d1@9}gQR^nMa=Ln$UrfpeHy0bA1$)BdXjrS5bU0qokA_|ldcuJVFG95R@tDQ&(uVvJ zGU>b#hYoTTT$98qVh%yW(AGjv_H^jgsU=rdhTA*!7c}z7Br`H+#zKea7gLc0r@opTg=o0GG!ti=B`S}XTm)MfM?}` z{tMdE;@(<+d|9;1RDW>9gvNYNZ3p*G`6^$XT`jltDBcEkKXK4hyD#2{jd-Y6M9*;M zeN9EbOpWsn5ggGJD$0Eqw@MGrupW09gtTqE2X#FwJ~Mo|YxN62de7U_&6JLb3i|&2 z@Wh8vqc-;TnL&I;G)^PdoO7fLls=idz4Pm+j-h}V@9Uq^VUf3qVdzp~G(G6Ji7WR7 zSq#Zgsosk*y?p7qoan&hzS0R3BxiKJ5n#FNATg$QvSWS8BF|?{O>u#*6%Wrg-Iu3j zNO%dnswkb^vpB`v&FDxWun^nJMD|VALhD8ASCaS36ULTEG zr|GIL`R}p%+uu^1Cj>q`7yJ7U`?D^c@^5Qw@2vIr-<6$%Q_iPf&6##rVSC0$*LfrD z_NOzVh!rH6Bv8DHI?6qRo$tQ}Tj|?17aLE^iO$p*ne6yF%mlTuVYFvn495iRU^GcG zxZwA)Sk|>$KBhu2q$YoH^b>>_K+;e+v~@1B@oHUSDg;r1!(R+3#gBh709<*_1Y%5bp0{PPs>f^oJCsj_em45yjL88s5;*(*77zHpu(J zvh1F%&CYeJc?VkZrga0m{MOU*cEP3gs-#I~-yz#R=>Z2WYbxZn?3u58aEn{?#mwiQ zT(?eH^X}Rbw}v@72mf&zd^9lR*6rJgB3GzpI_PoFresf(2i;oB6PhP|Z)l2%=~1BE zc(YDfSNrR{9=q2hX8xJjZLIE~DiVV60>L?2Jr4g$AxL+ zzKAl;R>B+@C#RbDNYNbq=+UF4K8xKm7PMNvpD;Ty#p_28b+cG9XxQL6_jC2@I^x>8 zsh@(VYYvQ4GA|vl+TFc*jO|il=0w{@Gd+p;iU~vfHZJ%3^16&NsMSuvy>`Px|K}fP zUb?)%cc#DX^YoMV+?TB;*@S?ts=D=KRKBCaovq?%LF$RkmUq%{5|B+>o*}~~m7vFx zFg;BM7q&w-W+W}ZPxLZC2-2gv@P00Bbn~RF@ueo`#D1;R3fheHo>eh4sfnAJ&I&t zrV%LPkbcr~ZXrg{ad5-_(vMR#N`82zojaAg zxyVd?)l(hw0b`mPzdFi#)?P1EZ>)=o*nLYfeN6S&n&7&;;@sjVb^7J{Te*;fwb}3Y`1UJFTKhWWsO*ji&tugIf0YH?kgSa>jQ^`4VdFWs zm(^}Bx49kL-Q@K8QvJ8%KNH4vb5BbtRelXR;M*AfU#;&}WNovf;Y0C|aX}TXN$K&u zf_wd2&dP`8U)lpmnl{#`(xOoTY%n`%=1-8MUY|^hmiE;eE*Ffe?eR4V@rMB)o2mA* z1a=!^@#d7r%Wk#4k}8eS+V5IlPr0x2Pua)jn1}`8nKVJYD)}e4Jbv7p24DSsq{!i! zOYUd-ZtZRn_G=r8QcbXVx$$al=DuO)ktFiE!!vh%-aYl4G?ILrGK(!YXvkHP*PsH4 zkD3t@WTUHy2>)uSnnWjhv?&QLX4|!xeU5Sof-b(yjFedQ_==1zcj*bgkWr#rEgxU8 zG(1!MTt>-X-L2a1>+#()WwAmJ(przDCTc|JyfAX`!)RRy*>#%! zI~p=Fb6s>1iSaKa^TI6PyooA&D|fg2!I+3Lp^PBmMbpp*<3OM<%rH5#zuUB5IZSjF zQ+@t>%~P*J*?>lizHekBR1&;X+I9&J!o!h*gSwv|;Z&pBoO)T90qE+*>QltTG z-h;=<8#uq%5Xe=&r%kO8RikKP(ZKZ+@EHqKoC$QoFTvAYTVF zlWq6Cz-K7=TapE( zqD8G4V(SqxX{3VsPMW=i%=4PblB68&kT>zP&Ye+{7e7}}`jHJ#=EQw}Hio_wwzilz zZt&x!A61%A@Nq`~I{u6F3rH)3St{oeI0IA@P21ew9Q6P$8C(LYj57>!n_@iKk)Wn@ zdLbx=cyaJDxR|gpqwRys8v6c3i{nj+uh1Ti`UVXti(Hu8+uBmmDrRCclltdKBqX1 zpuzb|`K&gOPoa#U-a_z27^ahin#(+k&Y**I!;8d_n1xJGWKW`eDeUc8-&y!~1{DiW zE2fulveOl?H_@(84>v)QH3#)QUNy+H=tsb*d2wzlW()9REFtPGa?p19J8iqX6JjP_ z3c??R)C$Z@)H8s2xDBIm<8;swek!~K;JKP29qA*5SAQt_C9~uQtiU34MnZn~51GrY zioSfAo4XYi%?dR!?vBo}|FfRI>-wROA}?qo_3IhOmVRbyJVd!@{7gOid}i` zsJBRw@eL6;jYwoCw83{B1Ps7-5im%eXRABU^2Xh~kHWh|l$TgGZeUI~a2*oAr$SL| zW417KDWTz{&AIzq!ZQ)yExGnOX4t^I1zPf0op6LAe-rvnqtF@L0Ux$z?b^;RucoqO zaEBx|xAmg%FyVfztvk}fw|xq?#YZCL$*;o$CcnWRFc-i8 zGF)DOd^hHc`dZ6T{sE+*hBCYgV;Xh~e=#8y#fDPEh%nhTEHu16L_SQ{B6%PeOUFV> z%=x})H?SPV1I!0|PHamEX;&;G$w+Z>p{$>HEdJ$2nJ&L=sti7R_NpsAxLz0?gG8Zt zAr7HhpbfM9-5sZCbc|J^@s>_@bSXZ!Q`80V!|Yu+@_JUudQM{mq&S|L zFrIpw@{wiMuFc_T;TaX2&O>G)6LdtMqJxg|vAMvpLNrB#B>=pAj?R&N6^&dRp%n*a z1!+PQd?$mISDJtnVn4=^4}pc!wj}YZ>WSkqzvOE^9p_QyYh~^>{;aO{{ZfQ|j|;2P zo%MQ()FKXl?g77QpJ|@|u0PKBDeIu%We1slmIXgDhgvnrUdMf(h;OS|_Q*b(&3kwQdiX?^fcX)#jS=&{bheOkqI)h(WiyBI3bl~ZZ$E0vSb=~51AW0f zrYy&H6myq_qbLYY{?gKo?M0=Fw_{4h0*4f(w;-&-no2Qyoe~Z&_jik_RZ*l_?9dob7V-ca9^gYHi7HoqE#d+VC~9k!6kXu|W}KVNC^- zrIL)t9O)PkZ=mK+l$I}#uLwU_DXS9f!#ui4X0Npjb3Iq66ik##dRV=xoARlDwE()N z(iU0c4VR8xC)2Y`JI?QBp86Xzmm3a`eyfZvc;H>9HFdjPv@Qy`^kVRsz9tMUX_NQF zn0shSE()93me|KR#3x?QRy?1bV5J@UNaObn-9{#9pt)VtoE?QD4X80dh*4;I*Z7+k zJWr?Yx~ZO57?o$R`?-zN`t@anwgw5;C1WFk&vdT7zRP`Ov-ys^>^h&0pFcW}TXp$Y zx846{7t)RjKEX|&R5r)+}|@yF87-Fi5xYt0|f&i4I}8vXyoh}Op+GffcW;PCbP?+4zG@U=0s%28d$ z+dNko?7Z;a+WWSF`3J9TPs;t4Wbvuh+}SaEVxrWT4RzD1+=m)w#2Dv63ZC>xicy4QuApjegT*zlvdWv9|VQa&>T zddxvQO(xE`*~hs`DY-KTEmaZ-`n`zV5tjH_`loyv9MgK!{Lad9^BBuNzrk)1Px*A& z2;Yi+C5zk0@_UyZ-N|0~r+Dw)ve?obj|{E!ntO-BLh8_qi5$OKUmc z0kx>~#x*et$rKz6af?mQRy>(nI@V1cT|L7a5C0?aFT5rVzl=8%Y8QA5ESb=*V!(=c zdhZ?tn@n5o3E14%_X*Jg(4D_!#S>c0vz|oTLo_3j#y{Zdo@#u~3U!Wbde0ClGHhZe z+8ua3LM=QXhb_1tK0*9G*@|ICrF$?;1s09iV^hCgFh(7hu~F-7etxpE=sIC01;V_l zlF;BzSRax6L7otasn0MvSR9!}ZSvUJLLphS-U93n@F2D1msKP>!GKbif#RYYLkNVU z64M!U6>$ipIi4WHIw4`?oFtdztSQ-ks89zhRzwSdA;=pu(-Uw0$#1*pik?Y?znnO# zSTqz+weku$Pmfs3(ZnH)4upG0wq00W5C=B5N}f$wM9nDC37{NWOL$!5|mg;tzH%(_<_{)u8!TdPz z7X>jXG@~;*t$aI}AuJ+?fYNRwUl7l6Ho-OY@9E{F*PA*M%yGL#sPSkG1!Um}gUPzsz)nchL%6h-W=2S-9|#o)az9m%$Ny4(iOi2Ou1 z9YHzEgw_iB=zdiXSelIWF_|#D1dtureQ>%s@@ty**PJv8h2B|O(~Z|)GNkqIf8&@F zM}M1UGtAm7sX!(tI$dg3C$@9g@WI;eh9nE+5$&z(G)1+8qZ>9aTto+|c%C5!>ryJc z_U=LK0X&FHXH5r=c-Hlo9rr;=U39UHB%jFq`?4{(pz&xDdY&?OfQB=73p!QcJDxC^ zKdB!zH!ygc2Px~JG@k9fN5yFz`D0Rnao2rE+w|0E-dW>3_`Q~QR$|nqmWo20kLCR$ zOoJoi;bU7g${*{2QT`3@mAAEVJ7^#RUxe(Ej+*f}@jQ)5@b0P#l;Ow)sM-NOxl}EA z`ozgDJFsUu@KTVO^WqTE_uP-e4DOQlIW*s3UC>@Lg=T>00209U;4?#OJ>Q&Oj9B<0 zh1v#pvj>xph-n3FN%AfG#_o-~RetKOekoWtEms7vQZr>erbSK>fk>UBFjBzhiY#G#|c6KUGCLP3*jWVMZE6wZd(KdYs%QvD7 z*&5oXQz6&n%cjY&*WbQ<`vE6k5*+S^25O=kkwo;{^gYNloH=yP(;VfZ8}Y19&x(m> zgZsv>Z&S}ttVfysk||_boM)R(y`x(h;R&ztkeTfA*1!i(eHUty$Zy(WsFQ$pf=U1_ zHt~YjNb6AWs*!3<6Bwi#8ymLkHZAy5YHx4QTcr*f;*yh{Ei5>;PjOe@|J-A?di+o5 zXTR~`rzqFpH0ZEC61WIy`a)cxvBks@TJ=QYZMB*phfe=|UH9eY1$(oBNE^^sBXiqa;tUKQkhF0-pHwE85t^HRp1J?+)w%uUw{mRmQoQ=Kb# z>*>`549F(U)5-``Y&plNHQ7u!>JJ0h`hvMIh*dho^QojLBJkW>KV)!U7mB%wuY2WJ%8r2(~3$i zjMQp0Y<_aZC*f;M!k5YGeFF5j!uRp+gR`80q&^pac8J>;qdulMcvowHMd7T9vNN^C z@jI*jIj=OMJ!uX4Xe;&1V9t!{)U$=YaVqAqlO#G#y#6KCyzq8i^R>EGrL6i0_fhc? zb*)GLO|yf%ue<4w8!$XRYTeK_vEqS>dk&Z8{+liz*gEU4N_VRlFJkV6rr2bCcek>r zc1^Z&%kN!e_WVsoMrlQ={+J$rj5GR)aJw;&vIolA^lA>oV(m$idpl$~Gr978ysGTr zG-L*B9*8<8+0k;+KE!`ohU?r3+nj3Y7A~uG6lerM1!NrVrWg6hK>qOSZ4dLiwgLST zdpjgMvduPSe{ry!ho~Z>^dHl13sQUi1De0U^BH zXsjNP-t|Q4H%HCW#y6HxLBEZ5w;l5Qegx1G+g@(f7~GQU5SO?NbF_9<47_7M(5v;=9%Klt;#Y-&SX=1b0b z&O2aK)AVuM@}sgIyiIbtwI!&w#W&J@fNz(d@9W;`Dd%`Z96hMpwCCGt$+M5{L^Xi> zK~JKL*r=5lEgU(4G|2s_H}A*LS57%WWJ<3lqalI8UW4rg(T9OjY><79;5vDToNGWV zoMXHXZ)@@w^7r!22r5W|XDT_`UK;=2j}~74^x|fqoPj7L|JNCR<`J`R)M;|Bm79e4sMVi84?k)l}9d!1S$sC|m zSmJ!m!I{(DN3{v|0MJV+Z-k>sV2 z%t2p^R*TLDDx*Z4MaX2AToVisZGfpoqNx~49P0tnG9WMXFl~hWD<T9f8-#p+7dZTyZkeO)n(Z6S@^9qVdK^kmGPT0m37uGZ6csv&Ef`Yv63OoMPCn*JC)$6osw5fZbwZT5wP}fWZfPT$nex}Gnp^pn34ixHelCTp5>o9mN zU7VQ3F3>!^jx-2Zi2-9;@~nIlmuhz_sowwS`T;%S`bUvN;)`)Akm1rgOkHQ*TJec_ z0Av#^5M(Ow(dq%0GD=pP4dguFDyfX5ltg_<@U;F%whn?W$1)!UyAx%t9szY))x8D?^JFpI*LAQ96osBn12D=xxkO z&p0M&I4I01R~!1xEhx1}49ByvnPvZWh3X06RLb+!IU>3Q7Cf+Aem~f1om@AR4C^!- zo;UX1-5u&nxa&~5lxz=+FUil%<$E~xgNmUdNufB~o^eGaoYb4)FB;dA)B*Jj0G2J1S6f zD*A;FH$PG+Qc>+Qro~5QDiLrTq2~aQdv>?p16wA*OdV+g8(l2;#r9lJw#_qTp>YYT z!JWwu+axL7k)xWQ(AaP8X30Yq7i$cNg!Tn$6$-OWO->5TVy-c#i<}|kiOxdfCjd?c zB^YKviqS0*G}v-|V8|}d_E~dw+MN2IDl26SGk^xeim%gl58{ozqm50`m>e0)pZv6! z_mAyUp47QhzzI9?O>=Rl0wA;v+*EI(W2>tW+s`9a@0=0ZK&m+O4lHHp5ZE6`!VIm< znO|Vx(B&Xz5*>C`F4xm!)2w;=1h@Dny%QGiv*suXliZs@_ytrLRNoUEcsB z06*b0K{tJAvUgUsdoUkEnV$Xj?P}mq+SVyb_dWU$Q=>aocdT7Kt(9TjcFT0(I3n)s zt!U)SjHSlyeiP+n5im>wX9lSr8P4a>Wn>oKVO9iP>JT$Lc&c#D=zup#Pr7zoAH4PL zX4Vi%H_viF2pVvJ&h*r;Wd)5?qsF6e#>HL#9JgOBm82aEsZKG=nW|P$gT)gXuiNJ= zyP)0l_4%7w^|)-5x_VpRHBrS(fC_Y3l6+Er=PYNDDO6tpLHhCB)AY=WXMc}tQ@~_D zJtlNd=e<7@7i!8I?e;lGI}Yr&$06u3G^u~e%o>gMGM-?Xb9XCPF)~d}4Q-9aq2y9wV)x-iLgnwrZ0y@`0r}jcCRl zbRKINdM6dc1ns%`GM`vNDWt22ot~h{$JotM>O-=C%B$;C!wiuT)l9I+qWtf-ru$v1^ukL>KMG z)6a^l313%(?ve@ZBFXg`e0zY4}1|j+9!o5erA5fdjh%;@}k( z@16g)v0vVdx99OfERL`0-C06+(B41Ni*Jc~=Cwv>Wgdkwv2Vxy8{T8Q@}E+{IL(Mi zbk#&I!68LG zX!M#_C&U_OnJo;+TagM=>YFlb2bi4WxVIwJ2a9NKZOWWv=_#XWSG0Hm|j zj^b+uD32TbYKPgNaZ~H;a?Q;@x20zt;sI< zZJLZ*grfS%s@t*B`Gu}|OM~maHg1Tl7Cp1@UYjia+jU&~?|oQP=pH?7^5C99qZC#; zk8fg!lc}PRiH;75pX_mRLvzzd=frNG5ET4CAY130t@k{Bhnb%Fj;&Er#l;T>LZYr* zxg_b;`r_wq$1HC;{F2M^R_;4_`J!Rx2>ywZBQ*Ouzk?=F(FO z9~8TikKT%ksy^ZUQp4D*rs;Yi^r{$XdU*B>j~)gioZ5T-)O$!H-7n9}t*8Tup(3i) zJ8iKzmE?1)PlzqSA1qi$AuKC#-nW80wSvn(7;w!gjUMCCZ8f0{frn-ZKU#fW`!}K| zxo~ZsMCzIxZJG(n^IuieWx6KC3@d2qPsafI+W96hO(`A&g2&nn{+2;hGEHA{&#m&w z?T7xBrya(T0>T&ZA*C2-pUoNR4xp(ZZTi5=dC;3%WwFSanHQnKU_pSsYlo$sEzoZO zOd#H3k8&X9ln3qBXSP%M*1m6?XsFzMbAR2G`^%Y0L(vx&dw+#zL3+}8S@n#~a@{bl z$b7j@b8-5rte-}HAMy75Aw1^2J%0wL{Zs$7C+npSjD@ztPt|sde z8ZjLmnlva72l~=51yit|1__Q3!9}%?wG!81FSH*lHcnKED~>MU;#FH8T-i&ST8sco zh#ZDV2+d3z?+)Y~W=Y-#4FZv4>DlZ|zAQvo_?0k04&0Y6;h30tw^ne96kK@s`tN9aQI=6K0UZIo zTg!yMaP5pR%(9Wi_eDpn=9ju58EsO?PW6vw^h4t(L_;^f%3e zR6&*p7I<|26(j|Kq<5?soF-VD0tY18%LkA7_Vp{1m0o+OP?T6B#m~@!#)5yMGzr&s z{*XL2d7vU8X}4-vJ)s5fh{7ep~VJGA)R69P{NJR&2Mh4{kDDbk+Ox= z^#*mj8`=2e@Y=88^AK>k)*sEb!077IP%fz;`9v{*1DOq-U~P$_gnu}lo~ME z>9d&K@aIbXU2f<9)dGwKf#m87xvTE)Mo7*ObChiZbz7UN&Es5-L36P5(cUnx>sDJ6 zHuaXxG&RGe7e^;LD)1^?S{jPUpadikt4^kKcCu5q{5r9|C}A}uqns*qq^;$^sz_St zR1{?{HQLl2zl;5?w@VxlH-Gumd)f$9CI0ctP6*$L%-1rqu+byhtgzm{T+1-Z7PEWx zGxH}(_d@=mHZba!S&)878gR94`in5FL(n7&T9q@;P&K~I&3)o{)-EhSq@yPc^9T7! z{yx>eabHS{0WM!+re2D_=!qfYcdGrGZTBq81JNc<4?=Dw0G^Bt#KI0b3}6rwJDDCA z5#e#6-uXEVq2?hAPIpub*M;I;zyEtd0vOCCen5N-`UZWY&$N+2RK2sEIx)Z3E2XS4#W9t2i`iA5h z1pq^%&}y$=riR#p!kjvHuBaf%hr?g*)}A~^1pu}qg@PIh4(<+y1&G>_(-Ky9@30Q% z8ARhPMxw}NP7;vImb=2SAJ0RxIlJGxZq+`6I+J4%+v$fJ*Ojt+s8Q4dQkT`p?>w43 zq{VSG=p%Z7wlN-}8iti;23wboRQW*eXO@Nn5t%qyN^CII{0W z;f1ZO!O5P~*|=PLy=#N~+i@>zIpSEyjiv^l$!SF z9c$!{mXZBt^=VUWC)DN7Dx+bzeCyEG&n_v^&Eccv#6VkQ1`qZTYyX-sSaxA&Mx?r_ zxF7OJNO#a_O8n!}1}RM2#GuYXy!r>d(h`HIkWsuS7`ih)d2nxSc_~F*m!pSe_&v%a zp{?URi4Z$*phS{P+rehGxEl57Nt;{P12P9=??b``5)=v*{6`4jI!71~^{nUHWY0VT zIDweD7I$_AhYW6DBXBe^AdLBnsUc0jmrZ**LZ&cF^P3ATP8%L=CJ6FKjw=^@&5mOK zki+mW5Rw57Vh9D!xnb!M93}VyLJ?QrW?@!j_j)y6O?WFW8QmZ0qfn`qY`^`(53V=H zoY@WQl69n40%C$WURxS^d&-5X?N1!fq~j)orQ1?d^}pJjFq_6E)nmFhgY zeA^5(qBd_dw=dGJ59;?)C6N$e2)#VOY;ZcFdU72U%#dxwkLk5XlxY4jH zY2jk{!Ta~-1KD6Z2F6d))+XdL2-I`jG@H0DGis;(`eVP2p1R4q1m$4cK-P>+xNh6N z-K?^X013+Zq~h|T@!ziUa6K;#@I9`avMh9)MZoAow+9@1x^!)=fk*#YWTn@Sz7vv@ zl=w;C{y0+Bd5>M-OPzbaFaJk=k*mC){_k_l-SX4-9uji4X$%Kk_U>JR(uuOz>@Sb* zl_!Uv%8ouapfK6->=LJ2I2klZFN+vZCb=pPsl{BLGx4B-yF+d_#bJkY8<*OvdXm1{nh68t%31h^9?*a z>h9LGJp6IFP%i7BLhU`D=C3!M4D@SJDG{Si%rE+Ns(y*Co`=1z?eGfB)aJ?JQPO`uYFgmtHbW5WlW6((wPO?Yg6ydbYI{6|evi5uzxD zDk30aqzcjkgd)8Y0Wk_fC{hxN(m{$8DNKza#9KnNXa(us5e0p1|~?py2r z^X~oQu~_S@m6Mz^Gw00A-rx7_y}PU!r0MR8gu_sK#;bqMFGmOrXYYViqy6dkC;Y)u z0ygXsqvPl4=;+8zfEb>cnK_!&9N5?a>M<2r|Jh3#RfFbAfz#o8j(kc@0KeaMf3A!_ zhkqRpy5#Tw_xOLD{tv(Q|8tdpuKM3K`JZ3?`|-cK%D;D9?5F|q3V52!YboeYa$&5; zYxp65o;^h6%pT9On;%0Bze3mQw~>Q4V)yXTX4IYIjAV)X&8V*pUa$V#y-^jO^2!Dg zZvIsWq0s3K>!aa8HyayX+~ZtcI2Pfy$KrO;hrUaQpO&FZ%z2ypRn9>l#AFpN`bEG) zApE`YhDw0&~^>)NPei`eBpHWodA7I5m8#Dt_hxqVlw?t^P!z&Chdb^tKdnY^;>-_>hM+DU$kr@ zke!;w($@aCGJzS{P<7~jGWW80-naZq@rH?p`lKvIhy^k8_4%||sTbW^Mho9L&9pqj3pL-T11R_MZE4@2N257x zDPlwQjM=TXOG71CkkY(5hwm6vJ3A1Q>Han=@!W%O*wqj=-vo}KHH%lp@-BX-O+F$BvbY2Of zLJ*N-sHO1wT2-NyT`CVbfEi^U0ZwsI7nEjRTM=>Kkp+v!8Q;hb!CE(0gR@JxB-4lV zgy-G&?96qG?yJStwvtz$YX|rq9fP;Yoj!OWL(~+S(%kC=P`St-)<3~W*t=v;v&#pe ze*RiMHp#4>UX?e%)^|ZOMEdWL_E~DmunJl&m<}*L;|oRUKVc&CnF*qWU{6T&Yx*gO z)dlnOUDZvKpDzWWp87f4Y!TJp2fW$u&G_QjE?v|!hMUnfcDE;$Dh9&By^m5EY)tc3 z`e|i^i>@DehF&)K7?6MI0`V-9!`oVnLrR)E_n&p@ckho}p{oJDx>9rmyNaH1$1-vK z1xB=8p2qaH1gMz3f*q`qKx&i@fueMtS5E$RBPk?hg2F3KBD7TZL4xYAv%lT;8W+kF zeIi>e;_mD!cub!D{mI+wuutk!=Sl7?8zyb#f%Rc1tzvOT8fox~%E%dpDWr1_i$Y$AC<&_rI=Nfwim-Jl(>a8NT z!dd^$$8c(H;@&;du(85bA9IC4O3Y#dcgnX|o!`w7CZbs&&=%d7EWL%_f*^P3!6dx< z0p$Zx(0FB2yp3zy;Eq-T=B=q-lGA1c%z}TqYi>i{tqYHaC(eZv$SG*W^Z|C{gE3eY zf1@0H%WGc=4?}!bj=0h|3QwLvdsT%2=W6H#tzAVZ39H=m1jq(o8ioiVXVyUa?4zAR zRs71J_Ct{s@Y_o4onmh(1@(p?B~CKY`pKXo9c{(i>m0?YY7W;_g~5=Yd2flOom2J8)KXsTtVuH#3J^yU2}J@R=v zpjq#`?nsne@muJHhaj2cKsJL9@OmLyv35dQv7^XPheHMI1?1(GD}ij){II4psbFdI zxHNB+0yX%0+XhhD!w~uF$WF*W{%GZYdS~E(s_KJ^UmbY6ozI9Nmze}qm9%(Sd+ zxiPnLl&u*lclFa;JL8M`J+mNMzLaERk+1;|xr=uQ)G=|1g&{U~SoacKlMxWvNJUw9 za(^ZmQ;G5=IsiiefP%JbqFX1&&K3O{vN`>W)36c~0bXe+C-C#!cT{s%##Y)t<46+w z@6Pg<=#wv@M4Q2h`c_q2D-ecP>^utX($Fa1Av(E`yyifhLeNdau@ago^3N@K+;hu| z3fzp;Vopn905ct=Y-(t0Up^;Cx1S~?^QQgSroeNS)4P;<11lR62o`0C63nfz3oa=E zS<|nCm}wI)FYTTHTlgcjrbnS9>gBi0UtyI>oM&vcQdg#Rl*y zmks>c{WB9@o?S{o<+wF!mbV6!wV{paHMtj~Ei7$qP3z zi!JD$JHq54(w{GIyqJ4D(PN26iqA>c?pvN!OQ+DUfFy=HMAW#*s`fVrgrep9 zd~Z7CbA5L|9E%s)@iSmEklJ6-Cqz$)+Ds3D<#@bYVqbuBojb#7T-nsb(7+uP$U9(?72wm`(y6(?s&UR zzVqxcu(X}(5&}%QCXYo9-XRuvn38*2I=s9s5ge!HSXgk&GdJAHTkRzdqoB;yi-Dw} z(O(Tozni~Ab43M~FZ}{Z_kRt5SFDYVx-#kJzE|vZ{wHZA^2?W9DS=#kQyc|z&CweThB~C4m>=JA; zG@F4VJWL^oMk>h~SGfAfhxU+vZy_J0rN<^Fj*Zr6UCy@oJ?G(?5YZsNP*z|t1y<`# z*1erdyX9KUFnOSivbf;^a>^J_b|>Lm+Sd6z+*fXZU&kcGJ|Yjh4e$LFX*Vft{4oJz zHQw_-D^Xt6@&f|Gh0faGYWup` zVd|`Q*AKr*Q@$)@%=gW1&_=8@{a}}2_-*Y#efsA_z&K?#Iu|oLaSG&v6QZ>Pf`VL- z)|jx;ZUlg75KVCBnS0A@zevg8V-aFsL3#;gY(*K_!$j*lSnB2n56tNP1mMa2$*|xw z3_^N87geZyC614g?c^8}Kt4pI$^wP7T3NN(Yk55|EK4J|Q7@hZO=D=LD+7ATD*`df9 z<3{Oorcet=FR(-UWj-CGOla`MOA;o`gB4RjgRecGJIy=r;Q_Y>&xP2y_>}Toxw?H8 zAX$?Sp!}dxcCEemvm9J?&$_UVNok9Db|5;ge0%pqmYDOskD9eBV#XEg^wCL`G8P}C zp><#xX=xGSRE17W1endwFWQa&;^b{gJ@%7^=w~thONl8Yv}54I!i0jH>2GyQFb&#wNtxRZH$%SUdE4eOAy4 zt4V{>>&c*EL-4n%x60>T&?q}o6gO4wCXEQ(zTFgcA;}Vr#y~hW$K2K>g}JS)Z3=KU#|dB( z;%3(#t?M7+B>?y|f^bR9R|tvz($70m2ILx#oYK!wfu+-Slu}}u^B(Lj3kgPGg!O}PL;u7#c^Cy$u^$h(fm z`6XXkIln$Li=isA=z1*NG)cjWK+GWT)}=did?GPnw~-9QB7Z9uGZS$TRthijnd>bM zS!<1^Q<3y&OD^;-IPe#C!}2#k9o|kj8#4T8LL+Ihsj~c7RWD00sHrwO8+9ReBy)rR zv={DbdqNq(LBz-vFM)|a2P{;G_) z*C&9}o9fS(+s;r{(RNw#Q39`$h17dpuCUV~ZnArWLakOQ*SEKaU7U>kq_4JrWN2_9 z&z@JTqvz%>vew{>(lx@aM!vXuH9%Tnti8rG&NPNGP3M@$;jBYY*3KBA`G}OBDPqc` zso40e2|7HCgU%Oyxwzu5`E9Bzpv=(q+@H!V99}C}IZPE$!=ExR*D>=vZ~e{PBCENl z+2!T~!b(Bux+A?H8C*zOSS$x393;Qn7kutbn@QkzE|PKI+S-87lTRa4MQqqHwfkAY zmoLcoVU~|vK^;wIP%qoya2EJ*`RCOr#aL&X)T|vt;^=&ASNZnv30lA89TmCI_=n8D zbdDYI0=p}i74l{_pFNwJc)Y645eoA?^YCSan(o_yK4K+?i{IP6%#{LKYd;(EZ`&vh zPF1zWsTqedARAk)&0FUscf2#?!7OiLfXQTO`L&HQ2*n8M%eHKYE3a^i?4qTAJnbym zkWjZbD^v|cnK~bzpGC|w5c8B8{2v_66jUv=Pg<|3G=tG`o0i_C_)INv$akGg61IY2 zWZ=`N{wM$ z5t1_p(ot`8o9IR=v5R>KIc8|`hP9ty!X}s!F~zHcF8v9Ameytbc5zNkH3b@-Sk@TZ z6$H@FG0^uhy>M_$qA!0IW4KvgfI4 z8+ul891&l5ax2$)JY2SODFdWkPZAbP17K{}KgU@jY~#67RfiqJLrgx zXT0A5gPMFfUG-*uK^dWp(2wUck6A(NhwXH4lRqvKI_$TDUVLRw4~-)GLy2v zZFlUcq^bI^qL}PR!{W@r^%bj61wq{ui6o+EEC8Uy3ixS(819fM2D2njOlMMcp{@y& z%2l#o6Gl9Zm<{NfQ0%sJFMm`}*Ry^G5eJaUwKesPS z@!jF!9l7q{v_2~l4g>L3omOA`KQMI(0Z>e_+bTInjHXV`0@OW?J^yWh_e}yO10PqJ>FNIoM!6}FL%Q>^Fn4sIU&t=3 z!*kJVZoXoz^5mV7UCN0xKRvNvJ;T~O;3HkVWc6A|;@YLfd(1CJJ!2c(Mm-+j7NaME zCew$1=8p_oU?+tixrdKcU!)9Xv^9zyNxsgkzK^H$0Y;H`pz3Wbxk@R*g$=M1R7r?GCnLo*SN}VZuMI2mC1+f3r*ks`- zyNk_}^CPT`5F?_+^G93XHWDGiS@`pnPr5n%isMNh=)aAuE3s;@W;rrV9!bgs|6MCK%~O3f&3J28;+yl^+@n9 zmn^`|#Q0GXsekvZ7e}$yD~Cd|C8R+WUwc2UmUi2y8l`|K^0gNAvyuLIV2_PQA$Rh5 zvBsM-wG=UV|y!iAghzyukW|HL=SiE~8h^6Bno zm?lQvXJ{yHXm^!AfxK{VZIiP31(g>+lSL{7V- z;qZO}cRlLD#N#g|m=3%_Ew8GXep}aZB3FvR$fNHIbS+6WOBAb8qWY=p2lqQ6Lg7Hi zEh6{gOuuJ!4iD8X9et^|5S#AlX2MH=F4RigzP&i}0k?dOhR27es*fn}i;qE$&ZKDb z?dOe347n232lqK;xRI%IQ7IzEJyXikiKa}g=DODB`Ho@!xGi=7^w>cF|NH#jS6-R{ z0-ZA7cjLJZ=RzQH*-Yh0v)Gw7@uHlpNm&Sc8&ktqUyC`Ss%0&Bd4|PDy&+%jdgCRw z0JE)ZBj(V>2>r`dKLnsQg|XA>%*X>k?`}$gjUL#q%B6kGw;&1fN$MtLssbS=o3)e& zw79}7D{`!Wsm zSa5XBrt;N+#fbTuB-TD31hn@5HWHTgO498zX#^F?DPSEvyhw#_6ZTrPgd2k;hgBH5 zedy5f(+C+U&DtgV-ki`$XDo{lPhO)FCz4@o)bnvKCv=s`L7x_DM6W!*3@r&jm*XxD zfM6_97UbP0*E|oNqbi;DemwZ~UgHp{vX*xx$V#I5cdR$c6Wx#fa-EucIYIt>IE*8} ztW${nwo#U0)H|^Noea~m%YZ|^#w{<9@)tw4&}~}R6+i-%_`1ruHBs*&#*RFBdN~=4 zOdLnpr-g~KQZ4|gC^uBM-0e*aWr)n%!4>5bH-#&VL!aD;`Ue7z5<*Iz<#{9fZ~&g; zr^6M&F*6O61nfKc!4#Q_;CIzinNAneUZCA2?D9R1f#U6d?~V)36WkR!a~%;r@53N! zP&Km@6`$y6!TCD3l!|q4cz0m@_=>!nmdF9nWjW8aNTR*W_&}zj{m@QIu6)A5?TPcy zkaVvAO3ceuRi8f}`HT3mNs6S!-2?8kjLZQj^1sJFUN!jq@A3aQ{U3hq->x#j8lTN^ zj*jj%>A@ewCmi;KmhR6x{F>D`90mw#AOi;(Lt%)Q=qJ*C{HLj~FZL*-i4=egI#abHbWW?whkBGl)(`eL=(tC5`c;Uak*gMI*989X<9|K9hIwTM4HzrH=VfcZm41H@bg5|FABciM!4S~$ zk8mIP!biWmju+vfSm)mRoa1}DsoKf%s|nX*=T=U z!Mle{az)-h$FFg!LqK{eKm@}>lB-?8bMr98K*!<2C?M-c07NYv5=WAxgl;cq8UA8JSotmXIofozB9kxh$*H_vyn#T##d6PU z0$N#{R?98WA2+VJkf@@&g)oxPd+r~btS{zH)+%%%Td fPOwq3bnongru-c*RX@)|;140IB9kL+`tpAO(C)jB literal 0 HcmV?d00001 diff --git a/images/membre-v1.1.png b/images/membre-v1.1.png new file mode 100644 index 0000000000000000000000000000000000000000..0a32291dc2280fa40faa0d7777b6f31fa354e799 GIT binary patch literal 41441 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 HT1EaBZ# Date: Mon, 10 May 2021 16:02:39 +0200 Subject: [PATCH 20/57] change permissions on files and directories --- scripts/install | 12 +++++++++++- scripts/upgrade | 13 +++++++++++-- 2 files changed, 22 insertions(+), 3 deletions(-) diff --git a/scripts/install b/scripts/install index ca5c396..97081a7 100644 --- a/scripts/install +++ b/scripts/install @@ -86,7 +86,17 @@ ynh_add_fpm_config --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependenc #================================================= chown -R $app:$app $final_path -chmod 755 $final_path +chmod 400 config.dist.php config.local.php index.php sous-domaine.html VERSION +find $final_path/srcipts -type d -exec chmod 500 {} + +find $final_path/srcipts -type f -exec chmod 400 {} + +find $final_path/templates -type d -exec chmod 500 {} + +find $final_path/templates -type f -exec chmod 400 {} + +find $final_path/include -type d -exec chmod 500 {} + +find $final_path/include -type f -exec chmod 400 {} + +find $final_path/data -type d -exec chmod 700 {} + +find $final_path/data -type f -exec chmod 600 {} + +find /var/www/garradin/www -type d -exec chmod 755 {} + +find /var/www/garradin/www -type f -exec chmod 644 {} + #================================================= # SETUP SSOWAT diff --git a/scripts/upgrade b/scripts/upgrade index 5a3d7c1..f69a3fa 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -207,8 +207,17 @@ fi # Set permissions on app files chown -R $app:$app $final_path -chmod 755 $final_path - +chmod 400 config.dist.php config.local.php index.php sous-domaine.html VERSION +find $final_path/srcipts -type d -exec chmod 500 {} + +find $final_path/srcipts -type f -exec chmod 400 {} + +find $final_path/templates -type d -exec chmod 500 {} + +find $final_path/templates -type f -exec chmod 400 {} + +find $final_path/include -type d -exec chmod 500 {} + +find $final_path/include -type f -exec chmod 400 {} + +find $final_path/data -type d -exec chmod 700 {} + +find $final_path/data -type f -exec chmod 600 {} + +find /var/www/garradin/www -type d -exec chmod 755 {} + +find /var/www/garradin/www -type f -exec chmod 644 {} + #================================================= # RELOAD NGINX #================================================= From 056e480ba11d5afaa048810f857ae159f47f18dc Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Mon, 10 May 2021 16:18:18 +0200 Subject: [PATCH 21/57] syntax error --- scripts/install | 4 ++-- scripts/upgrade | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/scripts/install b/scripts/install index 97081a7..49800b9 100644 --- a/scripts/install +++ b/scripts/install @@ -87,8 +87,8 @@ ynh_add_fpm_config --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependenc chown -R $app:$app $final_path chmod 400 config.dist.php config.local.php index.php sous-domaine.html VERSION -find $final_path/srcipts -type d -exec chmod 500 {} + -find $final_path/srcipts -type f -exec chmod 400 {} + +find $final_path/scripts -type d -exec chmod 500 {} + +find $final_path/scripts -type f -exec chmod 400 {} + find $final_path/templates -type d -exec chmod 500 {} + find $final_path/templates -type f -exec chmod 400 {} + find $final_path/include -type d -exec chmod 500 {} + diff --git a/scripts/upgrade b/scripts/upgrade index 0998e38..58e97ec 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -218,6 +218,7 @@ find $final_path/data -type d -exec chmod 700 {} + find $final_path/data -type f -exec chmod 600 {} + find /var/www/garradin/www -type d -exec chmod 755 {} + find /var/www/garradin/www -type f -exec chmod 644 {} + + #================================================= # RELOAD NGINX #================================================= From 936baa45782d6f0b686f4a91ac74b9bf45421ae7 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Mon, 10 May 2021 16:19:10 +0200 Subject: [PATCH 22/57] syntax error --- scripts/upgrade | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/upgrade b/scripts/upgrade index 58e97ec..41dd199 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -208,8 +208,8 @@ fi # Set permissions on app files chown -R $app:$app $final_path chmod 400 config.dist.php config.local.php index.php sous-domaine.html VERSION -find $final_path/srcipts -type d -exec chmod 500 {} + -find $final_path/srcipts -type f -exec chmod 400 {} + +find $final_path/scripts -type d -exec chmod 500 {} + +find $final_path/scripts -type f -exec chmod 400 {} + find $final_path/templates -type d -exec chmod 500 {} + find $final_path/templates -type f -exec chmod 400 {} + find $final_path/include -type d -exec chmod 500 {} + From f04e6bcf7d2d96b98d9de30a74be0a7b35c59c42 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Mon, 10 May 2021 16:39:34 +0200 Subject: [PATCH 23/57] no need to copy the whole ynh_install_php helper --- scripts/_common.sh | 336 --------------------------------------------- 1 file changed, 336 deletions(-) diff --git a/scripts/_common.sh b/scripts/_common.sh index f6fd9f8..c350c4f 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -17,343 +17,7 @@ extra_php_dependencies="php${YNH_PHP_VERSION}-sqlite3 php${YNH_PHP_VERSION}-gd p #================================================= # EXPERIMENTAL HELPERS #================================================= -# Install another version of php. -# -# usage: ynh_install_php --phpversion=phpversion [--package=packages] -# | arg: -v, --phpversion - Version of php to install. -# | arg: -p, --package - Additionnal php packages to install -ynh_install_php () { - # Declare an array to define the options of this helper. - local legacy_args=vp - declare -Ar args_array=( [v]=phpversion= [p]=package= ) - local phpversion - local package - # Manage arguments with getopts - ynh_handle_getopts_args "$@" - package=${package:-} - # Store phpversion into the config of this app - ynh_app_setting_set $app phpversion $phpversion - - if [ "$phpversion" == "7.3" ] - then - ynh_die "Do not use ynh_install_php to install php7.3" - fi - - # Store the ID of this app and the version of php requested for it - echo "$YNH_APP_INSTANCE_NAME:$phpversion" | tee --append "/etc/php/ynh_app_version" - # Add an extra repository for those packages - ynh_install_extra_repo --repo="https://packages.sury.org/php/ $(lsb_release -sc) main" --key="https://packages.sury.org/php/apt.gpg" --priority=995 --name=extra_php_version - - # Install requested dependencies from this extra repository. - # Install php-fpm first, otherwise php will install apache as a dependency. - ynh_add_app_dependencies --package="php${phpversion}-fpm" - ynh_add_app_dependencies --package="php$phpversion php${phpversion}-common $package" - - # Set php7.3 back as the default version for php-cli. - update-alternatives --set php /usr/bin/php7.3 - - # Pin this extra repository after packages are installed to prevent sury of doing shit - ynh_pin_repo --package="*" --pin="origin \"packages.sury.org\"" --priority=200 --name=extra_php_version - ynh_pin_repo --package="php7.3*" --pin="origin \"packages.sury.org\"" --priority=600 --name=extra_php_version --append - # Advertise service in admin panel - yunohost service add php${phpversion}-fpm --log "/var/log/php${phpversion}-fpm.log" -} -# Remove the specific version of php used by the app. -# -# usage: ynh_install_php -ynh_remove_php () { - # Get the version of php used by this app - local phpversion=$(ynh_app_setting_get $app phpversion) - if [ "$phpversion" == "7.3" ] || [ -z "$phpversion" ] - then - if [ "$phpversion" == "7.3" ] - then - ynh_print_err "Do not use ynh_remove_php to install php7.3" - fi - return 0 - fi - # Remove the line for this app - sed --in-place "/$YNH_APP_INSTANCE_NAME:$phpversion/d" "/etc/php/ynh_app_version" - # If no other app uses this version of php, remove it. - if ! grep --quiet "$phpversion" "/etc/php/ynh_app_version" - then - # Purge php dependences for this version. - ynh_package_autopurge "php$phpversion php${phpversion}-fpm php${phpversion}-common" - # Remove the service from the admin panel - yunohost service remove php${phpversion}-fpm - fi - # If no other app uses alternate php versions, remove the extra repo for php - if [ ! -s "/etc/php/ynh_app_version" ] - then - ynh_secure_remove /etc/php/ynh_app_version - fi -} -#================================================= -# FUTURE OFFICIAL HELPERS -#================================================= -# Pin a repository. -# -# usage: ynh_pin_repo --package=packages --pin=pin_filter [--priority=priority_value] [--name=name] [--append] -# | arg: -p, --package - Packages concerned by the pin. Or all, *. -# | arg: -i, --pin - Filter for the pin. -# | arg: -p, --priority - Priority for the pin -# | arg: -n, --name - Name for the files for this repo, $app as default value. -# | arg: -a, --append - Do not overwrite existing files. -# -# See https://manpages.debian.org/stretch/apt/apt_preferences.5.en.html for information about pinning. -# -ynh_pin_repo () { - # Declare an array to define the options of this helper. - local legacy_args=pirna - declare -Ar args_array=( [p]=package= [i]=pin= [r]=priority= [n]=name= [a]=append ) - local package - local pin - local priority - local name - local append - # Manage arguments with getopts - ynh_handle_getopts_args "$@" - package="${package:-*}" - priority=${priority:-50} - name="${name:-$app}" - append=${append:-0} - if [ $append -eq 1 ] - then - append="tee -a" - else - append="tee" - fi - mkdir -p "/etc/apt/preferences.d" - echo "Package: $package -Pin: $pin -Pin-Priority: $priority -" \ - | $append "/etc/apt/preferences.d/$name" -} - -# Add a repository. -# -# usage: ynh_add_repo --uri=uri --suite=suite --component=component [--name=name] [--append] -# | arg: -u, --uri - Uri of the repository. -# | arg: -s, --suite - Suite of the repository. -# | arg: -c, --component - Component of the repository. -# | arg: -n, --name - Name for the files for this repo, $app as default value. -# | arg: -a, --append - Do not overwrite existing files. -# -# Example for a repo like deb http://forge.yunohost.org/debian/ stretch stable -# uri suite component -# ynh_add_repo --uri=http://forge.yunohost.org/debian/ --suite=stretch --component=stable -# -ynh_add_repo () { - # Declare an array to define the options of this helper. - local legacy_args=uscna - declare -Ar args_array=( [u]=uri= [s]=suite= [c]=component= [n]=name= [a]=append ) - local uri - local suite - local component - local name - local append - # Manage arguments with getopts - ynh_handle_getopts_args "$@" - name="${name:-$app}" - append=${append:-0} - if [ $append -eq 1 ] - then - append="tee -a" - else - append="tee" - fi - mkdir -p "/etc/apt/sources.list.d" - # Add the new repo in sources.list.d - echo "deb $uri $suite $component" \ - | $append "/etc/apt/sources.list.d/$name.list" -} -# Add an extra repository correctly, pin it and get the key. -# -# usage: ynh_install_extra_repo --repo="repo" [--key=key_url] [--priority=priority_value] [--name=name] [--append] -# | arg: -r, --repo - Complete url of the extra repository. -# | arg: -k, --key - url to get the public key. -# | arg: -p, --priority - Priority for the pin -# | arg: -n, --name - Name for the files for this repo, $app as default value. -# | arg: -a, --append - Do not overwrite existing files. -ynh_install_extra_repo () { - # Declare an array to define the options of this helper. - local legacy_args=rkpna - declare -Ar args_array=( [r]=repo= [k]=key= [p]=priority= [n]=name= [a]=append ) - local repo - local key - local priority - local name - local append - # Manage arguments with getopts - ynh_handle_getopts_args "$@" - name="${name:-$app}" - append=${append:-0} - key=${key:-0} - priority=${priority:-} - if [ $append -eq 1 ] - then - append="--append" - wget_append="tee -a" - else - append="" - wget_append="tee" - fi - # Split the repository into uri, suite and components. - # Remove "deb " at the beginning of the repo. - repo="${repo#deb }" - # Get the uri - local uri="$(echo "$repo" | awk '{ print $1 }')" - # Get the suite - local suite="$(echo "$repo" | awk '{ print $2 }')" - # Get the components - local component="${repo##$uri $suite }" - # Add the repository into sources.list.d - ynh_add_repo --uri="$uri" --suite="$suite" --component="$component" --name="$name" $append - # Pin the new repo with the default priority, so it won't be used for upgrades. - # Build $pin from the uri without http and any sub path - local pin="${uri#*://}" - pin="${pin%%/*}" - # Set a priority only if asked - if [ -n "$priority" ] - then - priority="--priority=$priority" - fi - ynh_pin_repo --package="*" --pin="origin \"$pin\"" $priority --name="$name" $append - # Get the public key for the repo - if [ -n "$key" ] - then - mkdir -p "/etc/apt/trusted.gpg.d" - wget -q "$key" -O - | gpg --dearmor | $wget_append /etc/apt/trusted.gpg.d/$name.gpg > /dev/null - fi - # Update the list of package with the new repo - ynh_package_update -} -# Remove an extra repository and the assiociated configuration. -# -# usage: ynh_remove_extra_repo [--name=name] -# | arg: -n, --name - Name for the files for this repo, $app as default value. -ynh_remove_extra_repo () { - # Declare an array to define the options of this helper. - local legacy_args=n - declare -Ar args_array=( [n]=name= ) - local name - # Manage arguments with getopts - ynh_handle_getopts_args "$@" - name="${name:-$app}" - ynh_secure_remove "/etc/apt/sources.list.d/$name.list" - ynh_secure_remove "/etc/apt/preferences.d/$name" - ynh_secure_remove "/etc/apt/trusted.gpg.d/$name.gpg" - ynh_secure_remove "/etc/apt/trusted.gpg.d/$name.asc" - # Update the list of package to exclude the old repo - ynh_package_update -} -# Install packages from an extra repository properly. -# -# usage: ynh_install_extra_app_dependencies --repo="repo" --package="dep1 dep2" [--key=key_url] [--name=name] -# | arg: -r, --repo - Complete url of the extra repository. -# | arg: -p, --package - The packages to install from this extra repository -# | arg: -k, --key - url to get the public key. -# | arg: -n, --name - Name for the files for this repo, $app as default value. -ynh_install_extra_app_dependencies () { - # Declare an array to define the options of this helper. - local legacy_args=rpkn - declare -Ar args_array=( [r]=repo= [p]=package= [k]=key= [n]=name= ) - local repo - local package - local key - local name - # Manage arguments with getopts - ynh_handle_getopts_args "$@" - name="${name:-$app}" - key=${key:-0} - # Set a key only if asked - if [ -n "$key" ] - then - key="--key=$key" - fi - # Add an extra repository for those packages - ynh_install_extra_repo --repo="$repo" $key --priority=995 --name=$name - # Install requested dependencies from this extra repository. - ynh_add_app_dependencies --package="$package" - # Remove this extra repository after packages are installed - ynh_remove_extra_repo --name=$app -} -#================================================= -# patched version of ynh_install_app_dependencies to be used with ynh_add_app_dependencies -# Define and install dependencies with a equivs control file -# This helper can/should only be called once per app -# -# usage: ynh_install_app_dependencies dep [dep [...]] -# | arg: dep - the package name to install in dependence -# You can give a choice between some package with this syntax : "dep1|dep2" -# Example : ynh_install_app_dependencies dep1 dep2 "dep3|dep4|dep5" -# This mean in the dependence tree : dep1 & dep2 & (dep3 | dep4 | dep5) -# -# Requires YunoHost version 2.6.4 or higher. -ynh_install_app_dependencies () { - local dependencies=$@ - dependencies="$(echo "$dependencies" | sed 's/\([^\<=\>]\)\ \([^(]\)/\1, \2/g')" - dependencies=${dependencies//|/ | } - local manifest_path="../manifest.json" - if [ ! -e "$manifest_path" ]; then - manifest_path="../settings/manifest.json" # Into the restore script, the manifest is not at the same place - fi - local version=$(grep '\"version\": ' "$manifest_path" | cut -d '"' -f 4) # Retrieve the version number in the manifest file. - if [ ${#version} -eq 0 ]; then - version="1.0" - fi - local dep_app=${app//_/-} # Replace all '_' by '-' - # Handle specific versions - if [[ "$dependencies" =~ [\<=\>] ]] - then - # Replace version specifications by relationships syntax - # https://www.debian.org/doc/debian-policy/ch-relationships.html - # Sed clarification - # [^(\<=\>] ignore if it begins by ( or < = >. To not apply twice. - # [\<=\>] matches < = or > - # \+ matches one or more occurence of the previous characters, for >= or >>. - # [^,]\+ matches all characters except ',' - # Ex: package>=1.0 will be replaced by package (>= 1.0) - dependencies="$(echo "$dependencies" | sed 's/\([^(\<=\>]\)\([\<=\>]\+\)\([^,]\+\)/\1 (\2 \3)/g')" - fi - cat > /tmp/${dep_app}-ynh-deps.control << EOF # Make a control file for equivs-build -Section: misc -Priority: optional -Package: ${dep_app}-ynh-deps -Version: ${version} -Depends: ${dependencies} -Architecture: all -Description: Fake package for $app (YunoHost app) dependencies - This meta-package is only responsible of installing its dependencies. -EOF - ynh_package_install_from_equivs /tmp/${dep_app}-ynh-deps.control \ - || ynh_die --message="Unable to install dependencies" # Install the fake package and its dependencies - rm /tmp/${dep_app}-ynh-deps.control - ynh_app_setting_set --app=$app --key=apt_dependencies --value="$dependencies" -} -ynh_add_app_dependencies () { - # Declare an array to define the options of this helper. - local legacy_args=pr - declare -Ar args_array=( [p]=package= [r]=replace) - local package - local replace - # Manage arguments with getopts - ynh_handle_getopts_args "$@" - replace=${replace:-0} - local current_dependencies="" - if [ $replace -eq 0 ] - then - local dep_app=${app//_/-} # Replace all '_' by '-' - if ynh_package_is_installed --package="${dep_app}-ynh-deps" - then - current_dependencies="$(dpkg-query --show --showformat='${Depends}' ${dep_app}-ynh-deps) " - fi - current_dependencies=${current_dependencies// | /|} - fi - ynh_install_app_dependencies "${current_dependencies}${package}" -} #================================================= # FUTURE OFFICIAL HELPERS #================================================= From 8b4e6f262966d03b59a50ee7e3cf6c8f18a7b21c Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Mon, 10 May 2021 16:44:26 +0200 Subject: [PATCH 24/57] upgrade to 1.1.5 version --- 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 74b71f9..01473a6 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 Garradin is a free association managing software. -**Shipped version:** 1.1.4 +**Shipped version:** 1.1.5 ## Screenshots diff --git a/README_fr.md b/README_fr.md index 0e3b996..f8c225b 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 Garradin est un logiciel libre de gestion associative. il permet de gérer des membres. -**Version incluse :** 1.1.4 +**Version incluse :** 1.1.5 ## Captures d'écran diff --git a/conf/app.src b/conf/app.src index c79ba67..5766ae3 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://fossil.kd2.org/garradin/uv/garradin-1.1.4.tar.bz2 -SOURCE_SUM=b6f3088d063185c17bb63f6b33ee5f3ba481a28f73931060fbc5e844e1a56bf9 +SOURCE_URL=https://fossil.kd2.org/garradin/uv/garradin-1.1.5.tar.bz2 +SOURCE_SUM=462bceee5981838bdd8d37f15eeab991e6ba8ca90c798214a0d968a67d9b7d28 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.bz2 SOURCE_IN_SUBDIR=true diff --git a/manifest.json b/manifest.json index f6aac2d..d3b45a2 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Software to manage association", "fr": "Logiciel libre de gestion d'association" }, - "version": "1.1.4~ynh2", + "version": "1.1.5~ynh1", "url": "http://garradin.eu/a-propos/", "license": "GPL-3.0-or-later", "maintainer": { From 015c70b356de397d4bf19e47b910aef6346269cf Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Mon, 10 May 2021 17:18:41 +0200 Subject: [PATCH 25/57] fix url files --- scripts/install | 2 +- scripts/upgrade | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/install b/scripts/install index 49800b9..cd84391 100644 --- a/scripts/install +++ b/scripts/install @@ -86,7 +86,7 @@ ynh_add_fpm_config --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependenc #================================================= chown -R $app:$app $final_path -chmod 400 config.dist.php config.local.php index.php sous-domaine.html VERSION +chmod 400 $final_path/config.dist.php $final_path/config.local.php $final_path/index.php $final_path/sous-domaine.html $final_path/VERSION find $final_path/scripts -type d -exec chmod 500 {} + find $final_path/scripts -type f -exec chmod 400 {} + find $final_path/templates -type d -exec chmod 500 {} + diff --git a/scripts/upgrade b/scripts/upgrade index 41dd199..dce0dd0 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -207,7 +207,7 @@ fi # Set permissions on app files chown -R $app:$app $final_path -chmod 400 config.dist.php config.local.php index.php sous-domaine.html VERSION +chmod 400 $final_path/config.dist.php $final_path/config.local.php $final_path/index.php $final_path/sous-domaine.html $final_path/VERSION find $final_path/scripts -type d -exec chmod 500 {} + find $final_path/scripts -type f -exec chmod 400 {} + find $final_path/templates -type d -exec chmod 500 {} + From a8ff621f3b27e073ff05b89434de341393e35ec2 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Mon, 10 May 2021 17:30:52 +0200 Subject: [PATCH 26/57] adjust permission to edit config.local.php --- scripts/install | 3 ++- scripts/upgrade | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/scripts/install b/scripts/install index cd84391..01e273a 100644 --- a/scripts/install +++ b/scripts/install @@ -86,7 +86,8 @@ ynh_add_fpm_config --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependenc #================================================= chown -R $app:$app $final_path -chmod 400 $final_path/config.dist.php $final_path/config.local.php $final_path/index.php $final_path/sous-domaine.html $final_path/VERSION +chmod 400 $final_path/config.dist.php $final_path/index.php $final_path/sous-domaine.html $final_path/VERSION +chmod 644 $final_path/config.local.php find $final_path/scripts -type d -exec chmod 500 {} + find $final_path/scripts -type f -exec chmod 400 {} + find $final_path/templates -type d -exec chmod 500 {} + diff --git a/scripts/upgrade b/scripts/upgrade index dce0dd0..01f363b 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -207,7 +207,8 @@ fi # Set permissions on app files chown -R $app:$app $final_path -chmod 400 $final_path/config.dist.php $final_path/config.local.php $final_path/index.php $final_path/sous-domaine.html $final_path/VERSION +chmod 400 $final_path/config.dist.php $final_path/index.php $final_path/sous-domaine.html $final_path/VERSION +chmod 644 $final_path/config.local.php find $final_path/scripts -type d -exec chmod 500 {} + find $final_path/scripts -type f -exec chmod 400 {} + find $final_path/templates -type d -exec chmod 500 {} + From 428ab977c2e29a28eb5d207d15ca5e93c4731a14 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Mon, 10 May 2021 17:56:22 +0200 Subject: [PATCH 27/57] order to set permissions and user app --- scripts/install | 35 ++++++++++++++++++----------------- 1 file changed, 18 insertions(+), 17 deletions(-) diff --git a/scripts/install b/scripts/install index 01e273a..6591840 100644 --- a/scripts/install +++ b/scripts/install @@ -81,23 +81,6 @@ ynh_script_progression --message="Configuring PHP-FPM..." --weight=5 ynh_add_fpm_config --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependencies" #phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) -#================================================= -# Files owned by user app -#================================================= - -chown -R $app:$app $final_path -chmod 400 $final_path/config.dist.php $final_path/index.php $final_path/sous-domaine.html $final_path/VERSION -chmod 644 $final_path/config.local.php -find $final_path/scripts -type d -exec chmod 500 {} + -find $final_path/scripts -type f -exec chmod 400 {} + -find $final_path/templates -type d -exec chmod 500 {} + -find $final_path/templates -type f -exec chmod 400 {} + -find $final_path/include -type d -exec chmod 500 {} + -find $final_path/include -type f -exec chmod 400 {} + -find $final_path/data -type d -exec chmod 700 {} + -find $final_path/data -type f -exec chmod 600 {} + -find /var/www/garradin/www -type d -exec chmod 755 {} + -find /var/www/garradin/www -type f -exec chmod 644 {} + #================================================= # SETUP SSOWAT @@ -125,6 +108,24 @@ else ynh_replace_string --match_string="//const WWW_URI = '/asso/';" --replace_string="const WWW_URI = '$path_url/';" --target_file="$final_path/config.local.php" fi +#================================================= +# Files owned by user app +#================================================= + +chown -R $app:$app $final_path +chmod 400 $final_path/config.dist.php $final_path/index.php $final_path/sous-domaine.html $final_path/VERSION +chmod 644 $final_path/config.local.php +find $final_path/scripts -type d -exec chmod 500 {} + +find $final_path/scripts -type f -exec chmod 400 {} + +find $final_path/templates -type d -exec chmod 500 {} + +find $final_path/templates -type f -exec chmod 400 {} + +find $final_path/include -type d -exec chmod 500 {} + +find $final_path/include -type f -exec chmod 400 {} + +find $final_path/data -type d -exec chmod 700 {} + +find $final_path/data -type f -exec chmod 600 {} + +find /var/www/garradin/www -type d -exec chmod 755 {} + +find /var/www/garradin/www -type f -exec chmod 644 {} + + #================================================= # RELOAD NGINX #================================================= From 66ffadc742d510b48d4d49b898876c0f13b5cfd9 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Mon, 10 May 2021 18:30:41 +0200 Subject: [PATCH 28/57] change the order of e --- scripts/install | 32 ++++++++++++++++---------------- scripts/upgrade | 17 ++++++++++------- 2 files changed, 26 insertions(+), 23 deletions(-) diff --git a/scripts/install b/scripts/install index 6591840..28232f8 100644 --- a/scripts/install +++ b/scripts/install @@ -64,6 +64,8 @@ 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" +chown -R $app:$app $final_path + #================================================= # NGINX CONFIGURATION #================================================= @@ -83,19 +85,10 @@ ynh_add_fpm_config --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependenc #================================================= -# SETUP SSOWAT +# ADD A CONFIGURATION #================================================= -ynh_script_progression --message="Configuring permissions..." --weight=8 +ynh_script_progression --message="Adding a configuration file..." --weight=5 -# Make app public if necessary -if [ $is_public -eq 1 ] -then - ynh_permission_update --permission "main" --add "visitors" -fi - -#================================================= -# MODIFY A CONFIG FILE -#================================================= # copy config.dist.php creating config.local.php cp -a $final_path/config.dist.php $final_path/config.local.php # create a key for the secret key CSFR; @@ -108,11 +101,7 @@ else ynh_replace_string --match_string="//const WWW_URI = '/asso/';" --replace_string="const WWW_URI = '$path_url/';" --target_file="$final_path/config.local.php" fi -#================================================= -# Files owned by user app -#================================================= - -chown -R $app:$app $final_path +# permissions on files and directories chmod 400 $final_path/config.dist.php $final_path/index.php $final_path/sous-domaine.html $final_path/VERSION chmod 644 $final_path/config.local.php find $final_path/scripts -type d -exec chmod 500 {} + @@ -126,6 +115,17 @@ find $final_path/data -type f -exec chmod 600 {} + find /var/www/garradin/www -type d -exec chmod 755 {} + find /var/www/garradin/www -type f -exec chmod 644 {} + +#================================================= +# SETUP SSOWAT +#================================================= +ynh_script_progression --message="Configuring permissions..." --weight=8 + +# Make app public if necessary +if [ $is_public -eq 1 ] +then + ynh_permission_update --permission "main" --add "visitors" +fi + #================================================= # RELOAD NGINX #================================================= diff --git a/scripts/upgrade b/scripts/upgrade index 01f363b..0341ddf 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -111,6 +111,8 @@ then ynh_secure_remove $backup_bdd fi + chown -R $app:$app $final_path + key=$(ynh_string_random --length=50) cp -a $final_path/config.dist.php $final_path/config.local.php ynh_replace_string --match_string="const SECRET_KEY = '3xUhIgGwuovRKOjVsVPQ5yUMfXUSIOX2GKzcebsz5OINrYC50r';" --replace_string="const SECRET_KEY = '$key';" --target_file="$final_path/config.local.php" @@ -119,12 +121,11 @@ then else ynh_replace_string --match_string="//const WWW_URI = '/asso/';" --replace_string="const WWW_URI = '$path_url/';" --target_file="$final_path/config.local.php" fi - chown -R $app:$app $final_path chmod 755 $final_path # Create the visitors permission if needed if [ $is_public -eq 1 ] then - ynh_permission_update --permission="main" --add="visitors" + ynh_permission_update --permission "main" --add "visitors" fi ynh_systemd_action --service_name=nginx --action=reload @@ -192,6 +193,13 @@ then ynh_secure_remove $backup_bdd fi +chown -R $app:$app $final_path + +#================================================= +# ADD A CONFIGURATION +#================================================= +ynh_script_progression --message="Adding a configuration file..." --weight=5 + key=$(ynh_string_random --length=50) cp -a $final_path/config.dist.php $final_path/config.local.php ynh_replace_string --match_string="const SECRET_KEY = '3xUhIgGwuovRKOjVsVPQ5yUMfXUSIOX2GKzcebsz5OINrYC50r';" --replace_string="const SECRET_KEY = '$key';" --target_file="$final_path/config.local.php" @@ -201,12 +209,7 @@ else ynh_replace_string --match_string="//const WWW_URI = '/asso/';" --replace_string="const WWW_URI = '$path_url/';" --target_file="$final_path/config.local.php" fi -#================================================= -# Files owned by user app -#================================================= - # Set permissions on app files -chown -R $app:$app $final_path chmod 400 $final_path/config.dist.php $final_path/index.php $final_path/sous-domaine.html $final_path/VERSION chmod 644 $final_path/config.local.php find $final_path/scripts -type d -exec chmod 500 {} + From 489c4824958e040017dc1ab95b873b939b0bafe5 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Mon, 10 May 2021 21:54:33 +0200 Subject: [PATCH 29/57] change permission in www directory --- scripts/install | 2 +- scripts/upgrade | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/install b/scripts/install index 28232f8..5f8d061 100644 --- a/scripts/install +++ b/scripts/install @@ -112,7 +112,7 @@ find $final_path/include -type d -exec chmod 500 {} + find $final_path/include -type f -exec chmod 400 {} + find $final_path/data -type d -exec chmod 700 {} + find $final_path/data -type f -exec chmod 600 {} + -find /var/www/garradin/www -type d -exec chmod 755 {} + +find /var/www/garradin/www -type d -exec chmod 505 {} + find /var/www/garradin/www -type f -exec chmod 644 {} + #================================================= diff --git a/scripts/upgrade b/scripts/upgrade index 0341ddf..d251201 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -220,7 +220,7 @@ find $final_path/include -type d -exec chmod 500 {} + find $final_path/include -type f -exec chmod 400 {} + find $final_path/data -type d -exec chmod 700 {} + find $final_path/data -type f -exec chmod 600 {} + -find /var/www/garradin/www -type d -exec chmod 755 {} + +find /var/www/garradin/www -type d -exec chmod 505 {} + find /var/www/garradin/www -type f -exec chmod 644 {} + #================================================= From f71f5c6119acd5c8100da2d4272b8d3856df2854 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Thu, 13 May 2021 18:38:02 +0200 Subject: [PATCH 30/57] [autopatch] Update issue and PR templates --- .github/ISSUE_TEMPLATE.md | 55 ++++++++++++++++++++++++++++++++ .github/PULL_REQUEST_TEMPLATE.md | 16 ++++++++++ pull_request_template.md | 14 ++++---- 3 files changed, 78 insertions(+), 7 deletions(-) create mode 100644 .github/ISSUE_TEMPLATE.md create mode 100644 .github/PULL_REQUEST_TEMPLATE.md diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md new file mode 100644 index 0000000..2729a6b --- /dev/null +++ b/.github/ISSUE_TEMPLATE.md @@ -0,0 +1,55 @@ +--- +name: Bug report +about: When creating a bug report, please use the following template to provide all the relevant information and help debugging efficiently. + +--- + +**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!* + - *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 + +*A clear and concise description of what the bug is.* + +### 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 | ...* +- 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`* + +### Steps to reproduce + +- *If you performed a command from the CLI, the command itself is enough. For example:* + ```sh + 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:* + 1. *Go to '...'* + 2. *Click on '...'* + 3. *Scroll down to '...'* + 4. *See error* + +### 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 + +*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 index bf00535..ef70e18 100644 --- a/pull_request_template.md +++ b/pull_request_template.md @@ -1,16 +1,16 @@ ## 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!"* +- [ ] 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) From a5cbfad3dc89a590eca58933f050d3e361203190 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Thu, 13 May 2021 18:49:08 +0200 Subject: [PATCH 31/57] [autopatch] Update issue and PR templates --- .github/ISSUE_TEMPLATE.md | 55 ++++++++++++++++++++++++++++++++ .github/PULL_REQUEST_TEMPLATE.md | 16 ++++++++++ pull_request_template.md | 16 ++++------ 3 files changed, 78 insertions(+), 9 deletions(-) create mode 100644 .github/ISSUE_TEMPLATE.md create mode 100644 .github/PULL_REQUEST_TEMPLATE.md diff --git a/.github/ISSUE_TEMPLATE.md b/.github/ISSUE_TEMPLATE.md new file mode 100644 index 0000000..2729a6b --- /dev/null +++ b/.github/ISSUE_TEMPLATE.md @@ -0,0 +1,55 @@ +--- +name: Bug report +about: When creating a bug report, please use the following template to provide all the relevant information and help debugging efficiently. + +--- + +**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!* + - *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 + +*A clear and concise description of what the bug is.* + +### 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 | ...* +- 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`* + +### Steps to reproduce + +- *If you performed a command from the CLI, the command itself is enough. For example:* + ```sh + 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:* + 1. *Go to '...'* + 2. *Click on '...'* + 3. *Scroll down to '...'* + 4. *See error* + +### 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 + +*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 index b8b0a14..5790981 100644 --- a/pull_request_template.md +++ b/pull_request_template.md @@ -1,18 +1,16 @@ ## 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 ---- -*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* +- [ ] Code finished and ready to be reviewed/tested +- [ ] The fix/enhancement were manually tested (if applicable) -[![Build Status](https://ci-apps-dev.yunohost.org/jenkins/job/garradin_ynh%20PR-NUM-%20(USERNAME)/badge/icon)](https://ci-apps-dev.yunohost.org/jenkins/job/garradin_ynh%20PR-NUM-%20(USERNAME)/) +## 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) \ No newline at end of file From ba0f1b14ce1e663d8bd5435064bf59d02e45557d Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Wed, 2 Jun 2021 19:24:55 +0200 Subject: [PATCH 32/57] update to version 1.6 --- 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 01473a6..a1ac53e 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 Garradin is a free association managing software. -**Shipped version:** 1.1.5 +**Shipped version:** 1.1.6 ## Screenshots diff --git a/README_fr.md b/README_fr.md index f8c225b..e3c1943 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 Garradin est un logiciel libre de gestion associative. il permet de gérer des membres. -**Version incluse :** 1.1.5 +**Version incluse :** 1.1.6 ## Captures d'écran diff --git a/conf/app.src b/conf/app.src index 5766ae3..41f8bd0 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://fossil.kd2.org/garradin/uv/garradin-1.1.5.tar.bz2 -SOURCE_SUM=462bceee5981838bdd8d37f15eeab991e6ba8ca90c798214a0d968a67d9b7d28 +SOURCE_URL=https://fossil.kd2.org/garradin/uv/garradin-1.1.6.tar.bz2 +SOURCE_SUM=be998266e0a0ba67a994db7b0537ed46f6c608704a316398232a8e5b0a9ccaa3 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.bz2 SOURCE_IN_SUBDIR=true diff --git a/manifest.json b/manifest.json index d3b45a2..4d52929 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Software to manage association", "fr": "Logiciel libre de gestion d'association" }, - "version": "1.1.5~ynh1", + "version": "1.1.6~ynh1", "url": "http://garradin.eu/a-propos/", "license": "GPL-3.0-or-later", "maintainer": { From 53c4d83da24321277326c889cf5a81454e0ed6ed Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Wed, 2 Jun 2021 20:09:09 +0200 Subject: [PATCH 33/57] try increase limit size upload files via php-fpm --- conf/nginx.conf | 2 +- conf/php-fpm.conf | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/conf/nginx.conf b/conf/nginx.conf index 6a8bd52..5a033e3 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -25,7 +25,7 @@ location __PATH__/ { } # Increase size limit - client_max_body_size 2M; + #client_max_body_size 2M; # Include SSOWAT user panel. include conf.d/yunohost_panel.conf.inc; diff --git a/conf/php-fpm.conf b/conf/php-fpm.conf index 9be1163..53ef274 100644 --- a/conf/php-fpm.conf +++ b/conf/php-fpm.conf @@ -392,8 +392,8 @@ catch_workers_output = yes ;php_admin_value[memory_limit] = 32M ; Common values to change to increase file upload limit -; php_value[upload_max_filesize] = 50M -; php_value[post_max_size] = 50M +php_value[upload_max_filesize] = 50M +php_value[post_max_size] = 50M ; php_valuemail.add_x_header = Off ; Other common parameters From 7ed5510a944f55ce82085f3d519c81fbbf78b367 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Wed, 2 Jun 2021 20:14:41 +0200 Subject: [PATCH 34/57] back to okconfiguration --- conf/nginx.conf | 2 +- conf/php-fpm.conf | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/conf/nginx.conf b/conf/nginx.conf index 5a033e3..6a8bd52 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -25,7 +25,7 @@ location __PATH__/ { } # Increase size limit - #client_max_body_size 2M; + client_max_body_size 2M; # Include SSOWAT user panel. include conf.d/yunohost_panel.conf.inc; diff --git a/conf/php-fpm.conf b/conf/php-fpm.conf index 53ef274..9be1163 100644 --- a/conf/php-fpm.conf +++ b/conf/php-fpm.conf @@ -392,8 +392,8 @@ catch_workers_output = yes ;php_admin_value[memory_limit] = 32M ; Common values to change to increase file upload limit -php_value[upload_max_filesize] = 50M -php_value[post_max_size] = 50M +; php_value[upload_max_filesize] = 50M +; php_value[post_max_size] = 50M ; php_valuemail.add_x_header = Off ; Other common parameters From 39053684ae14e250496b9f60baf0e222fba91268 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Wed, 2 Jun 2021 20:29:01 +0200 Subject: [PATCH 35/57] update to 1.1.7 --- 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 a1ac53e..4cbbd4a 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 Garradin is a free association managing software. -**Shipped version:** 1.1.6 +**Shipped version:** 1.1.7 ## Screenshots diff --git a/README_fr.md b/README_fr.md index e3c1943..2eeb6af 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 Garradin est un logiciel libre de gestion associative. il permet de gérer des membres. -**Version incluse :** 1.1.6 +**Version incluse :** 1.1.7 ## Captures d'écran diff --git a/conf/app.src b/conf/app.src index 41f8bd0..a57d2f2 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://fossil.kd2.org/garradin/uv/garradin-1.1.6.tar.bz2 -SOURCE_SUM=be998266e0a0ba67a994db7b0537ed46f6c608704a316398232a8e5b0a9ccaa3 +SOURCE_URL=https://fossil.kd2.org/garradin/uv/garradin-1.1.7.tar.bz2 +SOURCE_SUM=f76354aa9cec46611bae309dfb8e3cf13fdc2b3f04b90e51fc24bc15c7fcc145 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.bz2 SOURCE_IN_SUBDIR=true diff --git a/manifest.json b/manifest.json index 4d52929..a3d9b7f 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Software to manage association", "fr": "Logiciel libre de gestion d'association" }, - "version": "1.1.6~ynh1", + "version": "1.1.7~ynh1", "url": "http://garradin.eu/a-propos/", "license": "GPL-3.0-or-later", "maintainer": { From a6202518cba055fca6643bd45dac35f664eba575 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Wed, 2 Jun 2021 20:39:38 +0200 Subject: [PATCH 36/57] back to 1.1.6 because an unknow bug must be resolved --- 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 4cbbd4a..a1ac53e 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 Garradin is a free association managing software. -**Shipped version:** 1.1.7 +**Shipped version:** 1.1.6 ## Screenshots diff --git a/README_fr.md b/README_fr.md index 2eeb6af..e3c1943 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 Garradin est un logiciel libre de gestion associative. il permet de gérer des membres. -**Version incluse :** 1.1.7 +**Version incluse :** 1.1.6 ## Captures d'écran diff --git a/conf/app.src b/conf/app.src index a57d2f2..41f8bd0 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://fossil.kd2.org/garradin/uv/garradin-1.1.7.tar.bz2 -SOURCE_SUM=f76354aa9cec46611bae309dfb8e3cf13fdc2b3f04b90e51fc24bc15c7fcc145 +SOURCE_URL=https://fossil.kd2.org/garradin/uv/garradin-1.1.6.tar.bz2 +SOURCE_SUM=be998266e0a0ba67a994db7b0537ed46f6c608704a316398232a8e5b0a9ccaa3 SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.bz2 SOURCE_IN_SUBDIR=true diff --git a/manifest.json b/manifest.json index a3d9b7f..4d52929 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Software to manage association", "fr": "Logiciel libre de gestion d'association" }, - "version": "1.1.7~ynh1", + "version": "1.1.6~ynh1", "url": "http://garradin.eu/a-propos/", "license": "GPL-3.0-or-later", "maintainer": { From e295c9c942929461fb4c528cb6bcd345784013d6 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Fri, 9 Jul 2021 12:23:04 +0200 Subject: [PATCH 37/57] try last version 1.1.9 --- 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 a1ac53e..9ec37f4 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 Garradin is a free association managing software. -**Shipped version:** 1.1.6 +**Shipped version:** 1.1.9 ## Screenshots diff --git a/README_fr.md b/README_fr.md index e3c1943..1eefcca 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 Garradin est un logiciel libre de gestion associative. il permet de gérer des membres. -**Version incluse :** 1.1.6 +**Version incluse :** 1.1.9 ## Captures d'écran diff --git a/conf/app.src b/conf/app.src index 41f8bd0..1fcd02c 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://fossil.kd2.org/garradin/uv/garradin-1.1.6.tar.bz2 -SOURCE_SUM=be998266e0a0ba67a994db7b0537ed46f6c608704a316398232a8e5b0a9ccaa3 +SOURCE_URL=https://fossil.kd2.org/garradin/uv/garradin-1.1.9.tar.bz2 +SOURCE_SUM=9a6303040ba743e4f16c4a6cdd5e4b44f42e10576151aab75e04b180af8de35c SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.bz2 SOURCE_IN_SUBDIR=true diff --git a/manifest.json b/manifest.json index 4d52929..d7799b3 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Software to manage association", "fr": "Logiciel libre de gestion d'association" }, - "version": "1.1.6~ynh1", + "version": "1.1.9~ynh1", "url": "http://garradin.eu/a-propos/", "license": "GPL-3.0-or-later", "maintainer": { From bd1b1ddb0ececa1114d9317996a990eadda454c0 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Fri, 6 Aug 2021 20:22:56 +0200 Subject: [PATCH 38/57] upgrade next version --- 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 9ec37f4..a1abc22 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 Garradin is a free association managing software. -**Shipped version:** 1.1.9 +**Shipped version:** 1.1.10 ## Screenshots diff --git a/README_fr.md b/README_fr.md index 1eefcca..a1437e6 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 Garradin est un logiciel libre de gestion associative. il permet de gérer des membres. -**Version incluse :** 1.1.9 +**Version incluse :** 1.1.10 ## Captures d'écran diff --git a/conf/app.src b/conf/app.src index 1fcd02c..ea10a5d 100644 --- a/conf/app.src +++ b/conf/app.src @@ -1,5 +1,5 @@ -SOURCE_URL=https://fossil.kd2.org/garradin/uv/garradin-1.1.9.tar.bz2 -SOURCE_SUM=9a6303040ba743e4f16c4a6cdd5e4b44f42e10576151aab75e04b180af8de35c +SOURCE_URL=https://fossil.kd2.org/garradin/uv/garradin-1.1.10.tar.bz2 +SOURCE_SUM=56785921ce99d8424871bf340a3225016fede10345e3ce9fe51e47facc2e88cc SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.bz2 SOURCE_IN_SUBDIR=true diff --git a/manifest.json b/manifest.json index d7799b3..3e46591 100644 --- a/manifest.json +++ b/manifest.json @@ -6,7 +6,7 @@ "en": "Software to manage association", "fr": "Logiciel libre de gestion d'association" }, - "version": "1.1.9~ynh1", + "version": "1.1.10~ynh1", "url": "http://garradin.eu/a-propos/", "license": "GPL-3.0-or-later", "maintainer": { From f7bc34fde98614db5745d497a4d5641a331f2c5e Mon Sep 17 00:00:00 2001 From: tituspijean Date: Sat, 25 Sep 2021 22:13:32 +0200 Subject: [PATCH 39/57] Fix permissions --- scripts/install | 23 ++++++++--------------- scripts/upgrade | 24 +++++++++--------------- 2 files changed, 17 insertions(+), 30 deletions(-) diff --git a/scripts/install b/scripts/install index 5f8d061..1788968 100644 --- a/scripts/install +++ b/scripts/install @@ -64,8 +64,6 @@ 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" -chown -R $app:$app $final_path - #================================================= # NGINX CONFIGURATION #================================================= @@ -101,19 +99,14 @@ else ynh_replace_string --match_string="//const WWW_URI = '/asso/';" --replace_string="const WWW_URI = '$path_url/';" --target_file="$final_path/config.local.php" fi -# permissions on files and directories -chmod 400 $final_path/config.dist.php $final_path/index.php $final_path/sous-domaine.html $final_path/VERSION -chmod 644 $final_path/config.local.php -find $final_path/scripts -type d -exec chmod 500 {} + -find $final_path/scripts -type f -exec chmod 400 {} + -find $final_path/templates -type d -exec chmod 500 {} + -find $final_path/templates -type f -exec chmod 400 {} + -find $final_path/include -type d -exec chmod 500 {} + -find $final_path/include -type f -exec chmod 400 {} + -find $final_path/data -type d -exec chmod 700 {} + -find $final_path/data -type f -exec chmod 600 {} + -find /var/www/garradin/www -type d -exec chmod 505 {} + -find /var/www/garradin/www -type f -exec chmod 644 {} + +# Permissions on files and directories +chmod -R o-rwx "$final_path" +chown -R $app:www-data "$final_path" +find "$final_path" -type d -exec chmod 550 {} + +find "$final_path" -type f -exec chmod 440 {} + +find "$final_path/data" -type d -exec chmod 770 {} + +find "$final_path/data" -type f -exec chmod 660 {} + +chmod 660 "$final_path/config.local.php" #================================================= # SETUP SSOWAT diff --git a/scripts/upgrade b/scripts/upgrade index d251201..8b5a911 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -193,8 +193,6 @@ then ynh_secure_remove $backup_bdd fi -chown -R $app:$app $final_path - #================================================= # ADD A CONFIGURATION #================================================= @@ -209,19 +207,14 @@ else ynh_replace_string --match_string="//const WWW_URI = '/asso/';" --replace_string="const WWW_URI = '$path_url/';" --target_file="$final_path/config.local.php" fi -# Set permissions on app files -chmod 400 $final_path/config.dist.php $final_path/index.php $final_path/sous-domaine.html $final_path/VERSION -chmod 644 $final_path/config.local.php -find $final_path/scripts -type d -exec chmod 500 {} + -find $final_path/scripts -type f -exec chmod 400 {} + -find $final_path/templates -type d -exec chmod 500 {} + -find $final_path/templates -type f -exec chmod 400 {} + -find $final_path/include -type d -exec chmod 500 {} + -find $final_path/include -type f -exec chmod 400 {} + -find $final_path/data -type d -exec chmod 700 {} + -find $final_path/data -type f -exec chmod 600 {} + -find /var/www/garradin/www -type d -exec chmod 505 {} + -find /var/www/garradin/www -type f -exec chmod 644 {} + +# Permissions on files and directories +chmod -R o-rwx "$final_path" +chown -R $app:www-data "$final_path" +find "$final_path" -type d -exec chmod 550 {} + +find "$final_path" -type f -exec chmod 440 {} + +find "$final_path/data" -type d -exec chmod 770 {} + +find "$final_path/data" -type f -exec chmod 660 {} + +chmod 660 "$final_path/config.local.php" #================================================= # RELOAD NGINX @@ -236,6 +229,7 @@ ynh_systemd_action --service_name=nginx --action=reload ynh_script_progression --message="Finalise upgrade" --weight=1 ynh_local_curl "/admin/index.php" +chmod 440 "$final_path/config.local.php" #================================================= # END OF SCRIPT From 1e3a7a09b4ef10373f268e70ed1e941024f5d246 Mon Sep 17 00:00:00 2001 From: tituspijean Date: Sat, 25 Sep 2021 22:20:28 +0200 Subject: [PATCH 40/57] Remove ynh_webpath_available --- scripts/install | 2 -- scripts/restore | 2 -- 2 files changed, 4 deletions(-) diff --git a/scripts/install b/scripts/install index 1788968..335a112 100644 --- a/scripts/install +++ b/scripts/install @@ -34,8 +34,6 @@ ynh_script_progression --message="Validating installation parameters..." --weigh final_path=/var/www/$app test ! -e "$final_path" || ynh_die "This path already contains a folder" -# Check web path availability -ynh_webpath_available $domain $path_url # Register (book) web path ynh_webpath_register --app=$app --domain=$domain --path_url=$path_url diff --git a/scripts/restore b/scripts/restore index f23b8ad..030a67d 100644 --- a/scripts/restore +++ b/scripts/restore @@ -34,8 +34,6 @@ phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) #================================================= ynh_script_progression --message="Validating restoration parameters..." --weight=4 -ynh_webpath_available $domain $path_url \ - || ynh_die "Path not available: ${domain}${path_url}" test ! -d $final_path \ || ynh_die "There is already a directory: $final_path " From 2b130e0d3513ba2445486c189398f988641a8467 Mon Sep 17 00:00:00 2001 From: tituspijean Date: Sat, 25 Sep 2021 22:46:35 +0200 Subject: [PATCH 41/57] Fix permissions in restore too --- scripts/install | 2 -- scripts/restore | 8 +++++++- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/scripts/install b/scripts/install index 335a112..b7447b9 100644 --- a/scripts/install +++ b/scripts/install @@ -77,8 +77,6 @@ ynh_script_progression --message="Configuring PHP-FPM..." --weight=5 # Create a dedicated PHP-FPM config ynh_add_fpm_config --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependencies" -#phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) - #================================================= # ADD A CONFIGURATION diff --git a/scripts/restore b/scripts/restore index 030a67d..4ba8ebe 100644 --- a/scripts/restore +++ b/scripts/restore @@ -65,7 +65,13 @@ ynh_system_user_create --username=$app #================================================= # Restore permissions on app files -chown -R $app:$app $final_path +chmod -R o-rwx "$final_path" +chown -R $app:www-data "$final_path" +find "$final_path" -type d -exec chmod 550 {} + +find "$final_path" -type f -exec chmod 440 {} + +find "$final_path/data" -type d -exec chmod 770 {} + +find "$final_path/data" -type f -exec chmod 660 {} + +chmod 660 "$final_path/config.local.php" #================================================= # RESTORE THE PHP-FPM CONFIGURATION From 5021b9992a11151e038c88c743c74fa1ae68caa1 Mon Sep 17 00:00:00 2001 From: tituspijean Date: Sat, 25 Sep 2021 22:55:29 +0200 Subject: [PATCH 42/57] Appease package linter, remove superfluous example --- manifest.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/manifest.json b/manifest.json index 3e46591..bb35489 100644 --- a/manifest.json +++ b/manifest.json @@ -25,8 +25,7 @@ "install" : [ { "name": "domain", - "type": "domain", - "example": "domain.org" + "type": "domain" }, { "name": "path", From 285974232bdc07b945fb4dd536ef8736fbde92ca Mon Sep 17 00:00:00 2001 From: tituspijean Date: Sat, 25 Sep 2021 23:19:34 +0200 Subject: [PATCH 43/57] Fix change_url --- scripts/change_url | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/change_url b/scripts/change_url index 532750e..54fb322 100644 --- a/scripts/change_url +++ b/scripts/change_url @@ -88,8 +88,8 @@ if [ $change_path -eq 1 ] && [ "$new_path" == "/" ]; then ynh_replace_string --match_string="const WWW_URI = '$old_path/';" --replace_string="const WWW_URI = '$new_path';" --target_file="$final_path/config.local.php" elif [ $change_path -eq 1 ] && [ "$old_path" == "/" ]; then ynh_replace_string --match_string="const WWW_URI = '$old_path';" --replace_string="const WWW_URI = '$new_path/';" --target_file="$final_path/config.local.php" -else [ $change_path -eq 1 ] - ynh_replace_string --match_string="const WWW_URI = '$old_path/';" --replace_string="const WWW_URI = '$new_path/';" --target_file="$final_path/config.local.php" +elif [ $change_path -eq 1 ] + ynh_replace_string --match_string="const WWW_URI = '$old_path/';" --replace_string="const WWW_URI = '$new_path/';" --target_file="$final_path/config.local.php" fi # Change the domain for NGINX From 30f93edf17ede59cd596eb1355a2aa71b755b96e Mon Sep 17 00:00:00 2001 From: tituspijean Date: Sat, 25 Sep 2021 23:26:27 +0200 Subject: [PATCH 44/57] =?UTF-8?q?Fix=20change=5Furl=C2=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scripts/change_url | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/change_url b/scripts/change_url index 54fb322..594268b 100644 --- a/scripts/change_url +++ b/scripts/change_url @@ -88,7 +88,7 @@ if [ $change_path -eq 1 ] && [ "$new_path" == "/" ]; then ynh_replace_string --match_string="const WWW_URI = '$old_path/';" --replace_string="const WWW_URI = '$new_path';" --target_file="$final_path/config.local.php" elif [ $change_path -eq 1 ] && [ "$old_path" == "/" ]; then ynh_replace_string --match_string="const WWW_URI = '$old_path';" --replace_string="const WWW_URI = '$new_path/';" --target_file="$final_path/config.local.php" -elif [ $change_path -eq 1 ] +elif [ $change_path -eq 1 ]; then ynh_replace_string --match_string="const WWW_URI = '$old_path/';" --replace_string="const WWW_URI = '$new_path/';" --target_file="$final_path/config.local.php" fi From e3c6d42ff6de2fe271410f880ce1db9813cf3363 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sat, 25 Sep 2021 23:36:54 +0200 Subject: [PATCH 45/57] Cleaning up --- check_process | 14 +++++++++--- doc/DESCRIPTION.md | 1 + doc/DESCRIPTION_fr.md | 1 + doc/DISCLAIMER.md | 0 manifest.json | 12 ++++++++-- pull_request_template.md | 16 ------------- scripts/install | 4 ++-- scripts/remove | 2 +- scripts/restore | 20 ++++++++-------- scripts/upgrade | 49 +++++++++++++++++++--------------------- 10 files changed, 59 insertions(+), 60 deletions(-) create mode 100644 doc/DESCRIPTION.md create mode 100644 doc/DESCRIPTION_fr.md create mode 100644 doc/DISCLAIMER.md delete mode 100644 pull_request_template.md diff --git a/check_process b/check_process index cc22c57..5eda0e2 100644 --- a/check_process +++ b/check_process @@ -1,8 +1,8 @@ ; Test complet ; Manifest - domain="domain.tld" (DOMAIN) - path="/path" (PATH) - is_public=1 (PUBLIC|public=1|private=0) + domain="domain.tld" + path="/path" + is_public=1 ; Checks pkg_linter=1 setup_sub_dir=1 @@ -11,6 +11,14 @@ setup_private=1 setup_public=1 upgrade=1 + #upgrade=1 from_commit=a36dd8b13d85078ddcee0d6d3146feb107d3e042 backup_restore=1 multi_instance=1 change_url=1 +;;; Options +Email= +Notification=none +;;; Upgrade options + ; commit=a36dd8b13d85078ddcee0d6d3146feb107d3e042 + name=Merge pull request #55 from yunohost-bot/issue-and-pr-template + manifest_arg=domain=DOMAIN&path=PATH&admin=USER&language=fr&is_public=1&password=pass&port=666& diff --git a/doc/DESCRIPTION.md b/doc/DESCRIPTION.md new file mode 100644 index 0000000..20fa158 --- /dev/null +++ b/doc/DESCRIPTION.md @@ -0,0 +1 @@ +Garradin (word meaning money in an aboriginal dialect of northern Australia, pronounced "gar-a-dine" em) is software for associative management. It is the tool of choice for managing an association, a sports club, an NGO, etc. It is designed to meet the needs of a small to medium-sized structure: management of members, accounting, website, note-taking in meetings, archiving and sharing of the association's operating documents, discussion between members, etc. etc. . \ No newline at end of file diff --git a/doc/DESCRIPTION_fr.md b/doc/DESCRIPTION_fr.md new file mode 100644 index 0000000..7f3f080 --- /dev/null +++ b/doc/DESCRIPTION_fr.md @@ -0,0 +1 @@ +Garradin (mot signifiant argent dans un dialecte aborigène du nord de l'Australie, prononcé « gar-a-dine »em) est un logiciel de gestion associative. Il est l'outil de prédilection pour gérer une association, un club sportif, une ONG, etc. Il est conçu pour répondre aux besoins d'une structure de petite à moyenne taille : gestion des adhérents, comptabilité, site web, prise de notes en réunion, archivage et partage des documents de fonctionnement de l'association, discussion entre adhérents, etc etc. \ No newline at end of file diff --git a/doc/DISCLAIMER.md b/doc/DISCLAIMER.md new file mode 100644 index 0000000..e69de29 diff --git a/manifest.json b/manifest.json index bb35489..5ecff41 100644 --- a/manifest.json +++ b/manifest.json @@ -7,14 +7,22 @@ "fr": "Logiciel libre de gestion d'association" }, "version": "1.1.10~ynh1", - "url": "http://garradin.eu/a-propos/", + "url": "http://garradin.eu", + "upstream": { + "license": "GPL-3.0-or-later", + "website": "http://garradin.eu", + "demo": "https://garradin.eu/essai/", + "admindoc": "https://fossil.kd2.org/garradin/wiki?name=Documentation", + "userdoc": "https://yunohost.org/apps", + "code": "https://fossil.kd2.org/garradin/wiki?name=Garradin" + }, "license": "GPL-3.0-or-later", "maintainer": { "name": "frju365", "email": "win10@tutanota.com" }, "requirements": { - "yunohost": ">=4.1.7" + "yunohost": ">=4.2.4" }, "multi_instance": true, "services": [ diff --git a/pull_request_template.md b/pull_request_template.md deleted file mode 100644 index ef70e18..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 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/scripts/install b/scripts/install index b7447b9..9ed7601 100644 --- a/scripts/install +++ b/scripts/install @@ -76,7 +76,7 @@ ynh_add_nginx_config ynh_script_progression --message="Configuring PHP-FPM..." --weight=5 # Create a dedicated PHP-FPM config -ynh_add_fpm_config --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependencies" +ynh_add_fpm_config --package="$extra_php_dependencies" #================================================= # ADD A CONFIGURATION @@ -112,7 +112,7 @@ ynh_script_progression --message="Configuring permissions..." --weight=8 # Make app public if necessary if [ $is_public -eq 1 ] then - ynh_permission_update --permission "main" --add "visitors" + ynh_permission_update --permission="main" --add="visitors" fi #================================================= diff --git a/scripts/remove b/scripts/remove index 3f0c7d7..7780ced 100644 --- a/scripts/remove +++ b/scripts/remove @@ -41,7 +41,7 @@ ynh_remove_nginx_config ynh_script_progression --message="Removing PHP-FPM configuration..." --weight=2 # Remove the dedicated PHP-FPM config -ynh_remove_fpm_config --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependencies" +ynh_remove_fpm_config --package="$extra_php_dependencies" #================================================= # GENERIC FINALIZATION diff --git a/scripts/restore b/scripts/restore index 4ba8ebe..d702b05 100644 --- a/scripts/restore +++ b/scripts/restore @@ -45,20 +45,20 @@ test ! -d $final_path \ ynh_restore_file "/etc/nginx/conf.d/$domain.d/$app.conf" -#================================================= -# RESTORE THE APP MAIN DIR -#================================================= -ynh_script_progression --message="Restoring Garradin main directory..." --weight=5 - -ynh_restore_file "$final_path" - #================================================= # RECREATE THE DEDICATED USER #================================================= ynh_script_progression --message="Recreating the dedicated system user..." --weight=3 # 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 +#================================================= +ynh_script_progression --message="Restoring Garradin main directory..." --weight=5 + +ynh_restore_file --origin_path="$final_path" #================================================= # RESTORE USER RIGHTS @@ -80,7 +80,7 @@ ynh_script_progression --message="Reconfiguring PHP-FPM..." --weight=6 ynh_restore_file --origin_path="/etc/php/$phpversion/fpm/pool.d/$app.conf" -ynh_add_fpm_config --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependencies" +ynh_add_fpm_config --package="$extra_php_dependencies" #================================================= # GENERIC FINALIZATION @@ -89,7 +89,7 @@ ynh_add_fpm_config --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependenc #================================================= ynh_script_progression --message="Reloading NGINX web server and PHP-FPM..." --weight=1 -ynh_systemd_action --service_name=php${phpversion}-fpm --action=reload +ynh_systemd_action --service_name=php$phpversion-fpm --action=reload ynh_systemd_action --service_name=nginx --action=reload #================================================= diff --git a/scripts/upgrade b/scripts/upgrade index 8b5a911..27f5e05 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -31,6 +31,20 @@ else upgrade_type=$(ynh_check_app_version_changed) fi +#================================================= +# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP +#================================================= +ynh_script_progression --message="Backing up Garradin before upgrading (may take a while)..." --weight=30 + +# Backup the current version of the app +ynh_backup_before_upgrade +ynh_clean_setup () { + # 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 #================================================= @@ -65,21 +79,6 @@ if [ -e "$bdd" ]; then cp -a $bdd /tmp/association.sqlite fi -#================================================= -# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP -#================================================= -ynh_script_progression --message="Backing up Garradin before upgrading (may take a while)..." --weight=30 - -# Backup the current version of the app -ynh_backup_before_upgrade -ynh_clean_setup () { - # restore it if the upgrade fails - ynh_restore_upgradebackup -} -# Exit if an error occurs during the execution of the script -ynh_abort_if_errors - - #================================================= # UPGRADE TO 0.9.8 if necessary #================================================= @@ -136,26 +135,25 @@ then upgrade_type="UPGRADE_APP" fi +#================================================= +# CREATE DEDICATED USER +#================================================= +ynh_script_progression --message="Making sure dedicated system user exists..." --weight=1 + +# Create a dedicated user (if not existing) +ynh_system_user_create --username=$app --home_dir="$final_path" + #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE #================================================= ynh_script_progression --message="Upgrading source files..." --weight=5 - if [ "$upgrade_type" == "UPGRADE_APP" ] then # Download, check integrity, uncompress and patch the source from app.src ynh_setup_source --dest_dir="$final_path" fi -#================================================= -# CREATE DEDICATED USER -#================================================= -ynh_script_progression --message="Making sure dedicated system user exists..." --weight=1 - -# Create a dedicated user (if not existing) -ynh_system_user_create --username=$app - #================================================= # NGINX CONFIGURATION #================================================= @@ -170,8 +168,7 @@ ynh_add_nginx_config ynh_script_progression --message="Upgrading PHP-FPM configuration..." --weight=2 # Create a dedicated PHP-FPM config -ynh_add_fpm_config --phpversion=$YNH_PHP_VERSION --package="$extra_php_dependencies" -phpversion=$(ynh_app_setting_get --app=$app --key=phpversion) +ynh_add_fpm_config --package="$extra_php_dependencies" #======================================================= # backup bdd, squelettes directory and config.local.php From df3890346af91833de51648ce8eae8c801be3506 Mon Sep 17 00:00:00 2001 From: Yunohost-Bot <> Date: Sat, 25 Sep 2021 21:36:59 +0000 Subject: [PATCH 46/57] Auto-update README --- README.md | 56 ++++++++++++++++------------------------------------ README_fr.md | 56 ++++++++++++++-------------------------------------- 2 files changed, 32 insertions(+), 80 deletions(-) diff --git a/README.md b/README.md index a1abc22..d630741 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,8 @@ + + # Garradin for YunoHost [![Integration level](https://dash.yunohost.org/integration/garradin.svg)](https://dash.yunohost.org/appci/app/garradin) ![](https://ci-apps.yunohost.org/ci/badges/garradin.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/garradin.maintain.svg) @@ -9,50 +14,21 @@ If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/install) to learn how to install it.* ## Overview -Garradin is a free association managing software. -**Shipped version:** 1.1.10 +Garradin (word meaning money in an aboriginal dialect of northern Australia, pronounced "gar-a-dine" em) is software for associative management. It is the tool of choice for managing an association, a sports club, an NGO, etc. It is designed to meet the needs of a small to medium-sized structure: management of members, accounting, website, note-taking in meetings, archiving and sharing of the association's operating documents, discussion between members, etc. etc. . -## Screenshots +**Shipped version:** 1.1.10~ynh1 -![](images/membre-v1.1.png) -![](images/compta.png) -![](images/emails.png) -![](images/edition-site-v1.1.png) -![](images/site.jpg) +**Demo:** https://garradin.eu/essai/ -## Demo +## Documentation and resources -* [Official demo](https://garradin.eu/essai/) - -## Documentation - - * Official documentation: https://fossil.kd2.org/garradin/wiki?name=Documentation - -## YunoHost specific features - -#### Multi-user support - -LDAP is not supported yet. - -#### Supported architectures - -* x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/garradin.svg)](https://ci-apps.yunohost.org/ci/apps/garradin/) -* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/garradin.svg)](https://ci-apps-arm.yunohost.org/ci/apps/garradin/) - -## Limitations - -* The application is ONLY translated into french. -* Do not install this application on the default root path's domain name without adding a subpath, otherwise the sso conection page will be substitute by home's garradin page. - -## Links - - * Report a bug: https://github.com/YunoHost-Apps/garradin_ynh/issues - * App website: https://garradin.eu - * Upstream app repository: https://fossil.kd2.org/garradin/wiki?name=Garradin - * YunoHost website: https://yunohost.org/ - ---- +* Official app website: http://garradin.eu +* Official user documentation: https://yunohost.org/apps +* Official admin documentation: https://fossil.kd2.org/garradin/wiki?name=Documentation +* Upstream app code repository: https://fossil.kd2.org/garradin/wiki?name=Garradin +* YunoHost documentation for this app: https://yunohost.org/app_garradin +* Report a bug: https://github.com/YunoHost-Apps/garradin_ynh/issues ## Developer info @@ -64,3 +40,5 @@ sudo yunohost app install https://github.com/YunoHost-Apps/garradin_ynh/tree/tes or sudo yunohost app upgrade garradin -u https://github.com/YunoHost-Apps/garradin_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 a1437e6..05460a7 100644 --- a/README_fr.md +++ b/README_fr.md @@ -1,58 +1,30 @@ # Garradin pour YunoHost -[![Niveau d'intégration](https://dash.yunohost.org/integration/garradin.svg)](https://dash.yunohost.org/appci/app/garradin) ![](https://ci-apps.yunohost.org/ci/badges/garradin.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/garradin.maintain.svg) +[![Niveau d'intégration](https://dash.yunohost.org/integration/garradin.svg)](https://dash.yunohost.org/appci/app/garradin) ![](https://ci-apps.yunohost.org/ci/badges/garradin.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/garradin.maintain.svg) [![Installer Garradin avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=garradin) *[Read this readme in english.](./README.md)* +*[Lire ce readme en français.](./README_fr.md)* > *Ce package vous permet d'installer Garradin 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.* +Si vous n'avez pas YunoHost, regardez [ici](https://yunohost.org/#/install) pour savoir comment l'installer et en profiter.* ## Vue d'ensemble -Garradin est un logiciel libre de gestion associative. il permet de gérer des membres. -**Version incluse :** 1.1.10 +Garradin (mot signifiant argent dans un dialecte aborigène du nord de l'Australie, prononcé « gar-a-dine »em) est un logiciel de gestion associative. Il est l'outil de prédilection pour gérer une association, un club sportif, une ONG, etc. Il est conçu pour répondre aux besoins d'une structure de petite à moyenne taille : gestion des adhérents, comptabilité, site web, prise de notes en réunion, archivage et partage des documents de fonctionnement de l'association, discussion entre adhérents, etc etc. -## Captures d'écran +**Version incluse :** 1.1.10~ynh1 -![](images/membre-v1.1.png) -![](images/compta.png) -![](images/emails.png) -![](images/edition-site-v1.1.png) -![](images/site.jpg) +**Démo :** https://garradin.eu/essai/ -## Démo +## Documentations et ressources -* [Démo officielle](https://garradin.eu/essai/) - -## Documentation - - * Documentation officielle : https://fossil.kd2.org/garradin/wiki?name=Documentation - -## Caractéristiques spécifiques YunoHost - -#### Support multi-utilisateur - -* L'authentification LDAP n'est pas disponible. - -#### Architectures supportées - -* x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/garradin.svg)](https://ci-apps.yunohost.org/ci/apps/garradin/) -* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/garradin.svg)](https://ci-apps-arm.yunohost.org/ci/apps/garradin/) - -## Limitations - -* Garradin n'est disponible qu'en français. -* N'installez pas cette apllication à la racine du domaine par défaut sans ajouter un sous-domaine. Sinon la page de connexion SSO sera remplacée par la page d'accueil de Garradin. - -## Liens - - * Signaler un bug : https://github.com/YunoHost-Apps/garradin_ynh/issues - * Site de l'application : http://garradin.eu - * Dépôt de l'application principale : https://fossil.kd2.org/garradin/wiki?name=Garradin - * Site web YunoHost : https://yunohost.org/ - ---- +* Site officiel de l'app : http://garradin.eu +* Documentation officielle utilisateur : https://yunohost.org/apps +* Documentation officielle de l'admin : https://fossil.kd2.org/garradin/wiki?name=Documentation +* Dépôt de code officiel de l'app : https://fossil.kd2.org/garradin/wiki?name=Garradin +* Documentation YunoHost pour cette app : https://yunohost.org/app_garradin +* Signaler un bug : https://github.com/YunoHost-Apps/garradin_ynh/issues ## Informations pour les développeurs @@ -64,3 +36,5 @@ sudo yunohost app install https://github.com/YunoHost-Apps/garradin_ynh/tree/tes ou sudo yunohost app upgrade garradin -u https://github.com/YunoHost-Apps/garradin_ynh/tree/testing --debug ``` + +**Plus d'infos sur le packaging d'applications :** https://yunohost.org/packaging_apps \ No newline at end of file From 46a585a167a666515d8c27db450cee1e00c40ef8 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sat, 25 Sep 2021 23:39:29 +0200 Subject: [PATCH 47/57] Create screenshot.png --- doc/screenshots/screenshot.png | Bin 0 -> 47936 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 doc/screenshots/screenshot.png diff --git a/doc/screenshots/screenshot.png b/doc/screenshots/screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..4aceda2f08438e98bb4527305433e8e5119f023c GIT binary patch literal 47936 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%0D=H173_r?H-H_A0=pU59f$e)LlF)geL7&$b_r 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 literal 0 HcmV?d00001 From f0bd6e4b6f153b95df9f3911efad906a97c91271 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sat, 25 Sep 2021 23:39:58 +0200 Subject: [PATCH 48/57] Update app.src --- conf/app.src | 1 - 1 file changed, 1 deletion(-) diff --git a/conf/app.src b/conf/app.src index ea10a5d..3e30ce9 100644 --- a/conf/app.src +++ b/conf/app.src @@ -3,4 +3,3 @@ SOURCE_SUM=56785921ce99d8424871bf340a3225016fede10345e3ce9fe51e47facc2e88cc SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=tar.bz2 SOURCE_IN_SUBDIR=true -SOURCE_FILENAME= From 6fd4b9cc1156e6995f715465cb6ec2dfdcc1a319 Mon Sep 17 00:00:00 2001 From: Yunohost-Bot <> Date: Sat, 25 Sep 2021 21:40:05 +0000 Subject: [PATCH 49/57] Auto-update README --- README.md | 4 ++++ README_fr.md | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/README.md b/README.md index d630741..68e5618 100644 --- a/README.md +++ b/README.md @@ -21,6 +21,10 @@ Garradin (word meaning money in an aboriginal dialect of northern Australia, pro **Demo:** https://garradin.eu/essai/ +## Screenshots + +![](./doc/screenshots/screenshot.png) + ## Documentation and resources * Official app website: http://garradin.eu diff --git a/README_fr.md b/README_fr.md index 05460a7..9eddecd 100644 --- a/README_fr.md +++ b/README_fr.md @@ -17,6 +17,10 @@ Garradin (mot signifiant argent dans un dialecte aborigène du nord de l'Austral **Démo :** https://garradin.eu/essai/ +## Captures d'écran + +![](./doc/screenshots/screenshot.png) + ## Documentations et ressources * Site officiel de l'app : http://garradin.eu From 6fb66c1cf6659bedcf8d5b025ab8364c48a200d0 Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sat, 25 Sep 2021 23:41:40 +0200 Subject: [PATCH 50/57] Update install --- scripts/install | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/install b/scripts/install index 9ed7601..056bbe3 100644 --- a/scripts/install +++ b/scripts/install @@ -51,7 +51,7 @@ ynh_app_setting_set --app=$app --key=path --value=$path_url ynh_script_progression --message="Configuring system user..." --weight=3 # Create a system user -ynh_system_user_create --username=$app +ynh_system_user_create --username=$app --home_dir="$final_path" #================================================= # DOWNLOAD, CHECK AND UNPACK SOURCE From 89c708bbcac00eabbbbb765d20dcae25770ffd6f Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 26 Sep 2021 08:29:22 +0200 Subject: [PATCH 51/57] Update manifest.json --- manifest.json | 1 - 1 file changed, 1 deletion(-) diff --git a/manifest.json b/manifest.json index 5ecff41..cf151b2 100644 --- a/manifest.json +++ b/manifest.json @@ -13,7 +13,6 @@ "website": "http://garradin.eu", "demo": "https://garradin.eu/essai/", "admindoc": "https://fossil.kd2.org/garradin/wiki?name=Documentation", - "userdoc": "https://yunohost.org/apps", "code": "https://fossil.kd2.org/garradin/wiki?name=Garradin" }, "license": "GPL-3.0-or-later", From 299b260a289c1727efc4cb457acff103d26d69f8 Mon Sep 17 00:00:00 2001 From: Yunohost-Bot <> Date: Sun, 26 Sep 2021 06:29:28 +0000 Subject: [PATCH 52/57] Auto-update README --- README.md | 1 - README_fr.md | 1 - 2 files changed, 2 deletions(-) diff --git a/README.md b/README.md index 68e5618..39f59f7 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,6 @@ Garradin (word meaning money in an aboriginal dialect of northern Australia, pro ## Documentation and resources * Official app website: http://garradin.eu -* Official user documentation: https://yunohost.org/apps * Official admin documentation: https://fossil.kd2.org/garradin/wiki?name=Documentation * Upstream app code repository: https://fossil.kd2.org/garradin/wiki?name=Garradin * YunoHost documentation for this app: https://yunohost.org/app_garradin diff --git a/README_fr.md b/README_fr.md index 9eddecd..e76169a 100644 --- a/README_fr.md +++ b/README_fr.md @@ -24,7 +24,6 @@ Garradin (mot signifiant argent dans un dialecte aborigène du nord de l'Austral ## Documentations et ressources * Site officiel de l'app : http://garradin.eu -* Documentation officielle utilisateur : https://yunohost.org/apps * Documentation officielle de l'admin : https://fossil.kd2.org/garradin/wiki?name=Documentation * Dépôt de code officiel de l'app : https://fossil.kd2.org/garradin/wiki?name=Garradin * Documentation YunoHost pour cette app : https://yunohost.org/app_garradin From 03e4c5ffc0aab1806edd04c5e0fe513596eea45a Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 26 Sep 2021 08:34:00 +0200 Subject: [PATCH 53/57] Update change_url --- scripts/change_url | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/change_url b/scripts/change_url index 54fb322..594268b 100644 --- a/scripts/change_url +++ b/scripts/change_url @@ -88,7 +88,7 @@ if [ $change_path -eq 1 ] && [ "$new_path" == "/" ]; then ynh_replace_string --match_string="const WWW_URI = '$old_path/';" --replace_string="const WWW_URI = '$new_path';" --target_file="$final_path/config.local.php" elif [ $change_path -eq 1 ] && [ "$old_path" == "/" ]; then ynh_replace_string --match_string="const WWW_URI = '$old_path';" --replace_string="const WWW_URI = '$new_path/';" --target_file="$final_path/config.local.php" -elif [ $change_path -eq 1 ] +elif [ $change_path -eq 1 ]; then ynh_replace_string --match_string="const WWW_URI = '$old_path/';" --replace_string="const WWW_URI = '$new_path/';" --target_file="$final_path/config.local.php" fi From d6fcd29677f75b1b7ac1901d298ddaad500c9e4f Mon Sep 17 00:00:00 2001 From: ericgaspar Date: Sun, 26 Sep 2021 13:55:19 +0200 Subject: [PATCH 54/57] Update upgrade --- scripts/upgrade | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/scripts/upgrade b/scripts/upgrade index 27f5e05..8528370 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -121,9 +121,10 @@ then ynh_replace_string --match_string="//const WWW_URI = '/asso/';" --replace_string="const WWW_URI = '$path_url/';" --target_file="$final_path/config.local.php" fi chmod 755 $final_path + # Create the visitors permission if needed - if [ $is_public -eq 1 ] - then + visitors_enabled=$(ynh_permission_has_user "main" "visitors") + if [[ $visitors_enabled -eq 0 ]] ynh_permission_update --permission "main" --add "visitors" fi @@ -133,6 +134,11 @@ then sleep 5 ynh_local_curl "/index.php" upgrade_type="UPGRADE_APP" + + if [[ $visitors_enabled -eq 0 ]] + ynh_permission_update --permission "main" --remove "visitors" + fi + fi #================================================= From 864e1f68cfd0e549b57a457a726f92b2d87b4d99 Mon Sep 17 00:00:00 2001 From: tituspijean Date: Sun, 26 Sep 2021 15:45:48 +0200 Subject: [PATCH 55/57] Fix 0.9.8 upgrade's curl --- scripts/upgrade | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/scripts/upgrade b/scripts/upgrade index 27f5e05..7da4a20 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -121,18 +121,25 @@ then ynh_replace_string --match_string="//const WWW_URI = '/asso/';" --replace_string="const WWW_URI = '$path_url/';" --target_file="$final_path/config.local.php" fi chmod 755 $final_path - # Create the visitors permission if needed - if [ $is_public -eq 1 ] - then - ynh_permission_update --permission "main" --add "visitors" + + # We need to have the app public before finalizing the upgrade + # So let's store its current state and allow visitors if needed + visitors_enabled=$(ynh_permission_has_user --permission=main --user=visitors) + if [ $visitors_enabled -eq 0 ] + ynh_permission_update --permission "main" --remove "visitors" fi ynh_systemd_action --service_name=nginx --action=reload - #finalyse upgrade + # Finalize the upgrade ynh_local_curl "/index.php" sleep 5 ynh_local_curl "/index.php" upgrade_type="UPGRADE_APP" + + # Remove visitors access if they were not allowed initially + if [ $visitors_enabled -eq 0 ] + ynh_permission_update --permission "main" --remove "visitors" + fi fi #================================================= From 557b58fd01c7bb9711678b648219bfa777963605 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Sun, 26 Sep 2021 16:15:12 +0200 Subject: [PATCH 56/57] conditions fi --- scripts/upgrade | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/upgrade b/scripts/upgrade index 8528370..36e7dbd 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -124,7 +124,7 @@ then # Create the visitors permission if needed visitors_enabled=$(ynh_permission_has_user "main" "visitors") - if [[ $visitors_enabled -eq 0 ]] + if [[ $visitors_enabled -eq 0 ]]; then ynh_permission_update --permission "main" --add "visitors" fi @@ -135,7 +135,7 @@ then ynh_local_curl "/index.php" upgrade_type="UPGRADE_APP" - if [[ $visitors_enabled -eq 0 ]] + if [[ $visitors_enabled -eq 0 ]]; then ynh_permission_update --permission "main" --remove "visitors" fi From 198e3af8162098ec5f6d2337396cf0af799620a0 Mon Sep 17 00:00:00 2001 From: Robles Rodolphe Date: Mon, 27 Sep 2021 12:49:59 +0200 Subject: [PATCH 57/57] review permissions for upgrade --- scripts/upgrade | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/upgrade b/scripts/upgrade index c69be08..f066255 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -121,9 +121,9 @@ then ynh_replace_string --match_string="//const WWW_URI = '/asso/';" --replace_string="const WWW_URI = '$path_url/';" --target_file="$final_path/config.local.php" fi chmod 755 $final_path - + # Create the visitors permission if needed - visitors_enabled=$(ynh_permission_has_user "main" "visitors") + visitors_enabled=$(ynh_permission_has_user "main" "visitors" && echo 0 || echo 1) if [[ $visitors_enabled -eq 0 ]]; then ynh_permission_update --permission "main" --add "visitors" fi