sneedmc/package/linux/MultiMC
Andrew e6e63307fd Made the run script look for missing dependencies.
On Linux, MultiMC's startup script will now look for plugins with
missing depenedencies and warn the user about them if they are missing.
2013-12-13 09:38:17 -06:00

34 lines
911 B
Bash
Executable File

#!/bin/sh
# Basic start script for running MultiMC with the libs packaged with it.
MMC_DIR=`dirname "$0"`
cd "${MMC_DIR}"
echo "MultiMC Dir: ${MMC_DIR}"
# Set up env
export LD_LIBRARY_PATH="${MMC_DIR}/bin":$LD_LIBRARY_PATH
export QT_PLUGIN_PATH="${MMC_DIR}/plugins"
export QT_FONTPATH="${MMC_DIR}/fonts"
# Detect missing dependencies...
DEPS_LIST=`ldd "${MMC_DIR}"/plugins/*/*.so | grep "not found" | awk -vORS=", " '{ print $1 }'`
if [ -z $DEPS_LIST ]; then
# We have all our dependencies. Run MultiMC.
echo "No missing dependencies found."
# Just to be sure...
chmod +x "${MMC_DIR}/bin/MultiMC"
# Run MultiMC
"${MMC_DIR}/bin/MultiMC" -d "${MMC_DIR}" $@
# Exit with MultiMC's exit code.
exit $?
else
echo "Error: MultiMC is missing the following libraries that it needs to work correctly:"
echo "\t${DEPS_LIST}"
echo "Please install them from your distribution's package manager."
exit 1
fi