unoffical wafrn mirror wafrn.net
atproto social-network activitypub
at angular21 30 lines 1.0 kB view raw
1#!/usr/bin/env bash 2 3# run this file from WAFRN root directory, e.g. 4# 5# $ ./install/env_local_setup.sh 6 7export ROOT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )"/.. &> /dev/null && pwd ) 8 9VAPID_KEYS="$(npx --yes web-push generate-vapid-keys --json)" 10 11export WEBPUSH_PRIVATE="$(echo "$VAPID_KEYS" | jq -r .privateKey)" 12export WEBPUSH_PUBLIC="$(echo "$VAPID_KEYS" | jq -r .publicKey)" 13export WEBPUSH_EMAIL="mailto:wafrn@example.com" 14 15# this might be set earlier 16 17pushd $ROOT_DIR 18 19touch .env 20cp packages/frontend/Caddyfile.local.example packages/frontend/Caddyfile 21cp packages/backend/environment.local.example.ts packages/backend/environment.ts 22cp docker-compose.local.yml docker-compose.yml 23 24perl -pi -e 's/\$\{\{([_A-Z]+):-(.*)\}\}/$ENV{$1}||$2/ge' packages/frontend/Caddyfile 25perl -pi -e 's/\$\{\{([_A-Z]+)\}\}/$ENV{$1}/g' packages/frontend/Caddyfile 26 27perl -pi -e 's/\$\{\{([_A-Z]+):-(.*)\}\}/$ENV{$1}||$2/ge' packages/backend/environment.ts 28perl -pi -e 's/\$\{\{([_A-Z]+)\}\}/$ENV{$1}/g' packages/backend/environment.ts 29 30popd