Gamemode support added. Will automatically use gamemode if installed, so be sure it is properly configured /etc/gamemode.ini.

This commit is contained in:
Storm Dragon
2026-08-23 21:18:07 -04:00
parent 4b312099b4
commit eee7b7e7c8
5 changed files with 36 additions and 10 deletions
+11
View File
@@ -30,6 +30,13 @@ fi
STUB
chmod +x "${testRoot}/bin/umu-run"
cat > "${testRoot}/bin/gamemoderun" <<'STUB'
#!/usr/bin/env bash
printf '%s\n' "$*" >> "$GAMEMODE_STUB_LOG"
exec "$@"
STUB
chmod +x "${testRoot}/bin/gamemoderun"
cat > "${testRoot}/bin/wine" <<'STUB'
#!/usr/bin/env bash
if [[ "${1:-}" == "winepath" || "${1:-}" == "winepath.exe" ]]; then
@@ -55,7 +62,10 @@ chmod +x "${testRoot}/bin/wineserver"
export PATH="${testRoot}/bin:$PATH"
export UMU_STUB_LOG="${testRoot}/umu.log"
export WINE_STUB_LOG="${testRoot}/wine.log"
export GAMEMODE_STUB_LOG="${testRoot}/gamemode.log"
# shellcheck source=.includes/gamemode.sh
source "${repoRoot}/.includes/gamemode.sh"
# shellcheck source=.includes/proton.sh
source "${repoRoot}/.includes/proton.sh"
@@ -106,6 +116,7 @@ test_run_umu_game_uses_converted_path() {
mkdir -p "${WINEPREFIX}/drive_c/Program Files (x86)/GalaxyLaboratory/ShadowRine_FullVoice"
touch "${WINEPREFIX}/drive_c/Program Files (x86)/GalaxyLaboratory/ShadowRine_FullVoice/play_sr.exe"
run_umu_game 'c:\Program Files (x86)\GalaxyLaboratory\ShadowRine_FullVoice\play_sr.exe'
assert_file_contains "$GAMEMODE_STUB_LOG" "umu-run ${WINEPREFIX}/drive_c/Program Files (x86)/GalaxyLaboratory/ShadowRine_FullVoice/play_sr.exe" "UMU launches through GameMode"
assert_file_contains "$UMU_STUB_LOG" "${WINEPREFIX}|shadow-line|none|${WINEPREFIX}/drive_c/Program Files (x86)/GalaxyLaboratory/ShadowRine_FullVoice/play_sr.exe" "UMU launches converted exe path"
}