diff --git a/lib/gitea.sh b/lib/gitea.sh index cb7ac4d..412ef53 100644 --- a/lib/gitea.sh +++ b/lib/gitea.sh @@ -329,4 +329,13 @@ EOF /federated/bin/start authelia docker exec --user 1000 gitea gitea admin auth add-oauth --name "Authelia" --provider "openidConnect" --key "gitea" --secret "$GITEA_CLIENT_SECRET" --auto-discover-url "https://authelia.$DOMAIN/.well-known/openid-configuration" --skip-local-2fa "true" --scopes "email profile" --group-claim-name "groups" --admin-group "admin" --restricted-group "guest" + +cat >> /federated/apps/gitea/.env < Jitsi jitsi.$DOMAIN - admin@$DOMAIN
admin password above + admin@$DOMAIN
admin password in panel All users in panel have access using user@$DOMAIN Click here Jitsi is a zoom replacement video conferencing solution @@ -707,6 +707,29 @@ uninstall_jitsi() { # Delete the app directory rm -rf /federated/apps/jitsi + # Delete the image + docker image rm jitsi/jvb:$JITSI_IMAGE_VERSION &> /dev/null + docker image rm jitsi/jicofo:$JITSI_IMAGE_VERSION &> /dev/null + docker image rm jitsi/prosody:$JITSI_IMAGE_VERSION &> /dev/null + docker image rm jitsi/web:$JITSI_IMAGE_VERSION &> /dev/null + + # Delete the DNS record + docker exec pdns pdnsutil delete-rrset $DOMAIN jitsi A + + # Uninstall the SSO configuration if it exists in authelia (authelia must exist too) + if [[ $(grep "### Jitsi" /federated/apps/authelia/data/config/idproviders.yml 2>/dev/null) ]]; then + sed -i '/### Jitsi/,/### /{/### PowerDNS/!{/### /!d}}' /federated/apps/authelia/data/config/idproviders.yml + sed -i '/### Jitsi/d' /federated/apps/authelia/data/config/idproviders.yml + /federated/bin/stop authelia + /federated/bin/start authelia + fi + + if [[ -d "/federated/apps/jitsiopenid" ]]; then + cd /federated/apps/jitsiopenid && docker-compose -f docker-compose.yml -p jitsiopenid down &> /dev/null + rm -rf /federated/apps/jitsiopenid + docker image rm mod242/jitsi-go-openid:latest &> /dev/null + fi + kill -9 $SPINPID &> /dev/null echo -ne "done.\n" } @@ -716,3 +739,98 @@ start_jitsi() { echo -ne "done." } +configsso_jitsi() { + [ ! -d "/federated/apps/authelia" ] && failcheck "Authelia is not installed. You need this first before continuing." + [ ! -f "/federated/apps/authelia/data/config/idproviders.yml" ] && failcheck "Authelia idproviders.yml is missing." + [[ $(grep "### Jitsi" /federated/apps/authelia/data/config/idproviders.yml 2>/dev/null) ]] && failcheck "Authelia already has a Jitsi configuration." + + JITSI_JWT_APP_SECRET=$(create_password); + JITSI_CLIENT_SECRET=$(create_password); + #echo "$JITSI_CLIENT_SECRET" > /federated/apps/jitsi/.jitsiclient.secret + #chmod 600 /federated/apps/jitsi/.jitsiclient.secret + JITSI_CLIENT_SECRET_HASH=$(docker run -it --rm authelia/authelia:latest authelia crypto hash generate pbkdf2 --password $JITSI_CLIENT_SECRET | awk '{ print $2 }') + +cat >> /federated/apps/authelia/data/config/idproviders.yml <> /federated/apps/jitsi/.env + + # Install Jitsi OpenID GO plugin + mkdir -p /federated/apps/jitsiopenid &> /dev/null + +cat >> /federated/apps/jitsiopenid/docker-compose.yml < /federated/apps/jitsiopenid/.env < /dev/null + fi + +cat > /federated/apps/jitsiopenid/docker-compose.yml < /federated/apps/jitsiopenid/.env < /dev/null" "7" + + echo -ne "done." +}