#!/bin/sh

[ -n "${DISPLAY:-}" ] || [ -n "${WAYLAND_DISPLAY:-}" ] || unset \
	LANG \
	LANGUAGE \
	LC_CTYPE \
	LC_NUMERIC \
	LC_TIME \
	LC_COLLATE \
	LC_MONETARY \
	LC_MESSAGES \
	LC_PAPER \
	LC_NAME \
	LC_ADDRESS \
	LC_TELEPHONE \
	LC_MEASUREMENT \
	LC_IDENTIFICATION \
	LC_ALL \
	TEXTDOMAIN TEXTDOMAINDIR action \
	||:

[ -z "${WITH_ACTION:-}" ] || . install2-action-functions
. install2-sh-functions

update_splash()
{
	local PLYMOUTH=/bin/plymouth
	[ -x $PLYMOUTH ] || return 0
	[ -z "$DISPLAY" ] && [ -z "$WAYLAND_DISPLAY" ] || return 0
	$PLYMOUTH --update $1 ||:
}

stop_splash()
{
	local PLYMOUTH=/bin/plymouth
	local SYSTEMD_VCONSOLE_SETUP=/usr/lib/systemd/systemd-vconsole-setup
	local SETSYSFONT=setsysfont
	local VCONSOLE_CONF=/etc/vconsole.conf
	[ -z "$DISPLAY" ] && [ -z "$WAYLAND_DISPLAY" ] || return 0
	[ ! -x $PLYMOUTH ] || $PLYMOUTH quit ||:
	if [ -x $SYSTEMD_VCONSOLE_SETUP ] && [ -s "$VCONSOLE_CONF" ]; then
		$SYSTEMD_VCONSOLE_SETUP ||:
	elif which $SETSYSFONT >/dev/null 2>&1; then
		$SETSYSFONT ||:
	fi
}

# Stop alteratord for correct unmount $destdir
stop_alteratord()
{
	if [ -z "$INSTALL2_INIT" ]; then
		action "Stop alteratord in $destdir" exec_chroot /etc/init.d/alteratord stop ||:
		if sd_booted; then
			local SYSTEMCTL=systemctl
			action "Stop alteratord.service" $SYSTEMCTL stop alteratord.service ||:
			action "Stop alteratord.socket" $SYSTEMCTL stop alteratord.socket ||:
		else
			service alteratord stop ||:
		fi
	fi
}

start_alteratord()
{
	if sd_booted; then
		local SYSTEMCTL=systemctl
		action "Start alteratord.socket" $SYSTEMCTL start alteratord.socket ||:
	else
		action "Start alteratord" service alteratord start ||:
	fi
}

exec_chroot()
{
	env -i PATH="$PATH" HOME="/root" TMPDIR="/tmp" DURING_INSTALL="${DURING_INSTALL:-}" \
		chroot "$destdir" "$@"
}

# deprecated
run_chroot()
{
	exec_chroot "$@"
}
