diff --git a/README.md b/README.md index 02f1b14..5854219 100644 --- a/README.md +++ b/README.md @@ -1,33 +1,37 @@ + + # Wekan for YunoHost [![Integration level](https://dash.yunohost.org/integration/wekan.svg)](https://dash.yunohost.org/appci/app/wekan) ![](https://ci-apps.yunohost.org/ci/badges/wekan.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/wekan.maintain.svg) [![Install Wekan with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=wekan) -> *This package allows you to install Wekan quickly and simply on a YunoHost server. +*[Lire ce readme en français.](./README_fr.md)* + +> *This package allows you to install Wekan quickly and simply on a YunoHost server. If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/install) to learn how to install it.* ## Overview -Wekan is an open-source kanban board (task manager and organizer) -**Shipped version:** 5.17 +Trello-like kanban + +**Shipped version:** 5.35~ynh1 + + ## Screenshots -![](screenshot.jpg) +![](./doc/screenshots/screenshot.jpg) -## Status +## Disclaimers / important information -- This app **only works on x86, 64bits architecture**! In particular, it won't work on 32 bit machines or ARM. See the discussion [here](https://github.com/YunoHost-Apps/wekan_ynh/issues/1#issuecomment-401612500). - -- There is currently **no SSO integration** though it might be integrated at some point in the app, now that it's supported in Meteor/Wekan. In the meantime, users can create accounts (in fact, they can create infinite number of accounts) manually, and need to login manually specifically in Wekan. - -## Infos - -**Package by:** ljf & Aleks -**Categories:** Productivity, Task - -## Configuration +* Any known limitations, constrains or stuff not working, such as (but not limited to): + * There is currently **no SSO integration** though it might be integrated at some point in the app, now that it's supported in Meteor/Wekan. In the meantime, users can create accounts (in fact, they can create infinite number of accounts) manually, and need to login manually specifically in Wekan. + * This app **only works on x86, 64bits architecture**! In particular, it won't work on 32 bit machines or ARM. See the discussion [here](https://github.com/YunoHost-Apps/wekan_ynh/issues/1#issuecomment-401612500). +## Configuration: As LDAP authentification is enabled by default, Wekan admins correspond to the permission `Wekan Admin`. The user you choose during installation is member of this group. To add an admin account, you can: @@ -40,30 +44,13 @@ If you have disable ldap authentication, first registered user will be admin, an **Private/Public mode:** In private mode, only authorized YunoHost members can access to the Wekan. -## Documentation +## Documentation and resources - * Official documentation: https://github.com/wekan/wekan/wiki - * YunoHost documentation: https://yunohost.org/#/app_wekan - -## YunoHost specific features - -#### Multi-user support - -LDAP is supported but HTTP auth is still not supported - -#### Supported architectures - -* x86-64 - [![Build Status](https://ci-apps.yunohost.org/ci/logs/wekan.svg)](https://ci-apps.yunohost.org/ci/apps/wekan/) -* ARMv8-A - [![Build Status](https://ci-apps-arm.yunohost.org/ci/logs/wekan.svg)](https://ci-apps-arm.yunohost.org/ci/apps/wekan/) - -## Links - - * Report a bug: https://github.com/YunoHost-Apps/wekan_ynh/issues - * App website: https://wekan.github.io/ - * Upstream app repository: https://github.com/wekan/wekan - * YunoHost website: https://yunohost.org/ - ---- +* Official app website: https://wekan.github.io +* Official user documentation: https://yunohost.org/#/app_wekan +* Upstream app code repository: https://github.com/wekan/wekan +* YunoHost documentation for this app: https://yunohost.org/app_wekan +* Report a bug: https://github.com/YunoHost-Apps/wekan_ynh/issues ## Developer info @@ -75,3 +62,5 @@ sudo yunohost app install https://github.com/YunoHost-Apps/wekan_ynh/tree/testin or sudo yunohost app upgrade wekan -u https://github.com/YunoHost-Apps/wekan_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 new file mode 100644 index 0000000..c106362 --- /dev/null +++ b/README_fr.md @@ -0,0 +1,62 @@ +# Wekan pour YunoHost + +[![Niveau d'intégration](https://dash.yunohost.org/integration/wekan.svg)](https://dash.yunohost.org/appci/app/wekan) ![](https://ci-apps.yunohost.org/ci/badges/wekan.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/wekan.maintain.svg) +[![Installer Wekan avec YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=wekan) + +*[Read this readme in english.](./README.md)* +*[Lire ce readme en français.](./README_fr.md)* + +> *Ce package vous permet d'installer Wekan rapidement et simplement sur un serveur YunoHost. +Si vous n'avez pas YunoHost, regardez [ici](https://yunohost.org/#/install) pour savoir comment l'installer et en profiter.* + +## Vue d'ensemble + +Un kanban similaire à Trello + +**Version incluse :** 5.35~ynh1 + + + +## Captures d'écran + +![](./doc/screenshots/screenshot.jpg) + +## Avertissements / informations importantes + +* Any known limitations, constrains or stuff not working, such as (but not limited to): + * There is currently **no SSO integration** though it might be integrated at some point in the app, now that it's supported in Meteor/Wekan. In the meantime, users can create accounts (in fact, they can create infinite number of accounts) manually, and need to login manually specifically in Wekan. + * This app **only works on x86, 64bits architecture**! In particular, it won't work on 32 bit machines or ARM. See the discussion [here](https://github.com/YunoHost-Apps/wekan_ynh/issues/1#issuecomment-401612500). + +## Configuration: +As LDAP authentification is enabled by default, Wekan admins correspond to the permission `Wekan Admin`. The user you choose during installation is member of this group. +To add an admin account, you can: + +- [with the webadmin] go to Users > Groups and permissions > Add the user to the permission `Wekan Admin` +- [or with the command line] `yunohost user permission update wekan.admin -a the_user_to_add` + +All others YunhoHost user can access with LDAP authentication. + +If you have disable ldap authentication, first registered user will be admin, and next ones normal users. If you want other admins too, you can change their permission to admin at Wekan Admin Panel. + +**Private/Public mode:** In private mode, only authorized YunoHost members can access to the Wekan. + +## Documentations et ressources + +* Site officiel de l'app : https://wekan.github.io +* Documentation officielle utilisateur : https://yunohost.org/#/app_wekan +* Dépôt de code officiel de l'app : https://github.com/wekan/wekan +* Documentation YunoHost pour cette app : https://yunohost.org/app_wekan +* Signaler un bug : https://github.com/YunoHost-Apps/wekan_ynh/issues + +## Informations pour les développeurs + +Merci de faire vos pull request sur la [branche testing](https://github.com/YunoHost-Apps/wekan_ynh/tree/testing). + +Pour essayer la branche testing, procédez comme suit. +``` +sudo yunohost app install https://github.com/YunoHost-Apps/wekan_ynh/tree/testing --debug +ou +sudo yunohost app upgrade wekan -u https://github.com/YunoHost-Apps/wekan_ynh/tree/testing --debug +``` + +**Plus d'infos sur le packaging d'applications :** https://yunohost.org/packaging_apps \ No newline at end of file diff --git a/check_process b/check_process index b4df23a..79fda0e 100644 --- a/check_process +++ b/check_process @@ -28,6 +28,8 @@ upgrade=1 from_commit=9e698d094c29fc6ab12ac60cd1d0e68b56bfc953 # 5.00~ynh1 upgrade=1 from_commit=8655e8062d1bc6e90b01b98ca9a0dea15d60119e + # 5.17~ynh1 + upgrade=1 from_commit=8cdb28eff25b8b431635b87f92f96f8e216ad71f backup_restore=1 multi_instance=1 port_already_use=0 @@ -52,3 +54,5 @@ Notification=down name=4.64~ynh2 ; commit=8655e8062d1bc6e90b01b98ca9a0dea15d60119e name=5.00~ynh1 + ; commit=8cdb28eff25b8b431635b87f92f96f8e216ad71f + name=5.17~ynh1 diff --git a/conf/arm64.src b/conf/arm64.src index 56be87b..2696218 100644 --- a/conf/arm64.src +++ b/conf/arm64.src @@ -1,9 +1,9 @@ # This is on YunoHost server just to avoid the file from disappearing -# Original source is https://releases.wekan.team/raspi3/wekan-5.17-arm64.zip -# YunoHost source is https://build.yunohost.org/apps/wekan-5.17-arm64.zip -SOURCE_URL=https://build.yunohost.org/apps/wekan-5.17-arm64.zip -SOURCE_SUM=3137fa9fb079e42f33405d77738bec7ceae00c3e332394b4a79524552eb4fb3e +# Original source is https://releases.wekan.team/raspi3/wekan-5.35-arm64.zip +# YunoHost source is https://build.yunohost.org/apps/wekan-5.35-arm64.zip +SOURCE_URL=https://build.yunohost.org/apps/wekan-5.35-arm64.zip +SOURCE_SUM=afd00947c25965ec5c8dbacaf97d666ef03a5350802587951c0a866e77c4ebae SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=zip SOURCE_IN_SUBDIR=true -SOURCE_FILENAME=wekan-5.17-arm64.zip +SOURCE_FILENAME=wekan-5.35-arm64.zip diff --git a/conf/x86-64.src b/conf/x86-64.src index d43e2dc..1f58780 100644 --- a/conf/x86-64.src +++ b/conf/x86-64.src @@ -1,9 +1,9 @@ # This is on YunoHost server just to avoid the file from disappearing -# Original source is https://releases.wekan.team/wekan-5.17.zip -# YunoHost source is https://build.yunohost.org/apps/wekan-5.17.zip -SOURCE_URL=https://build.yunohost.org/apps/wekan-5.17.zip -SOURCE_SUM=42b41c5c774cbc58ef64718040a5c0306ea8e42980c1e25636d16dab831f32c3 +# Original source is https://releases.wekan.team/wekan-5.35.zip +# YunoHost source is https://build.yunohost.org/apps/wekan-5.35.zip +SOURCE_URL=https://build.yunohost.org/apps/wekan-5.35.zip +SOURCE_SUM=77746ab4788ee43f1187d8f6603d1a8cf229250831b85971a335b32db1499d8f SOURCE_SUM_PRG=sha256sum SOURCE_FORMAT=zip SOURCE_IN_SUBDIR=true -SOURCE_FILENAME=wekan-5.17.zip +SOURCE_FILENAME=wekan-5.35.zip diff --git a/doc/.gitkeep b/doc/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/doc/DISCLAIMER.md b/doc/DISCLAIMER.md new file mode 100644 index 0000000..df1c4ca --- /dev/null +++ b/doc/DISCLAIMER.md @@ -0,0 +1,16 @@ +* Any known limitations, constrains or stuff not working, such as (but not limited to): + * There is currently **no SSO integration** though it might be integrated at some point in the app, now that it's supported in Meteor/Wekan. In the meantime, users can create accounts (in fact, they can create infinite number of accounts) manually, and need to login manually specifically in Wekan. + * This app **only works on x86, 64bits architecture**! In particular, it won't work on 32 bit machines or ARM. See the discussion [here](https://github.com/YunoHost-Apps/wekan_ynh/issues/1#issuecomment-401612500). + +## Configuration: +As LDAP authentification is enabled by default, Wekan admins correspond to the permission `Wekan Admin`. The user you choose during installation is member of this group. +To add an admin account, you can: + +- [with the webadmin] go to Users > Groups and permissions > Add the user to the permission `Wekan Admin` +- [or with the command line] `yunohost user permission update wekan.admin -a the_user_to_add` + +All others YunhoHost user can access with LDAP authentication. + +If you have disable ldap authentication, first registered user will be admin, and next ones normal users. If you want other admins too, you can change their permission to admin at Wekan Admin Panel. + +**Private/Public mode:** In private mode, only authorized YunoHost members can access to the Wekan. diff --git a/doc/screenshots/.gitkeep b/doc/screenshots/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/screenshot.jpg b/doc/screenshots/screenshot.jpg similarity index 100% rename from screenshot.jpg rename to doc/screenshots/screenshot.jpg diff --git a/manifest.json b/manifest.json index 6a48508..397966a 100644 --- a/manifest.json +++ b/manifest.json @@ -6,8 +6,14 @@ "en": "Trello-like kanban", "fr": "Un kanban similaire à Trello" }, - "version": "5.17~ynh1", + "version": "5.35~ynh1", "url": "https://wekan.io", + "upstream": { + "license": "MIT", + "website": "https://wekan.github.io", + "userdoc": "https://yunohost.org/#/app_wekan", + "code": "https://github.com/wekan/wekan" + }, "license": "MIT", "maintainer": [ { diff --git a/scripts/_common.sh b/scripts/_common.sh index 87ae0be..d51b74e 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -7,7 +7,7 @@ # dependencies used by the app pkg_dependencies="" -NODEJS_VERSION=12.16.3 +NODEJS_VERSION=12.22.1 #================================================= # PERSONAL HELPERS diff --git a/scripts/restore b/scripts/restore index d395ff3..739b02e 100644 --- a/scripts/restore +++ b/scripts/restore @@ -59,7 +59,7 @@ ynh_restore_file --origin_path="/etc/nginx/conf.d/$domain.d/$app.conf" ynh_script_progression --message="Recreating the dedicated system user..." # Create the dedicated user (if not existing) -ynh_system_user_create --username=$app --home_dir="$final_path" +ynh_system_user_create --username=$app --home_dir=$final_path #================================================= # RESTORE THE APP MAIN DIR diff --git a/scripts/upgrade b/scripts/upgrade index e94dbb0..efe8f7a 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -32,6 +32,40 @@ ynh_script_progression --message="Checking version..." upgrade_type=$(ynh_check_app_version_changed) +#================================================= +# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP +#================================================= +ynh_script_progression --message="Backing up the app before upgrading (may take a while)..." + +# Backup the current version of the app +ynh_backup_before_upgrade +ynh_clean_setup () { + # 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 VERSION NUMBER +#================================================= + +if [ ${PACKAGE_CHECK_EXEC:-0} -eq 1 ]; then + sleep 60 +fi +abort_if_up_to_date +# previous function is what defines 'version', more precisely the 'previous version' +previous_version="${version}" + +#================================================= +# STANDARD UPGRADE STEPS +#================================================= +# STOP SYSTEMD SERVICE +#================================================= +ynh_script_progression --message="Stopping a systemd service..." + +ynh_systemd_action --service_name=$app --action="stop" --log_path=systemd + #================================================= # ENSURE DOWNWARD COMPATIBILITY #================================================= @@ -49,40 +83,6 @@ if ! ynh_permission_exists --permission="admin"; then ynh_permission_create --permission="admin" --allowed=$admin fi -#================================================= -# CHECK VERSION NUMBER -#================================================= - -if [ ${PACKAGE_CHECK_EXEC:-0} -eq 1 ]; then - sleep 60 -fi -abort_if_up_to_date -# previous function is what defines 'version', more precisely the 'previous version' -previous_version="${version}" - -#================================================= -# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP -#================================================= -ynh_script_progression --message="Backing up the app before upgrading (may take a while)..." - -# Backup the current version of the app -ynh_backup_before_upgrade -ynh_clean_setup () { - # Restore it if the upgrade fails - ynh_restore_upgradebackup -} -# Exit if an error occurs during the execution of the script -ynh_abort_if_errors - -#================================================= -# STANDARD UPGRADE STEPS -#================================================= -# STOP SYSTEMD SERVICE -#================================================= -ynh_script_progression --message="Stopping a systemd service..." - -ynh_systemd_action --service_name=$app --action="stop" --log_path=systemd - #================================================= # MANAGE UPGRADE FROM PREVIOUS VERSION #=================================================