#!/bin/bash

PHPVER=53

INITSYS=`readlink -f /proc/1/exe`
if [ "$INITSYS" != "/lib/systemd/systemd" -a "$INITSYS" != "/usr/lib/systemd/systemd" ]; then
	echo "ERROR: This chr package supports only systemd."
	exit 0
fi

# create msmtp user
getent group msmtp >/dev/null 2>&1 ||
	addgroup --system msmtp
getent passwd msmtp >/dev/null 2>&1 ||
	adduser --system --home /var/lib/msmtp --no-create-home --disabled-password --shell /usr/sbin/nologin --ingroup msmtp msmtp


echo "Checking systemd notify,log socket placeholders"
/usr/lib/3gsystools/chr_placeholder_check /chroot/httpd${PHPVER}/run /systemd/notify file
/usr/lib/3gsystools/chr_placeholder_check /chroot/httpd${PHPVER}/run /systemd/journal/dev-log file

# restarting syslog
systemctl restart rsyslog

# creating link from /dev/log to systemd log socket
if ! [ -e /chroot/httpd${PHPVER}/dev/log ]; then
	ln -s ../run/systemd/journal/dev-log /chroot/httpd${PHPVER}/dev/log
fi

echo "Checking mysql socket dir"
#/usr/lib/3gsystools/chr_placeholder_check /run /mysqld dir
/usr/lib/3gsystools/chr_placeholder_check /chroot/httpd${PHPVER}/run /mysqld dir

echo "Checking apache log folders"
/usr/lib/3gsystools/chr_placeholder_check /srv /log dir
/usr/lib/3gsystools/chr_placeholder_check /srv /log/apache2-${PHPVER} dir
/usr/lib/3gsystools/chr_placeholder_check /srv /log/apache2-${PHPVER}/main dir
test -e /srv/log/apache2-${PHPVER}/php || install -m 755 -o www-data -g www-data -d /srv/log/apache2-${PHPVER}/php
test -e /srv/log/apache2-${PHPVER}/phpmail || install -m 755 -o www-data -g www-data -d /srv/log/apache2-${PHPVER}/phpmail
test -e /srv/log/apache2-${PHPVER}/vhosts || install -m 755 -o www-data -g www-data -d /srv/log/apache2-${PHPVER}/vhosts

/usr/lib/3gsystools/chr_placeholder_check /srv /log/apache2-${PHPVER}/daily dir
/usr/lib/3gsystools/chr_placeholder_check /srv /log/apache2-${PHPVER}/daily/main dir
/usr/lib/3gsystools/chr_placeholder_check /srv /log/apache2-${PHPVER}/daily/php dir
/usr/lib/3gsystools/chr_placeholder_check /srv /log/apache2-${PHPVER}/daily/phpmail dir

/usr/lib/3gsystools/chr_placeholder_check /chroot/httpd${PHPVER}/var/log /apache2 dir

echo "Checking web folder"
/usr/lib/3gsystools/chr_placeholder_check /srv /web dir
/usr/lib/3gsystools/chr_placeholder_check /srv /webtmp dir
/usr/lib/3gsystools/chr_placeholder_check /chroot/httpd${PHPVER} /web dir

echo "Updating fstab"
/usr/local/sbin/fstab-chr

# delete deprecated units
[ -h /etc/systemd/system/multi-user.target.wants/apache2-chroot-${PHPVER}.service ] && rm /etc/systemd/system/multi-user.target.wants/apache2-chroot-${PHPVER}.service

# activating systemd units
systemctl daemon-reload


# Enabling systemd units

SYSTEMD_UNITS="
	chr-httpd${PHPVER}.target
	chroot-httpd${PHPVER}-run-systemd-notify.mount
	chroot-httpd${PHPVER}-tmp.mount
	chroot-httpd${PHPVER}-run-systemd-journal-dev\\x2dlog.mount
	chroot-httpd${PHPVER}-var-log-apache2.mount
	chroot-httpd${PHPVER}-web.mount
	chroot-httpd${PHPVER}-web-temp.mount
	chroot-httpd${PHPVER}-run-mysqld.mount
	apache2-chroot-${PHPVER}.service
"

for systemd_unit in $SYSTEMD_UNITS; do

	systemctl enable "${systemd_unit}"
	if deb-systemd-helper --quiet was-enabled "${systemd_unit}"; then
		deb-systemd-helper enable "${systemd_unit}" >/dev/null || true
	else
		deb-systemd-helper update-state "${systemd_unit}" >/dev/null || true
	fi

done

exit 0
