#!/usr/bin/env bash set -euo pipefail LOGFILE="$HOME/.local/logs/retroarch-snes.log" log() { echo "[$(date --iso-8601=seconds)] $*" | tee -a "$LOGFILE"; } RETROARCH_HOME="$HOME/.local/share/Steam/steamapps/common/RetroArch" if [ ! -d "$RETROARCH_HOME" ]; then log "ERROR: RetroArch directory not found at $RETROARCH_HOME, install it via Steam" exit 127 fi RETROARCH_BIN="$RETROARCH_HOME/retroarch" RETROARCH_CORE=mesen-s_libretro.so.so if [ ! -f "$RETROARCH_BIN" ] || [ ! -f "$RETROARCH_HOME/cores/$RETROARCH_CORE" ]; then log "ERROR: retroarch or core not found, install it via Steam" exit 127 fi log "Launching RetroArch: $RETROARCH_BIN -L \"$RETROARCH_HOME/cores/$RETROARCH_CORE\" \"${@}\"" cd "$RETROARCH_HOME" "$RETROARCH_BIN" -L "$RETROARCH_HOME/cores/$RETROARCH_CORE" "${@}" >>"$LOGFILE"