|
|
|
|
@ -4,11 +4,17 @@ set -eu
|
|
|
|
|
|
|
|
|
|
SCRIPT_DIR=$(CDPATH= cd -- "$(dirname -- "$0")" && pwd) |
|
|
|
|
|
|
|
|
|
log() { |
|
|
|
|
printf '[mice-launcher] %s\n' "$*" |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
find_game_dir() { |
|
|
|
|
for candidate in \ |
|
|
|
|
"$SCRIPT_DIR" \ |
|
|
|
|
"$SCRIPT_DIR/mice" \ |
|
|
|
|
"$SCRIPT_DIR" \ |
|
|
|
|
/mnt/mmc/ports/mice \ |
|
|
|
|
/roms/ports/mice \ |
|
|
|
|
"$HOME/mice-current" \ |
|
|
|
|
/root/mice \ |
|
|
|
|
"$HOME/mice"; do |
|
|
|
|
if [ -f "$candidate/rats.py" ]; then |
|
|
|
|
@ -19,12 +25,13 @@ find_game_dir() {
|
|
|
|
|
return 1 |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
find_conda() { |
|
|
|
|
find_python() { |
|
|
|
|
for candidate in \ |
|
|
|
|
/home/ark/miniconda3/bin/conda \ |
|
|
|
|
/root/miniconda3/bin/conda \ |
|
|
|
|
"$HOME/miniconda3/bin/conda" \ |
|
|
|
|
/usr/bin/conda; do |
|
|
|
|
"$GAMEDIR/.venv/bin/python" \ |
|
|
|
|
"$HOME/miniconda3/bin/python" \ |
|
|
|
|
/root/miniconda3/bin/python \ |
|
|
|
|
/usr/bin/python3 \ |
|
|
|
|
/usr/bin/python; do |
|
|
|
|
if [ -x "$candidate" ]; then |
|
|
|
|
printf '%s\n' "$candidate" |
|
|
|
|
return 0 |
|
|
|
|
@ -51,7 +58,15 @@ detect_keybindings_profile() {
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
GAMEDIR=$(find_game_dir) |
|
|
|
|
CONDABIN=$(find_conda) |
|
|
|
|
PYTHONBIN=$(find_python) |
|
|
|
|
|
|
|
|
|
mkdir -p "$GAMEDIR/logs" |
|
|
|
|
LOGFILE="$GAMEDIR/logs/launcher.log" |
|
|
|
|
exec >>"$LOGFILE" 2>&1 |
|
|
|
|
|
|
|
|
|
log "script_dir=$SCRIPT_DIR" |
|
|
|
|
log "game_dir=$GAMEDIR" |
|
|
|
|
log "python=$PYTHONBIN" |
|
|
|
|
|
|
|
|
|
export MICE_PROJECT_ROOT="$GAMEDIR" |
|
|
|
|
|
|
|
|
|
@ -60,8 +75,9 @@ if [ -z "${MICE_KEYBINDINGS_PROFILE:-}" ]; then
|
|
|
|
|
export MICE_KEYBINDINGS_PROFILE |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
eval "$($CONDABIN shell.bash hook)" |
|
|
|
|
conda activate myenv |
|
|
|
|
if [ -n "${MICE_KEYBINDINGS_PROFILE:-}" ]; then |
|
|
|
|
log "keybindings_profile=$MICE_KEYBINDINGS_PROFILE" |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
cd "$GAMEDIR" |
|
|
|
|
python rats.py |
|
|
|
|
exec "$PYTHONBIN" rats.py |
|
|
|
|
|