From 2a96c9a9a1a54faf307394d69ddcb59e93ebf7c9 Mon Sep 17 00:00:00 2001 From: Boria138 Date: Tue, 9 Jan 2024 10:30:03 +0600 Subject: [PATCH] Fixed the initialization of the container and gamemode, now gamemode starts without errors, as well as displayed in MangoHud --- data_from_portwine/scripts/runlib | 22 ++++++++++++---------- data_from_portwine/scripts/start.sh | 19 +++++-------------- 2 files changed, 17 insertions(+), 24 deletions(-) diff --git a/data_from_portwine/scripts/runlib b/data_from_portwine/scripts/runlib index ddd18a7b..c4a31fd4 100755 --- a/data_from_portwine/scripts/runlib +++ b/data_from_portwine/scripts/runlib @@ -259,10 +259,12 @@ start_portwine () { killall xneur export int_xneur=1 fi - if [[ -x "`command -v "gamemoderun" 2>/dev/null`" ]] && [[ "$PW_USE_GAMEMODE" = "1" ]] ; then + if [[ "$PW_USE_GAMEMODE" = "1" ]] ; then export GAMEMODERUN=1 PW_GAMEMODERUN_SLR="gamemoderun" - systemctl enable --now --user gamemoded &>/dev/null + pkill gamemoded + sleep 0.1 + "${PW_WINELIB}/portable/bin/gamemoded" > /dev/null 2>&1 & print_info "Gamemod will be launched." else export GAMEMODERUN=0 @@ -691,15 +693,15 @@ pw_run () { echo "Log WINE:" >> "${PW_LOG_TO_FILE}" echo "" print_debug "Log from RUNTIME and WINE:" - ${PW_GAMEMODERUN_SLR} \ - ${PW_RUN_GAMESCOPE} \ ${pw_runtime} \ - env ${PW_MANGOHUD_SLR} \ - PATH="${PATH}" \ + env PATH="${PATH}" \ LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" \ LD_PRELOAD="${PW_LD_PRELOAD}" \ VK_LAYER_PATH="${PW_VK_LAYER_PATH}" \ VK_INSTANCE_LAYERS=${PW_VK_INSTANCE_LAYERS} \ + ${PW_GAMEMODERUN_SLR} \ + ${PW_RUN_GAMESCOPE} \ + ${PW_MANGOHUD_SLR} \ "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[@]} &>>"${PW_LOG_TO_FILE}" else if [[ "${PW_USE_TERMINAL}" == "1" ]] ; then @@ -709,15 +711,15 @@ pw_run () { echo "" echo "Log WINE:" > "${PW_LOG_TO_FILE}" print_debug "Log from RUNTIME and WINE:" - ${PW_GAMEMODERUN_SLR} \ - ${PW_RUN_GAMESCOPE} \ ${pw_runtime} \ - env ${PW_MANGOHUD_SLR} \ - PATH="${PATH}" \ + env PATH="${PATH}" \ LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" \ LD_PRELOAD="${PW_LD_PRELOAD}" \ VK_LAYER_PATH="${PW_VK_LAYER_PATH}" \ VK_INSTANCE_LAYERS="${PW_VK_INSTANCE_LAYERS}" \ + ${PW_GAMEMODERUN_SLR} \ + ${PW_RUN_GAMESCOPE} \ + ${PW_MANGOHUD_SLR} \ "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[@]} &>>"${PW_LOG_TO_FILE}" cat "${PW_LOG_TO_FILE}" fi diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index c7d1daa6..d199660a 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -183,17 +183,6 @@ portwine_start_debug () { else echo "Vulkan cube test completed with error" >> "${PORT_WINE_PATH}/${portname}.log" fi - echo "----------------------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" - echo "GameMode status:" >> "${PORT_WINE_PATH}/${portname}.log" - if gamemoded -s | grep "is active"; - then - echo "gamemode is active" >> "${PORT_WINE_PATH}/${portname}.log" - elif gamemoded -s | grep "is inactive"; - then - echo "gamemode is inactive" >> "${PORT_WINE_PATH}/${portname}.log" - else - echo "gamemode is not found" >> "${PORT_WINE_PATH}/${portname}.log" - fi echo "----------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo 'locale:' >> "${PORT_WINE_PATH}/${portname}.log" locale >> "${PORT_WINE_PATH}/${portname}.log" @@ -246,6 +235,7 @@ portwine_start_debug () { sed -i '/HACK_does_openvr_work/d' "${PORT_WINE_PATH}/${portname}.log" sed -i '/Uploading is disabled/d' "${PORT_WINE_PATH}/${portname}.log" sed -i '/dlopen failed - libgamemode.so/d' "${PORT_WINE_PATH}/${portname}.log" + sed -i '/gamemodeauto: /d' "${PORT_WINE_PATH}/${portname}.log" sed -i '/wine: RLIMIT_NICE is <= 20/d' "${PORT_WINE_PATH}/${portname}.log" deb_text=$(cat "${PORT_WINE_PATH}/${portname}.log" | awk '! a[$0]++') echo "$deb_text" > "${PORT_WINE_PATH}/${portname}.log" @@ -407,13 +397,14 @@ pw_start_cont_xterm () { unset PW_SANDBOX_HOME_PATH # export PW_ADD_TO_ARGS_IN_RUNTIME="--xterm" pw_init_runtime - ${PW_GAMEMODERUN_SLR} ${pw_runtime} \ - env ${PW_MANGOHUD_SLR} \ - PATH="${PATH}" \ + ${pw_runtime} \ + env PATH="${PATH}" \ LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" \ LD_PRELOAD="${PW_LD_PRELOAD}" \ VK_LAYER_PATH="${PW_VK_LAYER_PATH}" \ VK_INSTANCE_LAYERS="${PW_VK_INSTANCE_LAYERS}" \ + ${PW_GAMEMODERUN_SLR} \ + ${PW_MANGOHUD_SLR} \ xterm }