2018-07-27 13:08:14 +00:00
|
|
|
#!/bin/bash
|
2018-07-16 16:10:33 +00:00
|
|
|
# config
|
2018-09-18 14:51:50 +00:00
|
|
|
SYNAPSE_BRANCH=develop
|
2018-07-16 16:10:33 +00:00
|
|
|
INSTALLATION_NAME=consent
|
|
|
|
SERVER_DIR=installations/$INSTALLATION_NAME
|
|
|
|
CONFIG_TEMPLATE=consent
|
2018-08-07 16:28:18 +00:00
|
|
|
PORT=5005
|
2018-07-16 16:10:33 +00:00
|
|
|
# set current directory to script directory
|
2018-07-27 13:04:04 +00:00
|
|
|
BASE_DIR=$(readlink -f $(dirname $0))
|
2018-07-27 12:00:01 +00:00
|
|
|
|
2018-07-27 13:08:14 +00:00
|
|
|
if [ -d $BASE_DIR/$SERVER_DIR ]; then
|
2018-08-14 10:53:16 +00:00
|
|
|
echo "synapse is already installed"
|
|
|
|
exit
|
2018-07-27 12:00:01 +00:00
|
|
|
fi
|
|
|
|
|
2018-07-27 12:10:19 +00:00
|
|
|
cd $BASE_DIR
|
2018-07-27 12:00:01 +00:00
|
|
|
|
2018-07-16 16:10:33 +00:00
|
|
|
mkdir -p installations/
|
|
|
|
curl https://codeload.github.com/matrix-org/synapse/zip/$SYNAPSE_BRANCH --output synapse.zip
|
2018-07-30 11:40:23 +00:00
|
|
|
unzip -q synapse.zip
|
2018-07-16 16:10:33 +00:00
|
|
|
mv synapse-$SYNAPSE_BRANCH $SERVER_DIR
|
2018-07-27 12:10:19 +00:00
|
|
|
cd $SERVER_DIR
|
2018-07-16 16:10:33 +00:00
|
|
|
virtualenv -p python2.7 env
|
|
|
|
source env/bin/activate
|
|
|
|
pip install --upgrade pip
|
|
|
|
pip install --upgrade setuptools
|
|
|
|
pip install .
|
|
|
|
python -m synapse.app.homeserver \
|
|
|
|
--server-name localhost \
|
|
|
|
--config-path homeserver.yaml \
|
|
|
|
--generate-config \
|
|
|
|
--report-stats=no
|
|
|
|
# apply configuration
|
|
|
|
cp -r $BASE_DIR/config-templates/$CONFIG_TEMPLATE/. ./
|
|
|
|
sed -i "s#{{SYNAPSE_ROOT}}#$(pwd)/#g" homeserver.yaml
|
2018-08-07 16:28:18 +00:00
|
|
|
sed -i "s#{{SYNAPSE_PORT}}#${PORT}#g" homeserver.yaml
|
2018-07-16 16:10:33 +00:00
|
|
|
sed -i "s#{{FORM_SECRET}}#$(uuidgen)#g" homeserver.yaml
|
2018-09-12 14:48:40 +00:00
|
|
|
sed -i "s#{{REGISTRATION_SHARED_SECRET}}#$(uuidgen)#g" homeserver.yaml
|
2018-07-16 16:10:33 +00:00
|
|
|
sed -i "s#{{MACAROON_SECRET_KEY}}#$(uuidgen)#g" homeserver.yaml
|