#!/var/jb/bin/sh -


. /var/jb/etc/profile

_dpkg_path="$(apt-config dump | grep 'State::status')"
_dpkg_path="${_dpkg_path#*\"}"
_dpkg_path="${_dpkg_path%\/status*}"
_hash="$(ioreg -p IODeviceTree -l | grep boot-manifest-hash | tr 'a-z' 'A-Z')"
_hash="${_hash%%\>*}"
_hash="${_hash##*\<}"
_name="$(readlink -f '/var/jb')"
_name="${_name##*${_hash}\/}"
_random="${_name%\/procursus}"
_random="${_random#*dopamine-}"
_name=".${_name%\/procursus}"

_check_dpkg_lock(){
	while [ '1' -le '2' ]; do
		_lsof_dpkg="$(lsof "${_dpkg_path}/lock")"
		if [ -n "${_lsof_dpkg}" ]; then
			unset _lsof_dpkg
			sleep 1
		else
			unset _lsof_dpkg
			break
		fi
	done
}

_check_dpkg_lock
launchctl load '/var/jb/usr/libexec/mjip/com.nan.alertt.plist'
case "${1}" in
	--install)
		if readlink -f '/var/jb/Applications' | grep -q '/preboot/'; then
			mkdir -p "/var/containers/Bundle/Application/${_name}"
			mv '/var/jb/Applications' "/var/containers/Bundle/Application/${_name}/"
			ln -sf "/usr/lib/.Applications-${_random}" '/var/jb/Applications'
			ln -sf "/var/containers/Bundle/Application/${_name}/Applications" "/var/jb/basebin/.fakelib/.Applications-${_random}"
			_list="$(find "/var/containers/Bundle/Application/${_name}/Applications/" -maxdepth 1 -type d | grep '.app$')"
			i='1'
			i_max="$(echo "${_list}" | wc -l)"
			while [ "${i}" -le "${i_max}" ]; do
				_app_p="$(echo "${_list}" | sed -n "${i}p")"
				_app_p="/${_app_p#*\/}"
				uicache -s -p "${_app_p}"
				i="$((i+1))"
			done
			touch '/var/jb/usr/libexec/mjip/.moved'
			launchctl unload '/var/jb/usr/libexec/mjip/com.nan.alertt.plist'
			killall -9 cfprefsd
			killall -9 backboardd
			launchctl unload '/var/jb/usr/libexec/mjip/com.nan.mjip-install.plist'
		else
			echo 'Error: is installed'
		fi
		;;
	--uninstall)
		if readlink -f '/var/jb/Applications' | grep -q "/var/containers/Bundle/Application/${_name}/"; then
			rm -f "/var/jb/basebin/.fakelib/.Applications-${_random}"
			rm -f '/var/jb/Applications'
			mv "/var/containers/Bundle/Application/${_name}/Applications" '/var/jb/'
			rmdir "/var/containers/Bundle/Application/${_name}"
			_list="$(find "/var/jb/Applications/" -maxdepth 1 -type d | grep '.app$')"
			i='1'
			i_max="$(echo "${_list}" | wc -l)"
			while [ "${i}" -le "${i_max}" ]; do
				_app_p="$(echo "${_list}" | sed -n "${i}p")"
				_app_p="/${_app_p#*\/}"
				uicache -s -p "${_app_p}"
				i="$((i+1))"
			done
			launchctl unload '/var/jb/usr/libexec/mjip/com.nan.alertt.plist'
			killall -9 cfprefsd
			killall -9 backboardd
			rm -f '/var/jb/usr/libexec/mjip/.moved'
			launchctl unload '/var/jb/usr/libexec/mjip/com.nan.mjip-uninstall.plist'
		else
			echo "Error: it not install, so can't uninstall"
		fi
		;;
	*)
		echo "Usage: ${0} [--install/--uninstall]"
		;;
esac
launchctl unload '/var/jb/usr/libexec/mjip/com.nan.alertt.plist'
exit 0
