Browse Source

Make muOS launcher prefer local venv

master
Matteo Benedetto 1 month ago
parent
commit
f0d056e7f0
  1. 36
      mice.sh

36
mice.sh

@ -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

Loading…
Cancel
Save