forked from p15670423/monkey
42 lines
1.3 KiB
Bash
Executable File
42 lines
1.3 KiB
Bash
Executable File
#! /bin/bash
|
|
|
|
# Export APPRUN if running from an extracted image
|
|
self="$(readlink -f -- $0)"
|
|
here="${self%/*}"
|
|
APPDIR="${APPDIR:-${here}}"
|
|
|
|
# Export TCl/Tk
|
|
export TCL_LIBRARY="${APPDIR}/usr/share/tcltk/tcl8.4"
|
|
export TK_LIBRARY="${APPDIR}/usr/share/tcltk/tk8.4"
|
|
export TKPATH="${TK_LIBRARY}"
|
|
|
|
# Export SSL certificate
|
|
export SSL_CERT_FILE="${APPDIR}/opt/_internal/certs.pem"
|
|
|
|
# Call the entry point
|
|
for opt in "$@"
|
|
do
|
|
[ "${opt:0:1}" != "-" ] && break
|
|
if [[ "${opt}" =~ "I" ]] || [[ "${opt}" =~ "E" ]]; then
|
|
# Environment variables are disabled ($PYTHONHOME). Let's run in a safe
|
|
# mode from the raw Python binary inside the AppImage
|
|
"$APPDIR/opt/python3.7/bin/python3.7" "$@"
|
|
exit "$?"
|
|
fi
|
|
done
|
|
|
|
# Get the executable name, i.e. the AppImage or the python binary if running from an
|
|
# extracted image
|
|
executable="${APPDIR}/opt/python3.7/bin/python3.7"
|
|
if [[ "${ARGV0}" =~ "/" ]]; then
|
|
executable="$(cd $(dirname ${ARGV0}) && pwd)/$(basename ${ARGV0})"
|
|
elif [[ "${ARGV0}" != "" ]]; then
|
|
executable=$(which "${ARGV0}")
|
|
fi
|
|
|
|
# Wrap the call to Python in order to mimic a call from the source
|
|
# executable ($ARGV0), but potentially located outside of the Python
|
|
# install ($PYTHONHOME)
|
|
(PYTHONHOME="${APPDIR}/opt/python3.7" exec "/bin/bash" "${APPDIR}/usr/src/monkey_island/linux/run_appimage.sh")
|
|
exit "$?"
|