#!/bin/bash # Laravel-style APP_KEY placeholders. # Bookstack (and other Laravel apps) expect APP_KEY=base64:<32-byte # base64> — refuses to boot otherwise. We swap RANDOMIZEDAPPKEY # placeholders with a freshly generated value. replaceLaravelAppKeys() { local file="$1" local existing_placeholders=$(runCfgOp grep -oE 'RANDOMIZEDAPPKEY[0-9]*' "$file" 2>/dev/null | sort -u) if [[ -n "$existing_placeholders" ]]; then while IFS= read -r placeholder; do if [[ -n "$placeholder" ]]; then local app_key app_key="base64:$(openssl rand -base64 32)" runCfgOp sed -i "s#${placeholder}#${app_key}#g" "$file" checkSuccess "Updated ${placeholder} in $(basename "$file") with a new Laravel APP_KEY." fi done <<< "$existing_placeholders" fi }