diff --git a/lang/chinese.txt b/lang/chinese.txt index 7f9e4157..cc4e7887 100644 --- a/lang/chinese.txt +++ b/lang/chinese.txt @@ -1152,3 +1152,5 @@ GUI_CW_LUTRIS="Wine Lutris URL" DESC_CW_LUTRIS="The project page of Lutris Wine" GUI_CW_WINEGE="Wine-GE URL" DESC_CW_WINEGE="The project page of Wine-GE" +GUI_DLSTEAMDECKCOMPATINFO="Download Steam Deck compatibility information" +DESC_DLSTEAMDECKCOMPATINFO="Fetch Steam Deck compatibility information from Steam - Previously fetched compatibility information will be preserved" diff --git a/lang/dutch.txt b/lang/dutch.txt index 23d4161f..14e4dd21 100644 --- a/lang/dutch.txt +++ b/lang/dutch.txt @@ -1152,3 +1152,5 @@ GUI_CW_LUTRIS="Wine Lutris URL" DESC_CW_LUTRIS="The project page of Lutris Wine" GUI_CW_WINEGE="Wine-GE URL" DESC_CW_WINEGE="The project page of Wine-GE" +GUI_DLSTEAMDECKCOMPATINFO="Download Steam Deck compatibility information" +DESC_DLSTEAMDECKCOMPATINFO="Fetch Steam Deck compatibility information from Steam - Previously fetched compatibility information will be preserved" diff --git a/lang/english.txt b/lang/english.txt index 21f50b5c..b82bedbf 100644 --- a/lang/english.txt +++ b/lang/english.txt @@ -1153,3 +1153,5 @@ GUI_CW_LUTRIS="Wine Lutris URL" DESC_CW_LUTRIS="The project page of Lutris Wine" GUI_CW_WINEGE="Wine-GE URL" DESC_CW_WINEGE="The project page of Wine-GE" +GUI_DLSTEAMDECKCOMPATINFO="Download Steam Deck compatibility information" +DESC_DLSTEAMDECKCOMPATINFO="Fetch Steam Deck compatibility information from Steam - Previously fetched compatibility information will be preserved" diff --git a/lang/englishUK.txt b/lang/englishUK.txt index f1ab601d..dd848baf 100644 --- a/lang/englishUK.txt +++ b/lang/englishUK.txt @@ -1152,3 +1152,5 @@ GUI_CW_LUTRIS="Wine Lutris URL" DESC_CW_LUTRIS="The project page of Lutris Wine" GUI_CW_WINEGE="Wine-GE URL" DESC_CW_WINEGE="The project page of Wine-GE" +GUI_DLSTEAMDECKCOMPATINFO="Download Steam Deck compatibility information" +DESC_DLSTEAMDECKCOMPATINFO="Fetch Steam Deck compatibility information from Steam - Previously fetched compatibility information will be preserved" diff --git a/lang/french.txt b/lang/french.txt index b86a2a42..49964b63 100644 --- a/lang/french.txt +++ b/lang/french.txt @@ -1152,3 +1152,5 @@ GUI_CW_LUTRIS="Wine Lutris URL" DESC_CW_LUTRIS="The project page of Lutris Wine" GUI_CW_WINEGE="Wine-GE URL" DESC_CW_WINEGE="The project page of Wine-GE" +GUI_DLSTEAMDECKCOMPATINFO="Download Steam Deck compatibility information" +DESC_DLSTEAMDECKCOMPATINFO="Fetch Steam Deck compatibility information from Steam - Previously fetched compatibility information will be preserved" diff --git a/lang/german.txt b/lang/german.txt index a141e4af..848744c4 100644 --- a/lang/german.txt +++ b/lang/german.txt @@ -1154,3 +1154,5 @@ GUI_CW_LUTRIS="Wine Lutris URL" DESC_CW_LUTRIS="The project page of Lutris Wine" GUI_CW_WINEGE="Wine-GE URL" DESC_CW_WINEGE="The project page of Wine-GE" +GUI_DLSTEAMDECKCOMPATINFO="Download Steam Deck compatibility information" +DESC_DLSTEAMDECKCOMPATINFO="Fetch Steam Deck compatibility information from Steam - Previously fetched compatibility information will be preserved" diff --git a/lang/italian.txt b/lang/italian.txt index a0a6922d..cf3db215 100644 --- a/lang/italian.txt +++ b/lang/italian.txt @@ -1152,3 +1152,5 @@ GUI_CW_LUTRIS="Wine Lutris URL" DESC_CW_LUTRIS="The project page of Lutris Wine" GUI_CW_WINEGE="Wine-GE URL" DESC_CW_WINEGE="The project page of Wine-GE" +GUI_DLSTEAMDECKCOMPATINFO="Download Steam Deck compatibility information" +DESC_DLSTEAMDECKCOMPATINFO="Fetch Steam Deck compatibility information from Steam - Previously fetched compatibility information will be preserved" diff --git a/lang/polish.txt b/lang/polish.txt index bfe7367d..7ef003e4 100644 --- a/lang/polish.txt +++ b/lang/polish.txt @@ -1152,3 +1152,5 @@ GUI_CW_LUTRIS="Wine Lutris URL" DESC_CW_LUTRIS="The project page of Lutris Wine" GUI_CW_WINEGE="Wine-GE URL" DESC_CW_WINEGE="The project page of Wine-GE" +GUI_DLSTEAMDECKCOMPATINFO="Download Steam Deck compatibility information" +DESC_DLSTEAMDECKCOMPATINFO="Fetch Steam Deck compatibility information from Steam - Previously fetched compatibility information will be preserved" diff --git a/lang/russian.txt b/lang/russian.txt index 7ecb547d..3e50e817 100644 --- a/lang/russian.txt +++ b/lang/russian.txt @@ -1152,3 +1152,5 @@ GUI_CW_LUTRIS="Wine Lutris URL" DESC_CW_LUTRIS="The project page of Lutris Wine" GUI_CW_WINEGE="Wine-GE URL" DESC_CW_WINEGE="The project page of Wine-GE" +GUI_DLSTEAMDECKCOMPATINFO="Download Steam Deck compatibility information" +DESC_DLSTEAMDECKCOMPATINFO="Fetch Steam Deck compatibility information from Steam - Previously fetched compatibility information will be preserved" diff --git a/steamtinkerlaunch b/steamtinkerlaunch index 32bc524a..8606af6c 100755 --- a/steamtinkerlaunch +++ b/steamtinkerlaunch @@ -2647,6 +2647,7 @@ function setDefaultCfgValues { if [ -z "$USECUSTOMFALLBACKPIC" ] ; then USECUSTOMFALLBACKPIC="0"; fi if [ -z "$GITHUBUSER" ] ; then GITHUBUSER="$NON"; fi if [ -z "$DLGAMEDATA" ] ; then DLGAMEDATA="1"; fi + if [ -z "$DLSTEAMDECKCOMPATINFO" ] ; then DLSTEAMDECKCOMPATINFO="1"; fi if [ -z "$USEPDBRATING" ] ; then USEPDBRATING="1"; fi if [ -z "$PDBRATINGCACHE" ] ; then PDBRATINGCACHE="1"; fi if [ -z "$DLWINETRICKS" ] ; then DLWINETRICKS="0"; fi @@ -3099,6 +3100,8 @@ function saveCfg { echo "GITHUBUSER=\"$GITHUBUSER\"" echo "## $DESC_DLGAMEDATA" echo "DLGAMEDATA=\"$DLGAMEDATA\"" + echo "## $DESC_DLSTEAMDECKCOMPATINFO" + echo "DLSTEAMDECKCOMPATINFO=\"$DLSTEAMDECKCOMPATINFO\"" echo "## $DESC_USEPDBRATING" echo "USEPDBRATING=\"$USEPDBRATING\"" echo "## $DESC_PDBRATINGCACHE" @@ -5040,6 +5043,7 @@ function AllSettingsEntriesDummyFunction { --field=" $GUI_HEADLINEFONT!$DESC_HEADLINEFONT ('HEADLINEFONT')":CB "$(cleanDropDown "${HEADLINEFONT/#-/ -}" "$FONTSIZES")" `#CAT_Gui` `#MENU_GLOBAL` \ --field=" $GUI_USEWINDECO!$DESC_USEWINDECO ('USEWINDECO')":CHK "${USEWINDECO/#-/ -}" `#CAT_Gui` `#SUB_Checkbox` `#MENU_GLOBAL` \ --field=" $GUI_DLGAMEDATA!$DESC_DLGAMEDATA ('DLGAMEDATA')":CHK "${DLGAMEDATA/#-/ -}" `#CAT_Gui` `#SUB_Checkbox` `#MENU_GLOBAL` \ +--field=" $GUI_DLSTEAMDECKCOMPATINFO!$DESC_DLSTEAMDECKCOMPATINFO ('DLSTEAMDECKCOMPATINFO')":CHK "${DLSTEAMDECKCOMPATINFO}" `#CAT_Gui` `#SUB_Checkbox` `#MENU_GLOBAL` \ --field=" $GUI_USEGAMEPICS!$DESC_USEGAMEPICS ('USEGAMEPICS')":CHK "${USEGAMEPICS/#-/ -}" `#CAT_Gui` `#SUB_Checkbox` `#MENU_GLOBAL` \ --field=" $GUI_USECUSTOMFALLBACKPIC!$DESC_USECUSTOMFALLBACKPIC ('USECUSTOMFALLBACKPIC')":CHK "${USECUSTOMFALLBACKPIC/#-/ -}" `#CAT_Gui` `#SUB_Checkbox` `#MENU_GLOBAL` \ --field=" $GUI_GITHUBUSER!$DESC_GITHUBUSER ('GITHUBUSER')":CBE "${GITHUBUSER/#-/ -}" `#CAT_Gui` `#MENU_GLOBAL` \ @@ -9275,12 +9279,16 @@ function askSettings { # Tested and this should not break Non-Steam Games - Open an issue if it does! prepareSteamDeckCompatInfo - STEAMDECKCOMPATOUT="$GUI_SDCR: ${STEAMDECKCOMPATRATING:$STEAMDECKCOMPAT_UNKNOWN}" - if ! [ -f "$STLGDECKCOMPAT/${AID}-deckcompatrating.json" ]; then + if [ ! -f "$STLGDECKCOMPAT/${AID}-deckcompatrating.json" ] && [ "$DLSTEAMDECKCOMPATINFO" -eq 1 ]; then # If the Steam Deck compat rating json doesn't exist, assume something messed up e.g. offline or JQ is not installed writelog "INFO" "${FUNCNAME[0]} - Could not retrieve Steam Deck compatibility rating, defaulting to $STEAMDECKCOMPAT_UNKNOWN - Maybe '$JQ' is missing or we are offline?" fi + if [ -n "$STEAMDECKCOMPATRATING" ]; then + writelog "INFO" "${FUNCNAME[0]} - Fetched Steam Deck compatibility info, will show on wait requester" + STEAMDECKCOMPATOUT="$GUI_SDCR: ${STEAMDECKCOMPATRATING:$STEAMDECKCOMPAT_UNKNOWN}" + fi + writelog "INFO" "${FUNCNAME[0]} - Steam Deck compatibility rating string is '$STEAMDECKCOMPATOUT'" writelog "INFO" "${FUNCNAME[0]} - Preparing to show Wait Requester" @@ -22965,20 +22973,24 @@ function prepareSteamDeckCompatInfo { return 1 fi - mapfile -d ";" -t -O "${#DECKCOMPATARR[@]}" DECKCOMPATARR <<< "$( getSteamDeckCompatInfo "$AID" )" - unset "DECKCOMPATARR[-1]" + if [ "$DLSTEAMDECKCOMPATINFO" -eq 1 ]; then + mapfile -d ";" -t -O "${#DECKCOMPATARR[@]}" DECKCOMPATARR <<< "$( getSteamDeckCompatInfo "$AID" )" + unset "DECKCOMPATARR[-1]" - if [ "${#DECKCOMPATARR[@]}" -eq "0" ]; then - writelog "INFO" "${FUNCNAME[0]} - No compatibility information available for '$AID' - Is this AppID definitely correct?" + if [ "${#DECKCOMPATARR[@]}" -eq "0" ]; then + writelog "INFO" "${FUNCNAME[0]} - No compatibility information available for '$AID' - Is this AppID definitely correct?" + else + # HTML symbols for Verified (checkmark), Playable (circled question mark) and Unsupported (no-entry sign) + COMPATMARK="" + case ${DECKCOMPATARR[0]} in + *"Verified"*) COMPATMARK="✓" ;; + *"Playable"*) COMPATMARK="🛈" ;; + *"Unsupported"*) COMPATMARK="🚫" ;; + esac + STEAMDECKCOMPATRATING="${DECKCOMPATARR[0]} ${COMPATMARK}" + fi else - # HTML symbols for Verified (checkmark), Playable (circled question mark) and Unsupported (no-entry sign) - COMPATMARK="" - case ${DECKCOMPATARR[0]} in - *"Verified"*) COMPATMARK="✓" ;; - *"Playable"*) COMPATMARK="🛈" ;; - *"Unsupported"*) COMPATMARK="🚫" ;; - esac - STEAMDECKCOMPATRATING="${DECKCOMPATARR[0]} ${COMPATMARK}" + writelog "INFO" "${FUNCNAME[0]} - DLSTEAMDECKCOMPATINFO is '$DLSTEAMDECKCOMPATINFO' - Not fetching Steam Deck compatability info" fi }