#!/bin/bash

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 sftpgo user
getent group sftpgo >/dev/null 2>&1 ||
	addgroup --system sftpgo
getent passwd sftpgo >/dev/null 2>&1 ||
	adduser --system --home /home/sftpgo --no-create-home --disabled-password --shell /bin/false --ingroup sftpgo sftpgo

echo "Checking systemd notify,log socket placeholders"
/usr/lib/3gsystools/chr_placeholder_check /chroot/sftpd/run /systemd/notify file
/usr/lib/3gsystools/chr_placeholder_check /chroot/sftpd/run /systemd/journal/dev-log file

# restarting syslog
#systemctl restart rsyslog

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

# ensure files and folders have the appropriate permissions
#echo "Checking config and data dir permissions"
#chown -R root:www-data /chroot/sftpd/etc/sftpgo
#chown -R www-data:www-data /var/lib/sftpgo
#chmod 755 /etc/sftpgo /etc/sftpgo/env.d /var/lib/sftpgo
#chmod 644 /etc/sftpgo/sftpgo.json

#echo "Checking mysql socket dir"
#/usr/lib/3gsystools/chr_placeholder_check /chroot/sftpd/run /mysqld dir

#echo "Checking sftpgo data folders"
#test -e /srv/sftpgo || install -m 755 -o sftpgo -g sftpgo -d /srv/sftpgo
#test -e /chroot/sftpd/srv/sftpgo || install -m 755 -o sftpgo -g sftpgo -d /chroot/sftpd/srv/sftpgo

#echo "Checking sftpgo log folders"
#/usr/lib/3gsystools/chr_placeholder_check /srv /log dir
#test -e /srv/log/sftpgo || install -m 755 -o sftpgo -g sftpgo -d /srv/log/sftpgo
#test -e /chroot/sftpd/var/log/sftpgo || install -m 755 -o sftpgo -g sftpgo -d /chroot/sftpd/var/log/sftpgo

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

# activating systemd units
systemctl daemon-reload


# Enabling systemd units
#	chroot-sftpd-srv-sftpgo.mount
#	chroot-sftpd-var-log-sftpgo.mount
#	chroot-sftpd-run-mysqld.mount

SYSTEMD_UNITS="
	chr-sftpd.target
	chroot-sftpd-etc-ssl-sys.mount
	chroot-sftpd-run-systemd-notify.mount
	chroot-sftpd-tmp.mount
	chroot-sftpd-run-systemd-journal-dev\\x2dlog.mount
	chroot-sftpd-web.mount
	sftpgo-chroot.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
