mirror of
https://github.com/YunoHost-Apps/vikunja_ynh.git
synced 2024-09-03 18:06:26 +02:00
commit
ddd035dcef
14 changed files with 109 additions and 47 deletions
13
README.md
13
README.md
|
@ -15,9 +15,18 @@ If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/in
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
|
|
||||||
Self-hosted To-Do list application
|
Vikunja is a self-hosted open-source to-do list application for all platforms.
|
||||||
|
|
||||||
**Shipped version:** 0.18.1~ynh3
|
### Features
|
||||||
|
|
||||||
|
- Stay organized
|
||||||
|
- Collaborate with peers
|
||||||
|
- Tasks
|
||||||
|
- Kanban board
|
||||||
|
- CalDAV
|
||||||
|
- Links
|
||||||
|
|
||||||
|
**Shipped version:** 0.18.2~ynh1
|
||||||
|
|
||||||
**Demo:** https://try.vikunja.io/login
|
**Demo:** https://try.vikunja.io/login
|
||||||
|
|
||||||
|
|
11
README_fr.md
11
README_fr.md
|
@ -13,7 +13,16 @@ Si vous n'avez pas YunoHost, regardez [ici](https://yunohost.org/#/install) pour
|
||||||
|
|
||||||
Vikunja est une application de liste de tâches Open Source auto-hébergée pour toutes les plateformes.
|
Vikunja est une application de liste de tâches Open Source auto-hébergée pour toutes les plateformes.
|
||||||
|
|
||||||
**Version incluse :** 0.18.1~ynh3
|
### Features
|
||||||
|
|
||||||
|
- Stay organized
|
||||||
|
- Collaborate with peers
|
||||||
|
- Tasks
|
||||||
|
- Kanban board
|
||||||
|
- CalDAV
|
||||||
|
- Links
|
||||||
|
|
||||||
|
**Version incluse :** 0.18.2~ynh1
|
||||||
|
|
||||||
**Démo :** https://try.vikunja.io/login
|
**Démo :** https://try.vikunja.io/login
|
||||||
|
|
||||||
|
|
|
@ -16,11 +16,11 @@ service:
|
||||||
# Enable the caldav endpoint, see the docs for more details
|
# Enable the caldav endpoint, see the docs for more details
|
||||||
enablecaldav: true
|
enablecaldav: true
|
||||||
# Set the motd message, available from the /info endpoint
|
# Set the motd message, available from the /info endpoint
|
||||||
motd: ""
|
motd: __SET_MOTD__
|
||||||
# Enable sharing of lists via a link
|
# Enable sharing of lists via a link
|
||||||
enablelinksharing: true
|
enablelinksharing: true
|
||||||
# Whether to let new users registering themselves or not
|
# Whether to let new users registering themselves or not
|
||||||
enableregistration: true
|
enableregistration: __ENABLE_REGISTRATION__
|
||||||
# Whether to enable task attachments or not
|
# Whether to enable task attachments or not
|
||||||
enabletaskattachments: true
|
enabletaskattachments: true
|
||||||
# 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.
|
# 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.
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
SOURCE_URL=https://dl.vikunja.io/frontend/vikunja-frontend-0.18.1.zip
|
SOURCE_URL=https://dl.vikunja.io/frontend/vikunja-frontend-0.18.2.zip
|
||||||
SOURCE_SUM=bb85c0e89aa7fa9d89d2c07629a6f0658fe517065a91912f51487f7a7ae1b4de
|
SOURCE_SUM=d2f1069f91ba660fe898d4df7efb40a35dbe743dadaa853a09c79955521ee16f
|
||||||
SOURCE_SUM_PRG=sha256sum
|
SOURCE_SUM_PRG=sha256sum
|
||||||
SOURCE_FORMAT=zip
|
SOURCE_FORMAT=zip
|
||||||
SOURCE_IN_SUBDIR=false
|
SOURCE_IN_SUBDIR=false
|
||||||
SOURCE_FILENAME=
|
|
||||||
SOURCE_EXTRACT=true
|
SOURCE_EXTRACT=true
|
23
config_panel.toml
Normal file
23
config_panel.toml
Normal file
|
@ -0,0 +1,23 @@
|
||||||
|
version = "1.0"
|
||||||
|
|
||||||
|
[main]
|
||||||
|
name = "Vikunja configuration"
|
||||||
|
services = ["__APP__"]
|
||||||
|
|
||||||
|
[main.config]
|
||||||
|
name = "Configuration Options"
|
||||||
|
|
||||||
|
[main.config.set_motd]
|
||||||
|
ask = "Set MOTD"
|
||||||
|
type = "string"
|
||||||
|
help = "Set the MOTD message shown in Vikunja login page"
|
||||||
|
bind = "motd:/etc/vikunja/config.yml"
|
||||||
|
|
||||||
|
[main.config.enable_registration]
|
||||||
|
ask = "Enable registration"
|
||||||
|
type = "boolean"
|
||||||
|
yes = "true"
|
||||||
|
no = "false"
|
||||||
|
help = "Whether to let new users registering themselves or not"
|
||||||
|
bind = "enableregistration:/etc/vikunja/config.yml"
|
||||||
|
|
10
doc/DESCRIPTION.md
Normal file
10
doc/DESCRIPTION.md
Normal file
|
@ -0,0 +1,10 @@
|
||||||
|
Vikunja is a self-hosted open-source to-do list application for all platforms.
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
- Stay organized
|
||||||
|
- Collaborate with peers
|
||||||
|
- Tasks
|
||||||
|
- Kanban board
|
||||||
|
- CalDAV
|
||||||
|
- Links
|
|
@ -1 +1,10 @@
|
||||||
Vikunja est une application de liste de tâches Open Source auto-hébergée pour toutes les plateformes.
|
Vikunja est une application de liste de tâches Open Source auto-hébergée pour toutes les plateformes.
|
||||||
|
|
||||||
|
### Features
|
||||||
|
|
||||||
|
- Stay organized
|
||||||
|
- Collaborate with peers
|
||||||
|
- Tasks
|
||||||
|
- Kanban board
|
||||||
|
- CalDAV
|
||||||
|
- Links
|
|
@ -6,7 +6,7 @@
|
||||||
"en": "Self-hosted To-Do list application",
|
"en": "Self-hosted To-Do list application",
|
||||||
"fr": "Application de liste de tâches auto-hébergée"
|
"fr": "Application de liste de tâches auto-hébergée"
|
||||||
},
|
},
|
||||||
"version": "0.18.1~ynh3",
|
"version": "0.18.2~ynh1",
|
||||||
"url": "https://vikunja.io/",
|
"url": "https://vikunja.io/",
|
||||||
"upstream": {
|
"upstream": {
|
||||||
"license": "GPL-3.0",
|
"license": "GPL-3.0",
|
||||||
|
|
|
@ -19,34 +19,6 @@ pkg_dependencies="postgresql apt-transport-https"
|
||||||
# FUTURE OFFICIAL HELPERS
|
# FUTURE OFFICIAL HELPERS
|
||||||
#=================================================
|
#=================================================
|
||||||
|
|
||||||
# Check the architecture
|
|
||||||
#
|
|
||||||
# example: architecture=$(ynh_detect_arch)
|
|
||||||
#
|
|
||||||
# usage: ynh_detect_arch
|
|
||||||
#
|
|
||||||
# Requires YunoHost version 2.2.4 or higher.
|
|
||||||
|
|
||||||
ynh_detect_arch(){
|
|
||||||
local architecture
|
|
||||||
if [ -n "$(uname -m | grep arm64)" ] || [ -n "$(uname -m | grep aarch64)" ]; then
|
|
||||||
architecture="arm64"
|
|
||||||
elif [ -n "$(uname -m | grep 64)" ]; then
|
|
||||||
architecture="amd64"
|
|
||||||
elif [ -n "$(uname -m | grep 86)" ]; then
|
|
||||||
architecture="386"
|
|
||||||
elif [ -n "$(uname -m | grep armv7)" ]; then
|
|
||||||
architecture="arm7"
|
|
||||||
elif [ -n "$(uname -m | grep armv6)" ]; then
|
|
||||||
architecture="arm6"
|
|
||||||
elif [ -n "$(uname -m | grep armv5)" ]; then
|
|
||||||
architecture="arm5"
|
|
||||||
else
|
|
||||||
architecture="unknown"
|
|
||||||
fi
|
|
||||||
echo $architecture
|
|
||||||
}
|
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# REDIS HELPERS
|
# REDIS HELPERS
|
||||||
#=================================================
|
#=================================================
|
||||||
|
|
|
@ -35,6 +35,9 @@ db_pwd=$(ynh_app_setting_get --app=$app --key=psqlpwd)
|
||||||
secret=$(ynh_string_random --length=32)
|
secret=$(ynh_string_random --length=32)
|
||||||
timezone="$(cat /etc/timezone)"
|
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)
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP
|
# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP
|
||||||
#=================================================
|
#=================================================
|
||||||
|
|
|
@ -24,11 +24,13 @@ domain=$YNH_APP_ARG_DOMAIN
|
||||||
path_url="/"
|
path_url="/"
|
||||||
is_public=$YNH_APP_ARG_IS_PUBLIC
|
is_public=$YNH_APP_ARG_IS_PUBLIC
|
||||||
timezone="$(cat /etc/timezone)"
|
timezone="$(cat /etc/timezone)"
|
||||||
architecture=$(ynh_detect_arch)
|
|
||||||
secret=$(ynh_string_random --length=32)
|
secret=$(ynh_string_random --length=32)
|
||||||
|
|
||||||
app=$YNH_APP_INSTANCE_NAME
|
app=$YNH_APP_INSTANCE_NAME
|
||||||
|
|
||||||
|
set_motd=""
|
||||||
|
enable_registration="true"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# CHECK IF THE APP CAN BE INSTALLED WITH THESE ARGS
|
# CHECK IF THE APP CAN BE INSTALLED WITH THESE ARGS
|
||||||
#=================================================
|
#=================================================
|
||||||
|
@ -38,7 +40,6 @@ final_path=/var/www/$app
|
||||||
test ! -e "$final_path" || ynh_die --message="This path already contains a folder"
|
test ! -e "$final_path" || ynh_die --message="This path already contains a folder"
|
||||||
|
|
||||||
mkdir -p "/etc/vikunja"
|
mkdir -p "/etc/vikunja"
|
||||||
#touch "/etc/vikunja/config.yml"
|
|
||||||
|
|
||||||
# Register (book) web path
|
# Register (book) web path
|
||||||
ynh_webpath_register --app=$app --domain=$domain --path_url=$path_url
|
ynh_webpath_register --app=$app --domain=$domain --path_url=$path_url
|
||||||
|
@ -50,6 +51,8 @@ ynh_script_progression --message="Storing installation settings..." --weight=2
|
||||||
|
|
||||||
ynh_app_setting_set --app=$app --key=domain --value=$domain
|
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=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
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# STANDARD MODIFICATIONS
|
# STANDARD MODIFICATIONS
|
||||||
|
@ -108,7 +111,11 @@ ynh_script_progression --message="Installing backend..." --weight=15
|
||||||
tempdir="$(mktemp -d)"
|
tempdir="$(mktemp -d)"
|
||||||
ynh_setup_source --dest_dir=$tempdir --source_id=api
|
ynh_setup_source --dest_dir=$tempdir --source_id=api
|
||||||
ynh_exec_warn_less dpkg -i $tempdir/vikunja-unstable-amd64.deb
|
ynh_exec_warn_less dpkg -i $tempdir/vikunja-unstable-amd64.deb
|
||||||
|
|
||||||
|
mkdir -p "/opt/vikunja/files"
|
||||||
|
|
||||||
chmod +x "/opt/vikunja/vikunja"
|
chmod +x "/opt/vikunja/vikunja"
|
||||||
|
chown -R $app:www-data "/opt/vikunja/files"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# NGINX CONFIGURATION
|
# NGINX CONFIGURATION
|
||||||
|
@ -125,8 +132,8 @@ ynh_script_progression --message="Adding a configuration file..." --weight=1
|
||||||
|
|
||||||
redis_db=$(ynh_redis_get_free_db)
|
redis_db=$(ynh_redis_get_free_db)
|
||||||
ynh_add_config --template="../conf/config.yml" --destination="/etc/vikunja/config.yml"
|
ynh_add_config --template="../conf/config.yml" --destination="/etc/vikunja/config.yml"
|
||||||
|
chmod 400 "/etc/vikunja/config.yml"
|
||||||
#chmod 600 "/etc/vikunja/config.yml"
|
chown $app:$app "/etc/vikunja/config.yml"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# SETUP SYSTEMD
|
# SETUP SYSTEMD
|
||||||
|
|
|
@ -74,7 +74,7 @@ ynh_script_progression --message="Removing $app main directory..." --weight=6
|
||||||
|
|
||||||
# Remove the app directory securely
|
# Remove the app directory securely
|
||||||
ynh_secure_remove --file="$final_path"
|
ynh_secure_remove --file="$final_path"
|
||||||
ynh_secure_remove --file="/etc/vikunja"
|
#ynh_secure_remove --file="/etc/vikunja"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# REMOVE NGINX CONFIGURATION
|
# REMOVE NGINX CONFIGURATION
|
||||||
|
|
|
@ -69,6 +69,7 @@ ynh_restore_file --origin_path="/etc/vikunja/config.yml"
|
||||||
|
|
||||||
ynh_restore_file --origin_path="/opt/vikunja"
|
ynh_restore_file --origin_path="/opt/vikunja"
|
||||||
chmod +x "/opt/vikunja/vikunja"
|
chmod +x "/opt/vikunja/vikunja"
|
||||||
|
chown -R $app:www-data "/opt/vikunja/files"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# REINSTALL DEPENDENCIES
|
# REINSTALL DEPENDENCIES
|
||||||
|
|
|
@ -20,17 +20,18 @@ domain=$(ynh_app_setting_get --app=$app --key=domain)
|
||||||
path_url=$(ynh_app_setting_get --app=$app --key=path)
|
path_url=$(ynh_app_setting_get --app=$app --key=path)
|
||||||
final_path=$(ynh_app_setting_get --app=$app --key=final_path)
|
final_path=$(ynh_app_setting_get --app=$app --key=final_path)
|
||||||
port=$(ynh_app_setting_get --app=$app --key=port)
|
port=$(ynh_app_setting_get --app=$app --key=port)
|
||||||
architecture=$(ynh_detect_arch)
|
|
||||||
db_name=$(ynh_app_setting_get --app=$app --key=db_name)
|
db_name=$(ynh_app_setting_get --app=$app --key=db_name)
|
||||||
db_user=$db_name
|
db_user=$db_name
|
||||||
db_pwd=$(ynh_app_setting_get --app=$app --key=psqlpwd)
|
db_pwd=$(ynh_app_setting_get --app=$app --key=psqlpwd)
|
||||||
timezone="$(cat /etc/timezone)"
|
timezone="$(cat /etc/timezone)"
|
||||||
secret=$(ynh_string_random --length=32)
|
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)
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# CHECK VERSION
|
# CHECK VERSION
|
||||||
#=================================================
|
#=================================================
|
||||||
ynh_script_progression --message="Checking version..."
|
|
||||||
|
|
||||||
upgrade_type=$(ynh_check_app_version_changed)
|
upgrade_type=$(ynh_check_app_version_changed)
|
||||||
|
|
||||||
|
@ -39,6 +40,16 @@ upgrade_type=$(ynh_check_app_version_changed)
|
||||||
#=================================================
|
#=================================================
|
||||||
ynh_script_progression --message="Ensuring downward compatibility..." --weight=1
|
ynh_script_progression --message="Ensuring downward compatibility..." --weight=1
|
||||||
|
|
||||||
|
if [ -z "$set_motd" ]; then
|
||||||
|
set_motd=""
|
||||||
|
ynh_app_setting_set --app=$app --key=set_motd --value=$set_motd
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$enable_registration" ]; then
|
||||||
|
enable_registration="true"
|
||||||
|
ynh_app_setting_set --app=$app --key=enable_registration --value=$enable_registration
|
||||||
|
fi
|
||||||
|
|
||||||
# Cleaning legacy permissions
|
# Cleaning legacy permissions
|
||||||
if ynh_legacy_permissions_exists; then
|
if ynh_legacy_permissions_exists; then
|
||||||
ynh_legacy_permissions_delete_all
|
ynh_legacy_permissions_delete_all
|
||||||
|
@ -46,6 +57,11 @@ if ynh_legacy_permissions_exists; then
|
||||||
ynh_app_setting_delete --app=$app --key=is_public
|
ynh_app_setting_delete --app=$app --key=is_public
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# Create a permission if needed
|
||||||
|
if ! ynh_permission_exists --permission="api"; then
|
||||||
|
ynh_permission_create --permission="api" --url="/api" --allowed="visitors" --auth_header="false" --show_tile="false" --protected="true"
|
||||||
|
fi
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP
|
# BACKUP BEFORE UPGRADE THEN ACTIVE TRAP
|
||||||
#=================================================
|
#=================================================
|
||||||
|
@ -93,17 +109,21 @@ then
|
||||||
|
|
||||||
# Download, check integrity, uncompress and patch the source from app.src
|
# Download, check integrity, uncompress and patch the source from app.src
|
||||||
ynh_setup_source --dest_dir="$final_path" --source_id="front" --keep="/etc/vikunja/config.yml"
|
ynh_setup_source --dest_dir="$final_path" --source_id="front" --keep="/etc/vikunja/config.yml"
|
||||||
|
|
||||||
|
mkdir -p "/opt/vikunja/files"
|
||||||
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
chmod 750 "$final_path"
|
chmod 750 "$final_path"
|
||||||
chmod -R o-rwx "$final_path"
|
chmod -R o-rwx "$final_path"
|
||||||
chown -R $app:www-data "$final_path"
|
chown -R $app:www-data "$final_path"
|
||||||
chmod +x /opt/vikunja/vikunja
|
chmod +x "/opt/vikunja/vikunja"
|
||||||
|
chown -R $app:www-data "/opt/vikunja/files"
|
||||||
|
|
||||||
#=================================================
|
#=================================================
|
||||||
# ADD A CONFIGURATION
|
# ADD A CONFIGURATION
|
||||||
#=================================================
|
#=================================================
|
||||||
ynh_script_progression --message="Adding a configuration file..." --weight=1
|
#ynh_script_progression --message="Adding a configuration file..." --weight=1
|
||||||
|
|
||||||
# redis_db=$(ynh_redis_get_free_db)
|
# redis_db=$(ynh_redis_get_free_db)
|
||||||
# ynh_add_config --template="../conf/config.yml" --destination="/etc/vikunja/config.yml"
|
# ynh_add_config --template="../conf/config.yml" --destination="/etc/vikunja/config.yml"
|
||||||
|
|
Loading…
Reference in a new issue