#!/bin/sh
set -eu
SELF=$(readlink -f -- "$0")
ROOT=$(CDPATH= cd -- "$(dirname -- "$SELF")/.." && pwd -P)
case "$ROOT" in *:*|*';'*|*'$'*) echo "Kokum: install path must not contain colon, semicolon or dollar sign" >&2; exit 1;; esac
if [ "${KOKUM_DIST_CONTEXT:-}" != "1" ]; then
    KOKUM_DIST_OLD_PATH=$PATH
    KOKUM_DIST_OLD_LD_SET=${LD_LIBRARY_PATH+x}
    KOKUM_DIST_OLD_LD=${LD_LIBRARY_PATH-}
    KOKUM_DIST_OLD_MODULES_SET=${OPENSSL_MODULES+x}
    KOKUM_DIST_OLD_MODULES=${OPENSSL_MODULES-}
    KOKUM_DIST_CONTEXT=1
    export KOKUM_DIST_OLD_PATH KOKUM_DIST_OLD_LD_SET KOKUM_DIST_OLD_LD
    export KOKUM_DIST_OLD_MODULES_SET KOKUM_DIST_OLD_MODULES KOKUM_DIST_CONTEXT
fi
LD_LIBRARY_PATH="$ROOT/lib"
PATH="$ROOT/bin:$KOKUM_DIST_OLD_PATH"
export LD_LIBRARY_PATH PATH
export KOKUM_IDE_ASSET_DIR="$ROOT/share/kokum/ide"
export KOKUM_VM_LAUNCHER="$ROOT/bin/kokumvm.elf"
# Use the target machine's trust store; never copy a publisher's private CA set.
if [ -z "${SSL_CERT_FILE:-}" ]; then
    for CA in /etc/ssl/certs/ca-certificates.crt /etc/pki/tls/certs/ca-bundle.crt /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem /etc/ssl/cert.pem; do
        if [ -r "$CA" ]; then SSL_CERT_FILE="$CA"; export SSL_CERT_FILE; break; fi
    done
fi
if [ -d "$ROOT/lib/ossl-modules" ] && [ -z "${OPENSSL_MODULES:-}" ]; then
    OPENSSL_MODULES="$ROOT/lib/ossl-modules"; export OPENSSL_MODULES
fi
exec "$ROOT/bin/kokumc.elf" "$@"
