#!/bin/bash export FPM_TUNE_VERSION=v5 export NGINX_CONF_VERSION=v4 export MY_CNF_VERSION=v4 export ENTRYPOINT_VERSION=v3 run_occ(){ su -p www-data -s /bin/sh -c "/var/www/html/occ $@" } post_install_occ(){ IFS='|' read -ra CMD <<< "$OCC_CMDS" for cmd in "${CMD[@]}"; do run_occ "$cmd" done } install_apps(){ install_apps="$@" if [ -z "$install_apps" ] then install_apps=$APPS fi for app in $install_apps do run_occ "app:install $app" done } set_app_config(){ APP=$1 KEY=$2 VALUE=$3 run_occ "config:app:set $APP $KEY --value '$VALUE'" } install_bbb(){ install_apps bbb set_app_config bbb app.navigation true set_app_config bbb api.url "$BBB_URL" set_app_config bbb api.secret "$(cat /run/secrets/bbb_secret)" } install_onlyoffice(){ install_apps onlyoffice set_app_config onlyoffice DocumentServerUrl "$ONLYOFFICE_URL" set_app_config onlyoffice jwt_secret "$(cat /run/secrets/onlyoffice_jwt)" set_app_config onlyoffice customizationForcesave true } set_default_quota(){ set_app_config files default_quota "$DEFAULT_QUOTA" } set_authentik(){ install_apps sociallogin AUTHENTIK_SECRET=$(cat /run/secrets/authentik_secret) AUTHENTIK_ID=$(cat /run/secrets/authentik_id) set_app_config sociallogin custom_providers " { \"custom_oidc\":[ { \"name\":\"$AUTHENTIK_USER_PREFIX\", \"title\":\"authentik\", \"authorizeUrl\": \"https://$AUTHENTIK_DOMAIN/application/o/authorize/\", \"tokenUrl\": \"https://$AUTHENTIK_DOMAIN/application/o/token/\", \"displayNameClaim\":\"preferred_username\", \"userInfoUrl\": \"https://$AUTHENTIK_DOMAIN/application/o/userinfo/\", \"logoutUrl\": \"https://$AUTHENTIK_DOMAIN/if/session-end/nextcloud/\", \"clientId\":\"$AUTHENTIK_ID\", \"clientSecret\":\"$AUTHENTIK_SECRET\", \"scope\":\"openid profile email nextcloud\", \"groupsClaim\":\"nextcloud_groups\", \"style\":\"openid\", \"defaultGroup\":\"\", \"groupMapping\": { \"admin\": \"admin\" } } ] }" set_app_config sociallogin update_profile_on_login 1 set_app_config sociallogin auto_create_groups 1 set_app_config sociallogin hide_default_login 1 run_occ 'config:system:set social_login_auto_redirect --value true' run_occ 'config:system:set allow_user_to_change_display_name --value=false' run_occ 'config:system:set lost_password_link --value=disabled' }