Make muOS launcher prefer local venv
This commit is contained in:
@@ -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
|
||||
|
||||
Reference in New Issue
Block a user