mirror of
https://github.com/YunoHost-Apps/vikunja_ynh.git
synced 2024-09-03 18:06:26 +02:00
Merge pull request #40 from AvocatDuDiable/vnext
API update + Config Panel
This commit is contained in:
commit
af224e4e1a
13 changed files with 169 additions and 20 deletions
|
@ -26,7 +26,7 @@ Vikunja is a self-hosted open-source to-do list application for all platforms.
|
|||
- CalDAV
|
||||
- Links
|
||||
|
||||
**Shipped version:** 0.19.0~ynh1
|
||||
**Shipped version:** 0.19.2~ynh1
|
||||
|
||||
|
||||
**Demo:** https://try.vikunja.io/login
|
||||
|
@ -47,10 +47,13 @@ The API is accesible with this path: https://domain.ltd/api/v1/docs
|
|||
|
||||
* Official app website: <https://vikunja.io/>
|
||||
* Official admin documentation: <https://vikunja.io/docs/>
|
||||
* Official download portal: <https://dl.vikunja.io/>
|
||||
* Official blog (usefull for release note): <https://vikunja.io/blog/>
|
||||
* Upstream app code repository: <https://kolaente.dev/vikunja/>
|
||||
* YunoHost documentation for this app: <https://yunohost.org/app_vikunja>
|
||||
* Report a bug: <https://github.com/YunoHost-Apps/vikunja_ynh/issues>
|
||||
|
||||
|
||||
## Developer info
|
||||
|
||||
Please send your pull request to the [testing branch](https://github.com/YunoHost-Apps/vikunja_ynh/tree/testing).
|
||||
|
|
|
@ -26,8 +26,8 @@ Vikunja est une application de liste de tâches Open Source auto-hébergée pour
|
|||
- CalDAV
|
||||
- Links
|
||||
|
||||
**Version incluse :** 0.19.0~ynh1
|
||||
|
||||
**Version incluse :** 0.19.2~ynh1
|
||||
|
||||
**Démo :** https://try.vikunja.io/login
|
||||
|
||||
|
@ -44,6 +44,8 @@ Vous pouvez configurer Vikunja en modifiant le fichier `/opt/vikunja/config.yml`
|
|||
|
||||
* Site officiel de l'app : <https://vikunja.io/>
|
||||
* Documentation officielle de l'admin : <https://vikunja.io/docs/>
|
||||
* Portail de téléchargement officiel: <https://dl.vikunja.io/>
|
||||
* Blog officiel (utile pour avoir les changements de chaque version): <https://vikunja.io/blog/>
|
||||
* Dépôt de code officiel de l'app : <https://kolaente.dev/vikunja/>
|
||||
* Documentation YunoHost pour cette app : <https://yunohost.org/app_vikunja>
|
||||
* Signaler un bug : <https://github.com/YunoHost-Apps/vikunja_ynh/issues>
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
SOURCE_URL=https://dl.vikunja.io/api/0.19.0/vikunja-v0.19.0-linux-amd64-full
|
||||
SOURCE_SUM=D005FD544862B6D01402B7AFA5CAE5A9E5E634112D90EECF6F2781DA83A7A524
|
||||
SOURCE_URL=https://dl.vikunja.io/api/0.19.2/vikunja-v0.19.2-linux-amd64-full
|
||||
SOURCE_SUM=16F4483929C659021A8F61465FA5A10C9EDCC3CBB6F0D8AC8ED96570034CB50C
|
||||
SOURCE_SUM_PRG=sha256sum
|
||||
SOURCE_IN_SUBDIR=false
|
||||
SOURCE_FORMAT=zip
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
SOURCE_URL=https://dl.vikunja.io/api/0.19.0/vikunja-v0.19.0-linux-arm64-full
|
||||
SOURCE_SUM=CB457F651DE3E4551F36F20389161C0407D10D9821F520357ECE5ED669311943
|
||||
SOURCE_URL=https://dl.vikunja.io/api/0.19.2/vikunja-v0.19.2-linux-arm64-full
|
||||
SOURCE_SUM=9C3104D42F9B7448D045208C0C5DBF5AC8648B78E7907697264A3031972926EA
|
||||
SOURCE_SUM_PRG=sha256sum
|
||||
SOURCE_IN_SUBDIR=false
|
||||
SOURCE_FORMAT=zip
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
SOURCE_URL=https://dl.vikunja.io/api/0.19.0/vikunja-v0.19.0-linux-arm-7-full
|
||||
SOURCE_SUM=A5B393C7900C6A77E1887A496E9A66E2762972DA76C961CA8264EF469B24177B
|
||||
SOURCE_URL=https://dl.vikunja.io/api/0.19.2/vikunja-v0.19.2-linux-arm-7-full
|
||||
SOURCE_SUM=F82B9DF0DE4F36AEF6535DC5425CF45151815E67DBC8BAF9921E38C454AFD724
|
||||
SOURCE_SUM_PRG=sha256sum
|
||||
SOURCE_IN_SUBDIR=false
|
||||
SOURCE_FORMAT=zip
|
||||
|
|
|
@ -12,21 +12,21 @@ service:
|
|||
# with a config file which will then be used.
|
||||
rootpath: "/opt/vikunja/"
|
||||
# The max number of items which can be returned per page
|
||||
maxitemsperpage: 50
|
||||
maxitemsperpage: __MAXITEMSPERPAGE__
|
||||
# Enable the caldav endpoint, see the docs for more details
|
||||
enablecaldav: true
|
||||
# Set the motd message, available from the /info endpoint
|
||||
motd: __SET_MOTD__
|
||||
# Enable sharing of lists via a link
|
||||
enablelinksharing: true
|
||||
enablelinksharing: __ENABLE_LINKSHARING__
|
||||
# Whether to let new users registering themselves or not
|
||||
enableregistration: __ENABLE_REGISTRATION__
|
||||
# Whether to enable task attachments or not
|
||||
enabletaskattachments: true
|
||||
enabletaskattachments: __ENABLE_TASKATTACHMENTS__
|
||||
# The time zone all timestamps are in. Please note that time zones have to use [the official tz database names](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones). UTC or GMT offsets won't work.
|
||||
timezone: __TIMEZONE__
|
||||
# Whether task comments should be enabled or not
|
||||
enabletaskcomments: true
|
||||
enabletaskcomments: __ENABLE_TASKCOMMENTS__
|
||||
# Whether totp is enabled. In most cases you want to leave that enabled.
|
||||
enabletotp: true
|
||||
# If not empty, enables logging of crashes and unhandled errors in sentry.
|
||||
|
@ -38,7 +38,14 @@ service:
|
|||
testingtoken: ''
|
||||
# If enabled, vikunja will send an email to everyone who is either assigned to a task or created it when a task reminder
|
||||
# is due.
|
||||
enableemailreminders: true
|
||||
enableemailreminders: __ENABLE_EMAILREMINDERS__
|
||||
# If true, will allow users to request the complete deletion of their account. When using external authentication methods
|
||||
# it may be required to coordinate with them in order to delete the account. This setting will not affect the cli commands
|
||||
# for user deletion.
|
||||
enableuserdeletion: __ENABLE_USERDELETION__
|
||||
# The maximum size clients will be able to request for user avatars.
|
||||
# If clients request a size bigger than this, it will be changed on the fly.
|
||||
maxavatarsize: __MAXAVATARSIZE__
|
||||
|
||||
database:
|
||||
# Database type to use. Supported types are mysql, postgres and sqlite.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
SOURCE_URL=https://dl.vikunja.io/frontend/vikunja-frontend-0.19.0.zip
|
||||
SOURCE_SUM=A5D50D3DF1A06D23325DC4B61CA31E908888CC9DC6BAD1C2B348055641CDF727
|
||||
SOURCE_URL=https://dl.vikunja.io/frontend/vikunja-frontend-0.19.1.zip
|
||||
SOURCE_SUM=29FE793359BF34142181ABA5FF8B1E0CC74F154F238603B04CD033760560D8E4
|
||||
SOURCE_SUM_PRG=sha256sum
|
||||
SOURCE_FORMAT=zip
|
||||
SOURCE_IN_SUBDIR=false
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
SOURCE_URL=https://dl.vikunja.io/api/0.19.0/vikunja-v0.19.0-linux-386-full
|
||||
SOURCE_SUM=66C21ED000B084B9268E2A0783BE49EC982782F9417050D38683D979555F6E95
|
||||
SOURCE_URL=https://dl.vikunja.io/api/0.19.2/vikunja-v0.19.2-linux-386-full
|
||||
SOURCE_SUM=6D532EEA15A966446F1B975A8F1D7B64F75AFB2148C09680728C0060FACB5608
|
||||
SOURCE_SUM_PRG=sha256sum
|
||||
SOURCE_IN_SUBDIR=false
|
||||
SOURCE_FORMAT=zip
|
||||
|
|
|
@ -2,22 +2,84 @@ version = "1.0"
|
|||
|
||||
[main]
|
||||
name = "Vikunja configuration"
|
||||
|
||||
services = ["__APP__"]
|
||||
|
||||
[main.config]
|
||||
name = "Configuration Options"
|
||||
|
||||
[main.config.set_motd]
|
||||
ask = "Set MOTD"
|
||||
ask.en = "Set MOTD"
|
||||
ask.fr = "Définir MOTD"
|
||||
type = "string"
|
||||
help = "Set the MOTD message shown in Vikunja login page"
|
||||
bind = "motd:/opt/__APP__/config.yml"
|
||||
|
||||
[main.config.enable_registration]
|
||||
ask = "Enable registration"
|
||||
ask.en = "Enable registration"
|
||||
ask.fr = "Activer la création de comptes"
|
||||
type = "boolean"
|
||||
yes = "true"
|
||||
no = "false"
|
||||
help = "Whether to let new users registering themselves or not"
|
||||
bind = "enableregistration:/opt/__APP__/config.yml"
|
||||
|
||||
[main.config.enable_linksharing]
|
||||
ask.en = "Enable links sharing"
|
||||
ask.fr = "Activer liens de partage"
|
||||
type = "boolean"
|
||||
yes = "true"
|
||||
no = "false"
|
||||
help = "Enable sharing of lists via a link"
|
||||
bind = "enablelinksharing:/opt/__APP__/config.yml"
|
||||
|
||||
[main.config.enable_taskattachments]
|
||||
ask.en = "Enable tasks attachments"
|
||||
ask.fr = "Activer les pièces jointes de tâches"
|
||||
type = "boolean"
|
||||
yes = "true"
|
||||
no = "false"
|
||||
help = "Whether to enable task attachments or not"
|
||||
bind = "enabletaskattachments:/opt/__APP__/config.yml"
|
||||
|
||||
[main.config.enable_taskcomments]
|
||||
ask.en = "Enable task comments"
|
||||
ask.fr = "Activer les commentaires de tâches"
|
||||
type = "boolean"
|
||||
yes = "true"
|
||||
no = "false"
|
||||
help = "Whether task comments should be enabled or not"
|
||||
bind = "enabletaskcomments:/opt/__APP__/config.yml"
|
||||
|
||||
[main.config.enable_emailreminders]
|
||||
ask.en = "Enable email reminders"
|
||||
ask.fr = "Activer les mails de rappels"
|
||||
type = "boolean"
|
||||
yes = "true"
|
||||
no = "false"
|
||||
help = "If enabled, vikunja will send an email to everyone who is either assigned to a task or created it when a task reminder is due."
|
||||
bind = "enableemailreminders:/opt/__APP__/config.yml"
|
||||
|
||||
[main.config.enable_userdeletion]
|
||||
ask.en = "Enable user deletion"
|
||||
ask.fr = "Activer la suppression de compte"
|
||||
type = "boolean"
|
||||
yes = "true"
|
||||
no = "false"
|
||||
help = "If true, will allow users to request the complete deletion of their account. When using external authentication methods it may be required to coordinate with them in order to delete the account. This setting will not affect the cli commands for user deletion"
|
||||
bind = "enableuserdeletion:/opt/__APP__/config.yml"
|
||||
|
||||
[main.config.maxavatarsize]
|
||||
ask.en = "Max avatar size"
|
||||
ask.fr = "Taille maximum de l'avatar"
|
||||
type = "number"
|
||||
help = "The maximum size clients will be able to request for user avatars. If clients request a size bigger than this, it will be changed on the fly"
|
||||
bind = "maxavatarsize:/opt/__APP__/config.yml"
|
||||
|
||||
[main.config.maxitemsperpage]
|
||||
ask.en = "Max items per page"
|
||||
ask.fr = "Nombre d'éléments maximum par page"
|
||||
type = "number"
|
||||
help = "The max number of items which can be returned per page"
|
||||
bind = "maxitemsperpage:/opt/__APP__/config.yml"
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
"en": "Self-hosted To-Do list application",
|
||||
"fr": "Application de liste de tâches auto-hébergée"
|
||||
},
|
||||
"version": "0.19.0~ynh1",
|
||||
"version": "0.19.2~ynh1",
|
||||
"url": "https://vikunja.io/",
|
||||
"upstream": {
|
||||
"license": "GPL-3.0",
|
||||
|
|
|
@ -38,6 +38,13 @@ timezone="$(cat /etc/timezone)"
|
|||
|
||||
set_motd=$(ynh_app_setting_get --app=$app --key=set_motd)
|
||||
enable_registration=$(ynh_app_setting_get --app=$app --key=enable_registration)
|
||||
enable_linksharing=$(ynh_app_setting_get --app=$app --key=enable_linksharing)
|
||||
enable_taskattachments=$(ynh_app_setting_get --app=$app --key=enable_taskattachments)
|
||||
enable_taskcomments=$(ynh_app_setting_get --app=$app --key=enable_taskcomments)
|
||||
enable_emailreminders=$(ynh_app_setting_get --app=$app --key=enable_emailreminders)
|
||||
enable_userdeletion=$(ynh_app_setting_get --app=$app --key=enable_userdeletion)
|
||||
maxavatarsize=$(ynh_app_setting_get --app=$app --key=maxavatarsize)
|
||||
maxitemsperpage=$(ynh_app_setting_get --app=$app --key=maxitemsperpage)
|
||||
|
||||
#=================================================
|
||||
# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP
|
||||
|
|
|
@ -30,6 +30,13 @@ app=$YNH_APP_INSTANCE_NAME
|
|||
|
||||
set_motd=""
|
||||
enable_registration="true"
|
||||
enable_linksharing="true"
|
||||
enable_taskattachments="true"
|
||||
enable_taskcomments="true"
|
||||
enable_emailreminders="true"
|
||||
enable_userdeletion="true"
|
||||
maxavatarsize=1024
|
||||
maxitemsperpage=50
|
||||
|
||||
#=================================================
|
||||
# CHECK IF THE APP CAN BE INSTALLED WITH THESE ARGS
|
||||
|
@ -52,6 +59,13 @@ ynh_app_setting_set --app=$app --key=domain --value=$domain
|
|||
ynh_app_setting_set --app=$app --key=path --value=$path_url
|
||||
ynh_app_setting_set --app=$app --key=set_motd --value=$set_motd
|
||||
ynh_app_setting_set --app=$app --key=enable_registration --value=$enable_registration
|
||||
ynh_app_setting_set --app=$app --key=enable_linksharing --value=$enable_linksharing
|
||||
ynh_app_setting_set --app=$app --key=enable_taskattachments --value=$enable_taskattachments
|
||||
ynh_app_setting_set --app=$app --key=enable_taskcomments --value=$enable_taskcomments
|
||||
ynh_app_setting_set --app=$app --key=enable_emailreminders --value=$enable_emailreminders
|
||||
ynh_app_setting_set --app=$app --key=enable_userdeletion --value=$enable_userdeletion
|
||||
ynh_app_setting_set --app=$app --key=maxavatarsize --value=$maxavatarsize
|
||||
ynh_app_setting_set --app=$app --key=maxitemsperpage --value=$maxitemsperpage
|
||||
|
||||
#=================================================
|
||||
# STANDARD MODIFICATIONS
|
||||
|
|
|
@ -29,6 +29,14 @@ secret=$(ynh_string_random --length=32)
|
|||
|
||||
set_motd=$(ynh_app_setting_get --app=$app --key=set_motd)
|
||||
enable_registration=$(ynh_app_setting_get --app=$app --key=enable_registration)
|
||||
enable_linksharing=$(ynh_app_setting_get --app=$app --key=enable_linksharing)
|
||||
enable_taskattachments=$(ynh_app_setting_get --app=$app --key=enable_taskattachments)
|
||||
enable_taskcomments=$(ynh_app_setting_get --app=$app --key=enable_taskcomments)
|
||||
enable_emailreminders=$(ynh_app_setting_get --app=$app --key=enable_emailreminders)
|
||||
enable_userdeletion=$(ynh_app_setting_get --app=$app --key=enable_userdeletion)
|
||||
maxavatarsize=$(ynh_app_setting_get --app=$app --key=maxavatarsize)
|
||||
maxitemsperpage=$(ynh_app_setting_get --app=$app --key=maxitemsperpage)
|
||||
|
||||
|
||||
#=================================================
|
||||
# CHECK VERSION
|
||||
|
@ -71,6 +79,41 @@ if [ -z "$enable_registration" ]; then
|
|||
ynh_app_setting_set --app=$app --key=enable_registration --value=$enable_registration
|
||||
fi
|
||||
|
||||
if [ -z "$enable_linksharing" ]; then
|
||||
enable_linksharing="true"
|
||||
ynh_app_setting_set --app=$app --key=enable_linksharing --value=$enable_linksharing
|
||||
fi
|
||||
|
||||
if [ -z "$enable_taskattachments" ]; then
|
||||
enable_taskattachments="true"
|
||||
ynh_app_setting_set --app=$app --key=enable_taskattachments --value=$enable_taskattachments
|
||||
fi
|
||||
|
||||
if [ -z "$enable_taskcomments" ]; then
|
||||
enable_taskcomments="true"
|
||||
ynh_app_setting_set --app=$app --key=enable_taskcomments --value=$enable_taskcomments
|
||||
fi
|
||||
|
||||
if [ -z "$enable_emailreminders" ]; then
|
||||
enable_emailreminders="true"
|
||||
ynh_app_setting_set --app=$app --key=enable_emailreminders --value=$enable_emailreminders
|
||||
fi
|
||||
|
||||
if [ -z "$enable_userdeletion" ]; then
|
||||
enable_userdeletion="true"
|
||||
ynh_app_setting_set --app=$app --key=enable_userdeletion --value=$enable_userdeletion
|
||||
fi
|
||||
|
||||
if [ -z "$maxavatarsize" ]; then
|
||||
maxavatarsize=1024
|
||||
ynh_app_setting_set --app=$app --key=maxavatarsize --value=$maxavatarsize
|
||||
fi
|
||||
|
||||
if [ -z "$maxitemsperpage" ]; then
|
||||
maxitemsperpage=50
|
||||
ynh_app_setting_set --app=$app --key=maxitemsperpage --value=$maxitemsperpage
|
||||
fi
|
||||
|
||||
# Cleaning legacy permissions
|
||||
if ynh_legacy_permissions_exists; then
|
||||
ynh_legacy_permissions_delete_all
|
||||
|
@ -126,6 +169,17 @@ chown -R $app:www-data "$final_path"
|
|||
chmod +x "$backend_path/vikunja"
|
||||
chown -R $app:www-data "$backend_path/files"
|
||||
|
||||
#=================================================
|
||||
# UPGRADE A CONFIGURATION
|
||||
#=================================================
|
||||
ynh_script_progression --message="Upgrading a configuration file..." --weight=1
|
||||
|
||||
redis_db=$(ynh_redis_get_free_db)
|
||||
ynh_add_config --template="../conf/config.yml" --destination="$backend_path/config.yml"
|
||||
|
||||
chmod 400 "$backend_path/config.yml"
|
||||
chown $app:$app "$backend_path/config.yml"
|
||||
|
||||
#=================================================
|
||||
# NGINX CONFIGURATION
|
||||
#=================================================
|
||||
|
|
Loading…
Reference in a new issue