#!/bin/bash set -e . /usr/share/debconf/confmodule echo -n "Fetching noosfero domain ..." domain=$(noosfero-runner 'puts Environment.default.default_hostname(true)') echo " [domain = $domain]" ejabberd_config='/etc/ejabberd/ejabberd.cfg' if test -f $ejabberd_config; then sed -i "s/acl, *\([^,]*\), *{user, *\([^,]*\), *[^}]*/acl, \1, {user, \2, \"$domain\"/" /etc/ejabberd/ejabberd.cfg sed -i "s/hosts, *\[[^]]*/hosts, [\"$domain\"/" /etc/ejabberd/ejabberd.cfg fi echo -n 'Fetching noosfero database name ...' noosfero_database=$(noosfero-runner 'puts Environment.connection_config[:database]') echo " [database = $noosfero_database]" echo 'Creating ejabberd schema ...' . /etc/default/noosfero noosfero_user="$NOOSFERO_USER" su - postgres -c "psql -c 'GRANT CREATE ON DATABASE $noosfero_database TO $noosfero_user;' > /dev/null" su - $noosfero_user -c 'rails dbconsole production < /usr/share/noosfero/util/chat/postgresql/ejabberd.sql > /dev/null' if which update-noosfero-odbc > /dev/null ; then update-noosfero-odbc fi ejabberd_default='/etc/default/ejabberd' noosfero_chat_default='/etc/default/noosfero-chat' if test -f $ejabberd_default; then if ! cat $ejabberd_default | grep "^\. $noosfero_chat_default" > /dev/null ; then echo 'Extending ejabberd defaults with noosfero-chat defaults ...' echo ". $noosfero_chat_default" >> $ejabberd_default fi fi a2enmod proxy_http invoke-rc.d ejabberd restart invoke-rc.d noosfero restart invoke-rc.d apache2 restart # stop debconf to avoid the problem with infinite hanging, cfe # http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=295477 db_stop #DEBHELPER#