#!/usr/bin/env bash
set -eu

if [[ -v JAVA_HOME_OVERRIDE ]]; then
	JAVA_HOME="${JAVA_HOME_OVERRIDE}"
else
	if ! GENTOO_JAVA_VM="$(depend-java-query --get-vm '|| ( virtual/jre:17 virtual/jre:21 )')"; then
		>&2 echo "Could not find Java VM for || ( virtual/jre:17 virtual/jre:21 )"
	exit 1
	fi

	if ! JAVA_HOME_ASSIGNMENT=$(java-config -P ${GENTOO_JAVA_VM} | grep JAVA_HOME); then
		>&2 echo "Could not retrieve JAVA_HOME of ${GENTOO_JAVA_VM}"
		exit 1
	fi

	eval ${JAVA_HOME_ASSIGNMENT}
fi

export JAVA_HOME
exec /usr/share/openhab/runtime/bin/karaf "$@"
