You need to sign in or sign up before continuing.
Commit 0b437a41 authored by Mikhail Tergoev's avatar Mikhail Tergoev

Merge branch 'devel' of github.com:alex2844/PortWINE into alex2844-devel

parents 0b0868fd 8997a5fc
...@@ -2,7 +2,6 @@ ...@@ -2,7 +2,6 @@
# GPL-3.0 license # GPL-3.0 license
# based on https://github.com/sonic2kk/steamtinkerlaunch/blob/master/steamtinkerlaunch # based on https://github.com/sonic2kk/steamtinkerlaunch/blob/master/steamtinkerlaunch
PROGNAME="PortProton" PROGNAME="PortProton"
name_desktop_png="${name_desktop// /_}"
NOSTAPPNAME="$name_desktop" NOSTAPPNAME="$name_desktop"
NOSTEXEPATH="\"${STEAM_SCRIPTS}/${name_desktop}.sh\"" NOSTEXEPATH="\"${STEAM_SCRIPTS}/${name_desktop}.sh\""
# NOSTSTDIR="\"${PATH_TO_GAME}\"" # NOSTSTDIR="\"${PATH_TO_GAME}\""
......
...@@ -5805,42 +5805,59 @@ portwine_output_yad_shortcut () { ...@@ -5805,42 +5805,59 @@ portwine_output_yad_shortcut () {
fi fi
if [[ "${PW_SHORTCUT_STEAM}" == "TRUE" ]] ; then if [[ "${PW_SHORTCUT_STEAM}" == "TRUE" ]] ; then
export STEAM_SCRIPTS="${PORT_WINE_PATH}/steam_scripts" SLUF="${HOME}/.local/share/Steam/config/loginusers.vdf"
create_new_dir "${STEAM_SCRIPTS}" if [[ -f "${SLUF}" ]]; then
echo "#!/usr/bin/env bash" > "${STEAM_SCRIPTS}/${name_desktop}.sh" SLUFUB=false
echo "export START_FROM_STEAM=1" >> "${STEAM_SCRIPTS}/${name_desktop}.sh" STUID64=""
echo "export LD_PRELOAD=" >> "${STEAM_SCRIPTS}/${name_desktop}.sh" while IFS= read -r line; do
if check_flatpak if [[ "${line}" =~ ^[[:space:]]*\"([0-9]+)\"$ ]]; then
then echo "flatpak run ru.linux_gaming.PortProton \"${portwine_exe}\" " >> "${STEAM_SCRIPTS}/${name_desktop}.sh" STUIDCUR="${BASH_REMATCH[1]}"
else echo "\"${PORT_SCRIPTS_PATH}/start.sh\" \"${portwine_exe}\" " >> "${STEAM_SCRIPTS}/${name_desktop}.sh" SLUFUB=true
fi elif [[ "${line}" == *'"MostRecent"'*'"1"' && ${SLUFUB} = true ]]; then
chmod u+x "${STEAM_SCRIPTS}/${name_desktop}.sh" STUID64="${STUIDCUR}"
export SCVDF="shortcuts.vdf" break
for STUIDPATH in "${HOME}"/.local/share/Steam/userdata/*/; do elif [[ "${line}" == "}" ]]; then
if [[ -d "$STUIDPATH" ]]; then SLUFUB=false
create_new_dir "${STUIDPATH}config/" fi
create_new_dir "${STUIDPATH}config/grid" done < "${SLUF}"
export SCPATH="${STUIDPATH}config/$SCVDF" if [ -n "${STUID64}" ]; then
export SGGRIDDIR="${STUIDPATH}config/grid" STUID32=$((STUID64 - 76561197960265728))
# shellcheck source=/dev/null STUIDPATH="${HOME}/.local/share/Steam/userdata/${STUID32}"
source "${PORT_SCRIPTS_PATH}/add_in_steam.sh" if [[ -d "${STUIDPATH}" ]]; then
fi export SCPATH="${STUIDPATH}/config/shortcuts.vdf"
done if [[ -f "${SCPATH}" ]]; then
export STEAM_SCRIPTS="${PORT_WINE_PATH}/steam_scripts"
if [[ "${PW_SKIP_RESTART_STEAM}" != 1 ]] && pgrep -i steam &>/dev/null ; then create_new_dir "${STEAM_SCRIPTS}"
if yad_question "${translations[For adding shortcut to STEAM, needed restart.\\n\\nRestart STEAM now?]}" ; then echo "#!/usr/bin/env bash" > "${STEAM_SCRIPTS}/${name_desktop}.sh"
pw_start_progress_bar_block "${translations[Restarting STEAM... Please wait.]}" echo "export START_FROM_STEAM=1" >> "${STEAM_SCRIPTS}/${name_desktop}.sh"
kill -s SIGTERM $(pgrep -a steam) &>/dev/null echo "export LD_PRELOAD=" >> "${STEAM_SCRIPTS}/${name_desktop}.sh"
while pgrep -i steam &>/dev/null ; do if check_flatpak
sleep 0.5 then echo "flatpak run ru.linux_gaming.PortProton \"${portwine_exe}\" " >> "${STEAM_SCRIPTS}/${name_desktop}.sh"
done else echo "\"${PORT_SCRIPTS_PATH}/start.sh\" \"${portwine_exe}\" " >> "${STEAM_SCRIPTS}/${name_desktop}.sh"
steam & fi
sleep 5 chmod u+x "${STEAM_SCRIPTS}/${name_desktop}.sh"
pw_stop_progress_bar create_new_dir "${STUIDPATH}/config/"
exit 0 create_new_dir "${STUIDPATH}/config/grid"
export SGGRIDDIR="${STUIDPATH}/config/grid"
source "${PORT_SCRIPTS_PATH}/add_in_steam.sh"
if [[ "${PW_SKIP_RESTART_STEAM}" != 1 ]] && pgrep -i steam &>/dev/null ; then
if yad_question "${translations[For adding shortcut to STEAM, needed restart.\\n\\nRestart STEAM now?]}" ; then
pw_start_progress_bar_block "${translations[Restarting STEAM... Please wait.]}"
kill -s SIGTERM $(pgrep -a steam) &>/dev/null
while pgrep -i steam &>/dev/null ; do
sleep 0.5
done
steam &
sleep 5
pw_stop_progress_bar
exit 0
fi
fi
unset PW_SKIP_RESTART_STEAM
fi
fi
fi fi
fi fi
unset PW_SKIP_RESTART_STEAM
fi fi
export PW_NEW_DESKTOP="1" export PW_NEW_DESKTOP="1"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment