#!/bin/sh

PACKAGE_DEST=$SYNOPKG_PKGDEST
PRIVATE_LOCATION="/var/packages/MailServer/target"
PKG_TEXT_DIR="${PRIVATE_LOCATION}/UI/texts/"

SERVICETOOL="/usr/syno/bin/servicetool"

# links
LIB_SASL2_SRC="/lib/sasl2"
LIB_SASL2_LINK="${PRIVATE_LOCATION}/etc/sasl2"
SASLAUTHD_SRC="/usr/sbin/saslauthd"
SASLAUTHD_LINK="${PRIVATE_LOCATION}/sbin/saslauthd"

#hook
PKG_HOOK_DIR="/usr/local/libexec/"
USER_SET_HOOK_DIR="${PKG_HOOK_DIR}user_set/"
USER_DELETE_HOOK_DIR="${PKG_HOOK_DIR}user_delete/"
GROUP_SET_HOOK_DIR="${PKG_HOOK_DIR}group_set/"
GROUP_DELETE_HOOK_DIR="${PKG_HOOK_DIR}group_delete/"
DOMAIN_LEAVE_HOOK_DIR="${PKG_HOOK_DIR}dirsvs_leave/"
HOOK_SCRT_DIR="${PRIVATE_LOCATION}/scripts/"

# creating symbolic link in non-preserved area

# create sasl2 and saslauthd link for smtp
ln -sf ${LIB_SASL2_SRC} ${LIB_SASL2_LINK}
ln -sf ${SASLAUTHD_SRC} ${SASLAUTHD_LINK}

#create hook dir
mkdir -p ${USER_SET_HOOK_DIR}
mkdir -p ${USER_DELETE_HOOK_DIR}
mkdir -p ${GROUP_SET_HOOK_DIR}
mkdir -p ${GROUP_DELETE_HOOK_DIR}
mkdir -p ${DOMAIN_LEAVE_HOOK_DIR}

#link to hook script
ln -sf ${HOOK_SCRT_DIR}/MailServerUserSet.sh ${USER_SET_HOOK_DIR}
ln -sf ${HOOK_SCRT_DIR}/MailServerUserDelete.sh ${USER_DELETE_HOOK_DIR}
ln -sf ${HOOK_SCRT_DIR}/MailServerGroupSet.sh ${GROUP_SET_HOOK_DIR}
ln -sf ${HOOK_SCRT_DIR}/MailServerGroupDelete.sh ${GROUP_DELETE_HOOK_DIR}
ln -sf ${HOOK_SCRT_DIR}/MailServerDirLeave.sh ${DOMAIN_LEAVE_HOOK_DIR}

#set permission
chgrp maildrop "/var/packages/MailServer/target/sbin/postqueue"
chgrp maildrop "/var/packages/MailServer/target/sbin/postdrop"
chmod g+s "/var/packages/MailServer/target/sbin/postqueue" "/var/packages/MailServer/target/sbin/postdrop"

#upgrade
UPGRAGE_FILE="/tmp/mailserver.upgrade"
LOG_DB="/var/packages/MailServer/etc/maillog.db"
UPDATER="/var/packages/MailServer/target/bin/updater"
if [ ! -e ${UPGRAGE_FILE} ] && [ -e ${LOG_DB} ]; then
	${UPDATER} -M 1 -m 0 -v 22
	rm -f ${UPGRAGE_FILE}
	rm -f ${UPDATER}
fi

# add port-forwarding config file
${SERVICETOOL} --install-configure-file --package ${PRIVATE_LOCATION}/etc/mailserver_port

cp -a ${PRIVATE_LOCATION}/conf_pkgcenter "/var/packages/MailServer/conf"
exit 0
