#!/bin/bash # Script to generate .well-known static files based on QuickDID configuration # Usage: HTTP_EXTERNAL=quickdid.smokesignal.tools ./generate-wellknown.sh # # Note: Since we no longer process SERVICE_KEY, you'll need to manually # add the public key to the did.json file if you need DID document support. set -e # Check required environment variables if [ -z "$HTTP_EXTERNAL" ]; then echo "Error: HTTP_EXTERNAL environment variable is required" echo "Usage: HTTP_EXTERNAL=example.com ./generate-wellknown.sh" exit 1 fi # Ensure www/.well-known directory exists mkdir -p www/.well-known # Generate service DID from HTTP_EXTERNAL if [[ "$HTTP_EXTERNAL" == *":"* ]]; then # Contains port - URL encode the colon SERVICE_DID="did:web:${HTTP_EXTERNAL//:/%3A}" else SERVICE_DID="did:web:$HTTP_EXTERNAL" fi echo "Generating .well-known files for $SERVICE_DID" # Write atproto-did file echo "$SERVICE_DID" > www/.well-known/atproto-did echo "Created: www/.well-known/atproto-did" # Create a basic did.json template # Note: You'll need to manually add the publicKeyMultibase if you need DID document support cat > www/.well-known/did.json <