diff --git a/conf/config.yml b/conf/config.yml index 4ea9c3c..384ad0f 100644 --- a/conf/config.yml +++ b/conf/config.yml @@ -16,11 +16,11 @@ service: # Enable the caldav endpoint, see the docs for more details enablecaldav: true # Set the motd message, available from the /info endpoint - motd: "" + motd: __SET_MOTD__ # Enable sharing of lists via a link enablelinksharing: true # Whether to let new users registering themselves or not - enableregistration: true + enableregistration: __ENABLE_REGISTRATION__ # Whether to enable task attachments or not 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. diff --git a/config_panel.toml b/config_panel.toml new file mode 100644 index 0000000..dfccafb --- /dev/null +++ b/config_panel.toml @@ -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, available from the /info endpoint" + 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" + diff --git a/scripts/install b/scripts/install index e3e4662..71f5866 100644 --- a/scripts/install +++ b/scripts/install @@ -28,6 +28,9 @@ secret=$(ynh_string_random --length=32) app=$YNH_APP_INSTANCE_NAME +set_motd="" +enable_registration="true" + #================================================= # CHECK IF THE APP CAN BE INSTALLED WITH THESE ARGS #================================================= @@ -37,7 +40,6 @@ final_path=/var/www/$app test ! -e "$final_path" || ynh_die --message="This path already contains a folder" mkdir -p "/etc/vikunja" -#touch "/etc/vikunja/config.yml" # Register (book) web path ynh_webpath_register --app=$app --domain=$domain --path_url=$path_url @@ -49,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=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 @@ -128,6 +132,8 @@ ynh_script_progression --message="Adding a configuration file..." --weight=1 redis_db=$(ynh_redis_get_free_db) ynh_add_config --template="../conf/config.yml" --destination="/etc/vikunja/config.yml" +chmod 400 "/etc/vikunja/config.yml" +chown $app:$app "/etc/vikunja/config.yml" #================================================= # SETUP SYSTEMD diff --git a/scripts/upgrade b/scripts/upgrade index 580f2c8..9d1a724 100644 --- a/scripts/upgrade +++ b/scripts/upgrade @@ -26,6 +26,9 @@ db_pwd=$(ynh_app_setting_get --app=$app --key=psqlpwd) timezone="$(cat /etc/timezone)" 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 #================================================= @@ -37,6 +40,16 @@ upgrade_type=$(ynh_check_app_version_changed) #================================================= 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 if ynh_legacy_permissions_exists; then ynh_legacy_permissions_delete_all