Compare commits
16 Commits
af3bddf5b3
...
d14b4d2d24
Author | SHA1 | Date | |
---|---|---|---|
|
d14b4d2d24 | ||
|
9c0e4bb759 | ||
|
c3d4bb0ea4 | ||
|
83e7db8a3c | ||
|
7033cb8c96 | ||
|
994f035048 | ||
|
fdb3171316 | ||
|
678b297c2b | ||
|
5746a7f9d0 | ||
3d21da0ef2 | |||
9d6fe1377c | |||
20d8929247 | |||
abe678c908 | |||
76ebfaaa2b | |||
50ff375162 | |||
89eefcc892 |
@@ -2,6 +2,11 @@ You can help us in the development of the project on the website: https://linux-
|
||||
----------------------------------------
|
||||
Changelog:
|
||||
|
||||
###Scripts version 2374### / Date: 12.11.2024 / Download update size: 4 megabytes
|
||||
* added test support for DLSS 3
|
||||
* fixed gamescope (thanks to Htylol)
|
||||
* general optimization of scripts (thanks to Htylol)
|
||||
|
||||
###Scripts version 2373### / Date: 10.11.2024 / Download update size: 215 megabytes
|
||||
* updated PROTON_LG to version "9-19"
|
||||
* updated versions:
|
||||
|
@@ -2,6 +2,11 @@
|
||||
-----------------------------------------
|
||||
История изменений:
|
||||
|
||||
###Scripts version 2374### / Дата: 12.11.2024 / Размер скачиваемого обновления: 4 мегабайт
|
||||
* добавлена тестовая поддержка DLSS 3
|
||||
* исправлена работа gamescope (спасибо Htylol)
|
||||
* общая оптимизация скриптов (спасибо Htylol)
|
||||
|
||||
###Scripts version 2373### / Дата: 10.11.2024 / Размер скачиваемого обновления: 215 мегабайт
|
||||
* обновлен PROTON_LG до версии "9-19"
|
||||
* обновлены версии:
|
||||
|
@@ -40,7 +40,7 @@ export -f print_wrapped
|
||||
|
||||
make_acronym () {
|
||||
local words acronym i
|
||||
IFS=' ' read -r -a words <<< "$1"
|
||||
read -r -a words <<< "$1"
|
||||
acronym="${words[0]:0:1}"
|
||||
for ((i=1 ; i<${#words[@]} ; i++)) ; do
|
||||
acronym+="${words[$i]:0:1}"
|
||||
@@ -73,8 +73,7 @@ set_several_variables () {
|
||||
key=${1//=*/}
|
||||
value=${1//*=/}
|
||||
keys_all+="$key "
|
||||
export "$key"="$value"
|
||||
shift
|
||||
export "$key"="$value" ; shift
|
||||
done
|
||||
}
|
||||
|
||||
@@ -265,7 +264,7 @@ EOF
|
||||
po_file="${PORT_WINE_PATH}/data/locales/$LANGUAGE/LC_MESSAGES/PortProton.po"
|
||||
fi
|
||||
|
||||
while IFS= read -r line ; do
|
||||
while read -r line ; do
|
||||
while [[ $line =~ msgid ]] ; do
|
||||
unset msgid
|
||||
msgid="$line"
|
||||
@@ -307,7 +306,7 @@ EOF
|
||||
msgid=${msgid//\"\"/}
|
||||
msgid=${msgid//#*/}
|
||||
msgid=${msgid//"*"/#_#}
|
||||
if [[ $msgid != "" ]] ; then
|
||||
if [[ -n $msgid ]] ; then
|
||||
if [[ -z $msgstr ]] ; then
|
||||
msgstr="$msgid"
|
||||
fi
|
||||
@@ -406,6 +405,74 @@ try_copy_file_with_checksums () {
|
||||
}
|
||||
export -f try_copy_file_with_checksums
|
||||
|
||||
lsbash () {
|
||||
local grep_with_i grep_with_v find_name directory find_file found_successfully find_file_old find_file_old_array
|
||||
if [[ $1 =~ \/ ]] ; then
|
||||
directory=$1 ; shift
|
||||
else
|
||||
directory=$PWD
|
||||
fi
|
||||
grep_find_file1 () {
|
||||
find_file_old=$find_file
|
||||
if [[ $grep_with_i == true ]] ; then
|
||||
find_file=${find_file,,}
|
||||
find_name=${find_name,,}
|
||||
fi
|
||||
grep_find_file2 () {
|
||||
if [[ -z $1 ]] ; then
|
||||
echo "$find_file_old"
|
||||
found_successfully=1
|
||||
else
|
||||
find_file_old_array+=("$find_file_old")
|
||||
fi
|
||||
}
|
||||
if [[ $grep_with_v == true ]] ; then
|
||||
if [[ ! $find_file =~ $find_name ]] ; then
|
||||
grep_find_file2 "$@"
|
||||
fi
|
||||
else
|
||||
if [[ $find_file =~ $find_name ]] \
|
||||
|| [[ -z $find_name ]] ; then
|
||||
grep_find_file2 "$@"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
while true ; do
|
||||
unset grep_with_i grep_with_v
|
||||
if [[ $1 == --grep ]] ; then
|
||||
shift
|
||||
while true ; do
|
||||
# аналог grep -i
|
||||
if [[ $1 == "-i" ]] ; then
|
||||
grep_with_i=true ; shift ; continue
|
||||
fi
|
||||
# аналог grep -v
|
||||
if [[ $1 == "-v" ]] ; then
|
||||
grep_with_v=true ; shift ; continue
|
||||
fi
|
||||
find_name=$1 ; shift ; break
|
||||
done
|
||||
fi
|
||||
if [[ -n ${find_file_old_array[0]} ]] ; then
|
||||
for find_file in "${find_file_old_array[@]}" ; do
|
||||
unset find_file_old_array
|
||||
grep_find_file1 "$@"
|
||||
done
|
||||
else
|
||||
for find_file in "$directory"/* ; do
|
||||
find_file=${find_file//*\//}
|
||||
grep_find_file1 "$@"
|
||||
done
|
||||
fi
|
||||
if [[ -n $1 ]] ; then continue ; else break ; fi
|
||||
done
|
||||
if [[ $found_successfully == 1 ]] ; then
|
||||
return 0
|
||||
else
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
try_copy_dir () {
|
||||
if [[ ! -d "$1" ]] ; then print_info "directory $1 not found for copy"
|
||||
elif [[ -z "$2" ]] ; then print_error "no way to copy directory $1"
|
||||
@@ -538,9 +605,9 @@ try_download () {
|
||||
&& [[ "$no_mirror" != "true" ]]
|
||||
then
|
||||
FIRST_URL=("$url_cloud/$filename")
|
||||
IFS=' ' read -r -a SECOND_URL <<< "$1"
|
||||
read -r -a SECOND_URL <<< "$1"
|
||||
else
|
||||
IFS=' ' read -r -a FIRST_URL <<< "$1"
|
||||
read -r -a FIRST_URL <<< "$1"
|
||||
SECOND_URL=("$url_cloud/$filename")
|
||||
fi
|
||||
|
||||
@@ -652,17 +719,14 @@ var_ld_library_path_update () {
|
||||
# GUI NOTIFY SEND
|
||||
pw_notify_send () {
|
||||
if command -v gdbus &>/dev/null ; then
|
||||
local app="PortProton"
|
||||
local icon=""
|
||||
local timeout="5000"
|
||||
local title=""
|
||||
local body=""
|
||||
|
||||
local OPTIND="1"
|
||||
local icon title body app timeout OPTIND
|
||||
app="PortProton"
|
||||
timeout="5000"
|
||||
OPTIND="1"
|
||||
while getopts a:i:t: opt ; do
|
||||
case "$opt" in
|
||||
a)
|
||||
local app=$OPTARG
|
||||
app=$OPTARG
|
||||
;;
|
||||
i)
|
||||
case "$OPTARG" in
|
||||
@@ -670,10 +734,10 @@ pw_notify_send () {
|
||||
warning) local OPTARG="${PORT_WINE_PATH}/data/img/gui/notify_warning.svg";;
|
||||
error) local OPTARG="${PORT_WINE_PATH}/data/img/gui/notify_error.svg";;
|
||||
esac
|
||||
local icon=$OPTARG
|
||||
icon=$OPTARG
|
||||
;;
|
||||
t)
|
||||
local timeout=$OPTARG
|
||||
timeout=$OPTARG
|
||||
;;
|
||||
*)
|
||||
echo "usage: $0
|
||||
@@ -686,10 +750,8 @@ pw_notify_send () {
|
||||
done
|
||||
shift $(( OPTIND - 1 ))
|
||||
[[ "$1" == "--" ]] && shift
|
||||
|
||||
local title="$1"
|
||||
shift
|
||||
local body="$*"
|
||||
title="$1" ; shift
|
||||
body="$*"
|
||||
|
||||
gdbus call --session --dest org.freedesktop.Notifications \
|
||||
--object-path /org/freedesktop/Notifications \
|
||||
@@ -883,7 +945,7 @@ search_desktop_file () {
|
||||
desktop_file_new="${desktop_file//"$PORT_WINE_PATH/"/}"
|
||||
if [[ $desktop_file_new =~ .desktop$ ]] ; then
|
||||
if [[ ! $desktop_file_new =~ (PortProton|readme) ]] ; then
|
||||
while IFS= read -r line1 ; do
|
||||
while read -r line1 ; do
|
||||
if [[ $line1 =~ ^Exec= ]] ; then
|
||||
if check_flatpak ; then
|
||||
EXEC_DESKTOP=${line1//Exec=flatpak run ru.linux_gaming.PortProton /}
|
||||
@@ -900,7 +962,7 @@ search_desktop_file () {
|
||||
fi
|
||||
done
|
||||
if [[ $DESKTOP_WITH_TIME == enabled ]] || [[ $SORT_WITH_TIME == enabled ]] ; then
|
||||
while IFS=' ' read -r -a line2 ; do
|
||||
while read -r -a line2 ; do
|
||||
if [[ -z ${line2[0]} ]] \
|
||||
|| [[ ! ${line2[0],,} =~ .(bat|exe|msi|reg)$ ]] ; then
|
||||
BROKEN_LINE=1
|
||||
@@ -922,7 +984,7 @@ search_desktop_file () {
|
||||
## Ремонты:
|
||||
# Ремонт, проверяет чтобы длинна хеш суммы была равна 64 символам, в ином случае удалит битые
|
||||
if [[ $FILE_SHA256SUM_NOT_FOUND == 1 ]] && [[ ${#line2[1]} != "64" ]] ; then
|
||||
while IFS=' ' read -r -a line3 ; do
|
||||
while read -r -a line3 ; do
|
||||
if [[ ${#line3[1]} == "64" ]]
|
||||
then echo "${line3[*]}"
|
||||
fi
|
||||
@@ -934,7 +996,7 @@ search_desktop_file () {
|
||||
|
||||
# Ремонт, если есть пустые строки и непонятные строки без .exe, .bat, .msi, .reg
|
||||
if [[ $BROKEN_LINE == 1 ]] ; then
|
||||
while IFS=' ' read -r -a line4 ; do
|
||||
while read -r -a line4 ; do
|
||||
if [[ -n ${line4[0]} ]] && [[ ${line4[0],,} =~ .(bat|exe|msi|reg)$ ]]
|
||||
then echo "${line4[*]}"
|
||||
fi
|
||||
@@ -1230,8 +1292,10 @@ combobox_fix () {
|
||||
name3="!${name3//${name1}\!/\!}"
|
||||
name3="${name3//\!\!/\!}"
|
||||
name4="${name3//*\!/}"
|
||||
if [[ ${name1} == "${name4}" ]] || [[ ${name1} == "\\${name4}" ]]
|
||||
then name3="${name3%\!"${name1}"}"
|
||||
if [[ ${name1} == "${name4}" ]] ; then
|
||||
name3="${name3%\!"${name1}"}"
|
||||
elif [[ ${name1} == "\\${name4}" ]] ; then
|
||||
name3="${name3%\!"${name1//\\/}"}"
|
||||
fi
|
||||
if [[ "$1" == "--disabled" ]] ; then
|
||||
if [[ ${name1} == "disabled" ]] ; then
|
||||
@@ -1246,12 +1310,10 @@ combobox_fix () {
|
||||
fi
|
||||
fi
|
||||
echo "${name1}${name3}${fix_disabled}"
|
||||
elif [[ "$1" == "--empty" ]] ; then
|
||||
if [[ ${name1} != "" ]] ; then
|
||||
if [[ ${name1} == "\\" ]]
|
||||
then fix_empty=""
|
||||
else fix_empty="!"
|
||||
fi
|
||||
elif [[ "$1" == "--empty" && -n ${name1} ]] ; then
|
||||
if [[ ${name1} == "\\" ]]
|
||||
then fix_empty=""
|
||||
else fix_empty="!"
|
||||
fi
|
||||
echo "${name1}${name3}${fix_empty}"
|
||||
else
|
||||
@@ -1306,7 +1368,7 @@ get_and_set_reg_file () {
|
||||
find_line=${find_line//:*/}
|
||||
fi
|
||||
count=-1
|
||||
while IFS= read -r line_reg ; do
|
||||
while read -r line_reg ; do
|
||||
((count++))
|
||||
if [[ $line_reg =~ $name_for_find ]] ; then
|
||||
if [[ $line_reg == $name_for_find$name_for_set ]] ; then
|
||||
@@ -1318,7 +1380,7 @@ get_and_set_reg_file () {
|
||||
break
|
||||
fi
|
||||
[[ -z $line_reg ]] && break
|
||||
done <<< "$(sed -n "$find_line"',$p' "$find_file")"
|
||||
done < <(sed -n "$find_line"',$p' "$find_file")
|
||||
fi
|
||||
if [[ $name_add_or_del == --add ]] ; then
|
||||
if [[ -z $find_block ]] ; then
|
||||
@@ -1370,7 +1432,7 @@ recommend_dpi () {
|
||||
return 1
|
||||
fi
|
||||
local dpi=$(( height / 11 ))
|
||||
(( dpi < 96 )) && local dpi="96"
|
||||
(( dpi < 96 )) && dpi="96"
|
||||
echo "$dpi"
|
||||
}
|
||||
|
||||
@@ -1380,7 +1442,7 @@ fixes_after_update () {
|
||||
fixes_path="$PORT_WINE_TMP_PATH/fixes_apply"
|
||||
[[ ! -f $fixes_path ]] && touch "$fixes_path"
|
||||
|
||||
while IFS= read -r line ; do
|
||||
while read -r line ; do
|
||||
if [[ $line == "$fixes_info" ]] ; then
|
||||
return 1
|
||||
fi
|
||||
@@ -1394,7 +1456,7 @@ restart_pp () {
|
||||
--userconf) export RESTART_PP_USED="userconf" ;;
|
||||
--edit_db) export RESTART_PP_USED="edit_db" ;;
|
||||
esac
|
||||
/usr/bin/env bash -c ${pw_full_command_line[@]} &
|
||||
/usr/bin/env bash -c "${pw_full_command_line[@]}" &
|
||||
exit 0
|
||||
}
|
||||
|
||||
@@ -1493,7 +1555,7 @@ init_wine_ver () {
|
||||
else
|
||||
if [[ -d "${PORT_WINE_PATH}/data/dist" ]] ; then
|
||||
IFS=$'\n'
|
||||
for dist_dir in $(ls -1 "${PORT_WINE_PATH}/data/dist/") ; do
|
||||
for dist_dir in $(lsbash "${PORT_WINE_PATH}/data/dist/") ; do
|
||||
dist_dir_new=$(echo "${dist_dir}" | awk '$1=$1' | sed -e s/[[:blank:]]/_/g)
|
||||
if [[ ! -d "${PORT_WINE_PATH}/data/dist/${dist_dir_new^^}" ]] ; then
|
||||
mv -- "${PORT_WINE_PATH}/data/dist/$dist_dir" "${PORT_WINE_PATH}/data/dist/${dist_dir_new^^}"
|
||||
@@ -1501,7 +1563,7 @@ init_wine_ver () {
|
||||
done
|
||||
IFS="$orig_IFS"
|
||||
fi
|
||||
if [[ -z $(ls "${PORT_WINE_PATH}/data/dist/" | grep "${PW_WINE_USE}") ]] ; then
|
||||
if [[ -z $(lsbash "${PORT_WINE_PATH}/data/dist/" --grep "${PW_WINE_USE}") ]] ; then
|
||||
if [[ "$PW_WINE_USE" =~ PROTON_LG* ]]
|
||||
then export PW_WINE_USE=PROTON_LG
|
||||
else export PW_WINE_USE=WINE_LG
|
||||
@@ -1518,20 +1580,20 @@ init_wine_ver () {
|
||||
export WINELOADER="${WINEDIR}/bin/wine"
|
||||
export WINESERVER="${WINEDIR}/bin/wineserver"
|
||||
if [[ -d "${WINEDIR}/files" && ! -d "${WINEDIR}/dist" ]] ; then
|
||||
for clear_dist_files in $(ls "${WINEDIR}" | sed -r "s/^(files|version)$//g") ; do
|
||||
for clear_dist_files in $(lsbash "$WINEDIR" | sed -r "s/^(files|version)$//g") ; do
|
||||
rm -fr "${WINEDIR}/$clear_dist_files"
|
||||
done
|
||||
mv -f "${WINEDIR}/files"/* "${WINEDIR}/"
|
||||
rm -fr "${WINEDIR}/files"
|
||||
elif [[ ! -d "${WINEDIR}/files" && -d "${WINEDIR}/dist" ]] ; then
|
||||
for clear_dist_files in $(ls "${WINEDIR}" | sed -r "s/^(dist|version)$//g") ; do
|
||||
for clear_dist_files in $(lsbash "$WINEDIR" | sed -r "s/^(dist|version)$//g") ; do
|
||||
rm -fr "${WINEDIR}/$clear_dist_files"
|
||||
done
|
||||
mv -f "${WINEDIR}/dist"/* "${WINEDIR}/"
|
||||
rm -fr "${WINEDIR}/dist"
|
||||
elif [[ -f "${WINEDIR}/proton_dist.tar" ]] ; then
|
||||
unpack "${WINEDIR}/proton_dist.tar" "${WINEDIR}/"
|
||||
for clear_dist_files in $(ls "${WINEDIR}" | sed -r "s/^(bin|lib|lib64|share|version)$//g") ; do
|
||||
for clear_dist_files in $(lsbash "$WINEDIR" | sed -r "s/^(bin|lib|lib64|share|version)$//g") ; do
|
||||
rm -fr "${WINEDIR}/$clear_dist_files"
|
||||
done
|
||||
fi
|
||||
@@ -1601,7 +1663,9 @@ pw_init_runtime () {
|
||||
|
||||
if grep -i "altlinux" "/etc/os-release" &>/dev/null ; then
|
||||
export LIBGL_DRIVERS_PATH="/usr/lib/X11/modules/dri:/usr/lib64/X11/modules/dri"
|
||||
if [[ -f "/usr/share/vulkan/icd.d/nvidia_icd.json" ]] ; then
|
||||
if [[ -f "/usr/share/vulkan/icd.d/nvidia_icd.json" ]] \
|
||||
&& [[ "$LSPCI_VGA" == *nvidia* ]]
|
||||
then
|
||||
VK_ADD_DRIVER_FILES="$(realpath /usr/share/vulkan/icd.d/nvidia_icd.json)"
|
||||
export VK_ADD_DRIVER_FILES
|
||||
fi
|
||||
@@ -1812,7 +1876,7 @@ pw_kill_autostart () {
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ -n "$(ls "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/drive_c/ | grep -m 1 ".tmp")" ]] ; then
|
||||
if [[ -n "$(lsbash "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/drive_c/ | grep -m 1 ".tmp")" ]] ; then
|
||||
rm -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/drive_c/*.tmp
|
||||
fi
|
||||
|
||||
@@ -1903,8 +1967,8 @@ pw_download_libs () {
|
||||
"${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}.tar.xz" ; then
|
||||
if unpack "${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}.tar.xz" "${PORT_WINE_TMP_PATH}/" ; then
|
||||
try_remove_file "${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}.tar.xz"
|
||||
if ls "${PORT_WINE_TMP_PATH}" | grep libs_v | grep -v libs"${PW_LIBS_VER}" ; then
|
||||
for RM_LIBS in $(ls "${PORT_WINE_TMP_PATH}" | grep libs_v | grep -v libs"${PW_LIBS_VER}")
|
||||
if lsbash "${PORT_WINE_TMP_PATH}" --grep libs_v --grep -v libs"${PW_LIBS_VER}" ; then
|
||||
for RM_LIBS in $(lsbash "${PORT_WINE_TMP_PATH}" --grep libs_v --grep -v libs"${PW_LIBS_VER}")
|
||||
do try_remove_dir "${PORT_WINE_TMP_PATH}/${RM_LIBS}"
|
||||
done
|
||||
fi
|
||||
@@ -2054,9 +2118,9 @@ pw_check_and_download_plugins () {
|
||||
try_remove_file "${PORT_WINE_TMP_PATH}/plugins${PW_PLUGINS_VER}.tar.xz"
|
||||
# TODO: drop clear prefix, and add update prefix from new plugins
|
||||
pw_clear_pfx
|
||||
if ls "${PORT_WINE_TMP_PATH}" | grep plugins_v | grep -v "plugins${PW_PLUGINS_VER}"
|
||||
if lsbash "${PORT_WINE_TMP_PATH}" --grep plugins_v --grep -v "plugins${PW_PLUGINS_VER}"
|
||||
then
|
||||
for RM_PLUGINS in $(ls "${PORT_WINE_TMP_PATH}" | grep plugins_v | grep -v "plugins${PW_PLUGINS_VER}")
|
||||
for RM_PLUGINS in $(lsbash "${PORT_WINE_TMP_PATH}" --grep plugins_v --grep -v "plugins${PW_PLUGINS_VER}")
|
||||
do try_remove_dir "${PORT_WINE_TMP_PATH}/${RM_PLUGINS}"
|
||||
done
|
||||
fi
|
||||
@@ -2087,9 +2151,9 @@ pw_check_and_download_plugins () {
|
||||
try_remove_file "${PORT_WINE_TMP_PATH}/plugins${PW_PLUGINS_VER}.tar.xz"
|
||||
# TODO: drop clear prefix, and add update prefix from new plugins
|
||||
pw_clear_pfx
|
||||
if ls "${PORT_WINE_TMP_PATH}" | grep plugins_v | grep -v "plugins${PW_PLUGINS_VER}"
|
||||
if lsbash "${PORT_WINE_TMP_PATH}" --grep plugins_v --grep -v "plugins${PW_PLUGINS_VER}"
|
||||
then
|
||||
for RM_PLUGINS in $(ls "${PORT_WINE_TMP_PATH}" | grep plugins_v | grep -v "plugins${PW_PLUGINS_VER}")
|
||||
for RM_PLUGINS in $(lsbash "${PORT_WINE_TMP_PATH}" --grep plugins_v --grep -v "plugins${PW_PLUGINS_VER}")
|
||||
do try_remove_dir "${PORT_WINE_TMP_PATH}/${RM_PLUGINS}"
|
||||
done
|
||||
fi
|
||||
@@ -2191,7 +2255,7 @@ check_dirs_and_files_in_pfx () {
|
||||
}
|
||||
|
||||
check_nvidia_rtx () {
|
||||
if [[ -n $(echo "$LSPCI_VGA" | grep -i "nvidia") ]] ; then
|
||||
if [[ "$LSPCI_VGA" == *nvidia* ]] ; then
|
||||
# Turing (without nvidia 16XX)
|
||||
[[ "$LSPCI_VGA" == *TU[0-9]* ]] && [[ "$LSPCI_VGA" != *TU11[6-7]* ]] && return 0
|
||||
# Ampere
|
||||
@@ -2216,7 +2280,7 @@ pw_init_db () {
|
||||
# shellcheck source=/dev/null
|
||||
source "${PORTWINE_DB_FILE}"
|
||||
if echo "${portwine_exe}" | grep "/prefixes/" &>/dev/null ; then
|
||||
if [[ -z $(ls "${PORT_WINE_PATH}/prefixes/" | grep -e ^"${PW_PREFIX_NAME}"$) ]] \
|
||||
if [[ -z $(lsbash "${PORT_WINE_PATH}/prefixes/" --grep ^"${PW_PREFIX_NAME}"$) ]] \
|
||||
|| [[ -z $(grep -e ^"export PW_PREFIX_NAME=" "${PORTWINE_DB_FILE}" 2>/dev/null) ]]
|
||||
then
|
||||
PW_PREFIX_NAME=$(echo "${portwine_exe}" | awk -F"/prefixes/" '{print $2}' | awk -F"/" '{print $1}')
|
||||
@@ -2256,7 +2320,7 @@ pw_init_db () {
|
||||
try_copy_file "${PW_FIND_DB_FILE}" "${portwine_exe}".ppdb
|
||||
PORTWINE_DB_FILE="${portwine_exe}".ppdb
|
||||
if echo "${portwine_exe}" | grep "/prefixes/" &>/dev/null ; then
|
||||
if [[ -z $(ls "${PORT_WINE_PATH}/prefixes/" | grep -e ^"${PW_PREFIX_NAME}"$) ]] \
|
||||
if [[ -z $(lsbash "${PORT_WINE_PATH}/prefixes/" --grep ^"${PW_PREFIX_NAME}"$) ]] \
|
||||
|| [[ -z $(grep -e ^"export PW_PREFIX_NAME=" "${PORTWINE_DB_FILE}" 2>/dev/null) ]]
|
||||
then
|
||||
PW_PREFIX_NAME=$(echo "${portwine_exe}" | awk -F"/prefixes/" '{print $2}' | awk -F"/" '{print $1}')
|
||||
@@ -2305,7 +2369,7 @@ pw_init_db () {
|
||||
if [[ "${PW_WINE_CPU_TOPOLOGY}" == "disabled" ]] && [[ -n "${WINE_CPU_TOPOLOGY}" ]] ; then
|
||||
export PW_WINE_CPU_TOPOLOGY="${WINE_CPU_TOPOLOGY}"
|
||||
fi
|
||||
if ls "${PATH_TO_GAME}"/*_Data/Resources/ 2>/dev/null | grep "unity" &>/dev/null \
|
||||
if lsbash "${PATH_TO_GAME}"/*_Data/Resources/ --grep "unity" &>/dev/null \
|
||||
&& [[ "${PW_WINE_CPU_TOPOLOGY}" == "disabled" ]] \
|
||||
&& [[ $(grep -c ^"processor" /proc/cpuinfo) -gt "8" ]]
|
||||
then
|
||||
@@ -2373,7 +2437,7 @@ pw_port_update () {
|
||||
return 1
|
||||
fi
|
||||
|
||||
IFS=' ' read -r -a PW_UPDATE_ALL_LIST <<< "$UPDATE_ETERFUND $UPDATE_GITHUB $UPDATE_PP_GITEA"
|
||||
read -r -a PW_UPDATE_ALL_LIST <<< "$UPDATE_ETERFUND $UPDATE_GITHUB $UPDATE_PP_GITEA"
|
||||
|
||||
UPDATE_MIN=${PW_UPDATE_ALL_LIST[0]}
|
||||
for i in "${!PW_UPDATE_ALL_LIST[@]}"; do
|
||||
@@ -2763,7 +2827,7 @@ pw_create_gui_png () {
|
||||
|
||||
if [[ "$PW_PRODUCTNAME" =~ (Launcher|RU) ]]
|
||||
then
|
||||
PW_PRODUCTNAME="${PW_PRODUCTNAME//(Launcher|RU)/}"
|
||||
PW_PRODUCTNAME=$(echo "$PW_PRODUCTNAME" | sed -r "s/(Launcher|RU)//g")
|
||||
fi
|
||||
|
||||
if [[ -n "$PW_PRODUCTNAME" ]] \
|
||||
@@ -2775,7 +2839,7 @@ pw_create_gui_png () {
|
||||
fi
|
||||
fi
|
||||
|
||||
PORTPROTON_NAME="${PORTPROTON_NAME//(\`|\"|\'|\!)/}"
|
||||
PW_PRODUCTNAME=$(echo "$PW_PRODUCTNAME" | sed -r "s/(\`|\"|'|\!)//g")
|
||||
export PORTPROTON_NAME
|
||||
edit_db_from_gui PORTPROTON_NAME FILE_DESCRIPTION
|
||||
fi
|
||||
@@ -2819,8 +2883,8 @@ pw_find_exe () {
|
||||
--button="${translations[CANCEL]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":1 \
|
||||
--button="${translations[OK]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":0 2>/dev/null)"
|
||||
YAD_STATUS="$?"
|
||||
|
||||
IFS="$orig_IFS"
|
||||
|
||||
if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then
|
||||
print_info "Restarting..."
|
||||
restart_pp
|
||||
@@ -3095,7 +3159,7 @@ start_portwine () {
|
||||
sed -i /'dxgi.hideNvidiaGpu =/c dxgi.hideNvidiaGpu = False' "${DXVK_CONFIG_FILE}"
|
||||
export WINE_HIDE_NVIDIA_GPU="0"
|
||||
export WINE_HIDE_AMD_GPU="1"
|
||||
export DXVK_NVAPI_DRIVER_VERSION="53713"
|
||||
export DXVK_NVAPI_DRIVER_VERSION="99999"
|
||||
export DXVK_NVAPI_ALLOW_OTHER_DRIVERS="1"
|
||||
export WINEHAGS="1"
|
||||
;;
|
||||
@@ -3131,7 +3195,6 @@ start_portwine () {
|
||||
try_copy_file_with_checksums "${PW_PLUGINS_PATH}/fake_dlss/${PW_FAKE_DLSS_VER}/nvngx.dll" "${WINEPREFIX}/drive_c/windows/system32/nvngx.dll"
|
||||
try_copy_file_with_checksums "${PW_PLUGINS_PATH}/fake_dlss/${PW_FAKE_DLSS_VER}/nvngx.ini" "${WINEPREFIX}/drive_c/windows/system32/nvngx.ini"
|
||||
enabled_fake_nvidia_videocard old
|
||||
var_winedlloverride_update "nvapi,nvapi64,nvngx=n;_nvngx=;nvcuda=b"
|
||||
elif [[ "${PW_USE_NVAPI_AND_DLSS}" == 1 ]] ; then
|
||||
DXVK_ENABLE_NVAPI="1"
|
||||
try_remove_file "${WINEPREFIX}/drive_c/windows/system32/nvngx.ini"
|
||||
@@ -3139,12 +3202,14 @@ start_portwine () {
|
||||
if [[ -n "$FIND_NVNGX" ]] ; then
|
||||
try_copy_file_with_checksums "${FIND_NVNGX}/nvngx.dll" "${WINEPREFIX}/drive_c/windows/system32/nvngx.dll"
|
||||
try_copy_file_with_checksums "${FIND_NVNGX}/_nvngx.dll" "${WINEPREFIX}/drive_c/windows/system32/_nvngx.dll"
|
||||
export NVIDIA_WINE_DLL_DIR="${FIND_NVNGX}"
|
||||
else
|
||||
try_copy_file_with_checksums "${PW_PLUGINS_PATH}/nvngx/nvngx.dll" "${WINEPREFIX}/drive_c/windows/system32/nvngx.dll"
|
||||
try_copy_file_with_checksums "${PW_PLUGINS_PATH}/nvngx/_nvngx.dll" "${WINEPREFIX}/drive_c/windows/system32/_nvngx.dll"
|
||||
export NVIDIA_WINE_DLL_DIR="${PW_PLUGINS_PATH}/nvngx"
|
||||
fi
|
||||
enabled_fake_nvidia_videocard 0
|
||||
var_winedlloverride_update "nvngx,_nvngx,nvapi,nvapi64=n;nvcuda=b"
|
||||
var_winedlloverride_update "nvngx,_nvngx=n"
|
||||
else
|
||||
DXVK_ENABLE_NVAPI="0"
|
||||
for rm_dll in "nvngx.ini" "nvngx.dll" "_nvngx.dll" ; do
|
||||
@@ -3341,7 +3406,7 @@ start_portwine () {
|
||||
print_info "VKD3D-PROTON v.${VKD3D_STABLE_VER} in use"
|
||||
PATH_TO_DXVK_FILES="${PW_VULKAN_DIR}/dxvk-${DXVK_STABLE_VER}"
|
||||
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_STABLE_VER}"
|
||||
CP_DXVK_FILES="d3d11 d3d10core d3d10_1 d3d10 d3d9 dxgi" # openvr_api_dxvk
|
||||
CP_DXVK_FILES="d3d11 d3d10core d3d10_1 d3d10 d3d9 dxgi openvr_api_dxvk"
|
||||
CP_VKD3D_FILES="d3d12 libvkd3d-shader-1"
|
||||
CP_WINE_FILES="d3d12core d3d8"
|
||||
;;
|
||||
@@ -3351,7 +3416,7 @@ start_portwine () {
|
||||
print_info "VKD3D-PROTON v.${VKD3D_GIT_VER} in use"
|
||||
PATH_TO_DXVK_FILES="${PW_VULKAN_DIR}/dxvk-${DXVK_GIT_VER}"
|
||||
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_GIT_VER}"
|
||||
CP_DXVK_FILES="d3d11 d3d10core d3d9 d3d8 dxgi" # openvr_api_dxvk
|
||||
CP_DXVK_FILES="d3d11 d3d10core d3d9 d3d8 dxgi openvr_api_dxvk"
|
||||
CP_VKD3D_FILES="d3d12 d3d12core libvkd3d-1 libvkd3d-shader-1"
|
||||
CP_WINE_FILES="d3d10_1 d3d10"
|
||||
;;
|
||||
@@ -3654,6 +3719,12 @@ start_portwine () {
|
||||
print_info "Try create symlink NVAPI files..."
|
||||
try_force_link_file "${PATH_TO_DXVK_FILES}/x32/nvapi.dll" "${WINEPREFIX}/drive_c/windows/syswow64/nvapi.dll"
|
||||
try_force_link_file "${PATH_TO_DXVK_FILES}/x64/nvapi64.dll" "${WINEPREFIX}/drive_c/windows/system32/nvapi64.dll"
|
||||
try_force_link_file "${PATH_TO_DXVK_FILES}/x64/nvofapi64.dll" "${WINEPREFIX}/drive_c/windows/system32/nvofapi64.dll"
|
||||
var_winedlloverride_update "nvapi64,nvofapi64,nvapi=n;nvcuda=b"
|
||||
else
|
||||
try_remove_file "${WINEPREFIX}/drive_c/windows/syswow64/nvapi.dll"
|
||||
try_remove_file "${WINEPREFIX}/drive_c/windows/system32/nvapi64.dll"
|
||||
try_remove_file "${WINEPREFIX}/drive_c/windows/system32/nvofapi64.dll"
|
||||
fi
|
||||
|
||||
if [[ -n "$CP_VKD3D_FILES" ]] ; then
|
||||
@@ -3995,7 +4066,7 @@ start_portwine () {
|
||||
[[ "${PW_GS_ITM_TARGET_NITS}" != "0" ]] && PW_GAMESCOPE_ARGS_NEW+=" --hdr-itm-target-nits ${PW_GS_ITM_TARGET_NITS}"
|
||||
|
||||
edit_db_from_gui PW_GAMESCOPE_ARGS_NEW
|
||||
export PW_RUN_GAMESCOPE="${PW_GAMESCOPE_VARIABLES_BEFORE}gamescope${PW_ID_VIDEO}${PW_GAMESCOPE_ARGS_NEW} env ${PW_GAMESCOPE_VARIABLES_AFTER}"
|
||||
export PW_RUN_GAMESCOPE="env ${PW_GAMESCOPE_VARIABLES_BEFORE}gamescope${PW_ID_VIDEO}${PW_GAMESCOPE_ARGS_NEW} env ${PW_GAMESCOPE_VARIABLES_AFTER}--"
|
||||
fi
|
||||
|
||||
pw_mangohud_check
|
||||
@@ -4042,7 +4113,7 @@ pw_run () {
|
||||
${PW_GAMEMODERUN_SLR} \
|
||||
${PW_MANGOHUD_SLR} \
|
||||
${PW_DISPLAY} \
|
||||
"${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[@]} &>>"${PW_LOG_TO_FILE}"
|
||||
"${WINELOADER}" "$@" ${LAUNCH_PARAMETERS} &>>"${PW_LOG_TO_FILE}"
|
||||
else
|
||||
if [[ "$PW_USE_TERMINAL" == 1 ]] ; then
|
||||
PW_ADD_TO_ARGS_IN_RUNTIME="--xterm"
|
||||
@@ -4061,7 +4132,7 @@ pw_run () {
|
||||
${PW_GAMEMODERUN_SLR} \
|
||||
${PW_MANGOHUD_SLR} \
|
||||
${PW_DISPLAY} \
|
||||
"${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[@]} &>>"${PW_LOG_TO_FILE}"
|
||||
"${WINELOADER}" "$@" ${LAUNCH_PARAMETERS} &>>"${PW_LOG_TO_FILE}"
|
||||
print_info "Update prefix log:"
|
||||
[[ -f "${PW_TMPFS_PATH}/update_pfx_log" ]] && cat "${PW_TMPFS_PATH}/update_pfx_log"
|
||||
echo
|
||||
@@ -4089,7 +4160,7 @@ pw_run () {
|
||||
${PW_MANGOHUD_SLR} \
|
||||
${PW_DISPLAY} \
|
||||
${PW_INHIBIT_SLR}\
|
||||
"${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[@]} &>>"${PW_LOG_TO_FILE}"
|
||||
"${WINELOADER}" "$@" ${LAUNCH_PARAMETERS} &>>"${PW_LOG_TO_FILE}"
|
||||
wait_wineserver
|
||||
else
|
||||
print_info "Update prefix log:"
|
||||
@@ -4108,7 +4179,7 @@ pw_run () {
|
||||
${PW_MANGOHUD_SLR} \
|
||||
${PW_DISPLAY} \
|
||||
${PW_INHIBIT_SLR}\
|
||||
"${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[@]}
|
||||
"${WINELOADER}" "$@" ${LAUNCH_PARAMETERS}
|
||||
wait_wineserver
|
||||
fi
|
||||
fi
|
||||
@@ -4116,7 +4187,7 @@ pw_run () {
|
||||
export -f pw_run
|
||||
|
||||
pw_yad_set_form () {
|
||||
if [[ $(<"${PW_TMPFS_PATH}/tmp_yad_form") != "" ]] ; then
|
||||
if [[ -n $(<"${PW_TMPFS_PATH}/tmp_yad_form") ]] ; then
|
||||
pw_skip_get_info
|
||||
PW_YAD_SET=$(head -n 1 "${PW_TMPFS_PATH}/tmp_yad_form" | awk '{print $1}')
|
||||
export PW_YAD_SET
|
||||
@@ -4124,7 +4195,7 @@ pw_yad_set_form () {
|
||||
}
|
||||
|
||||
pw_yad_form_vulkan () {
|
||||
if [[ "$(<"${PW_TMPFS_PATH}/tmp_yad_form_vulkan")" != "" ]] ; then
|
||||
if [[ -n "$(<"${PW_TMPFS_PATH}/tmp_yad_form_vulkan")" ]] ; then
|
||||
if [[ -n "${KEY_START}" ]] ; then
|
||||
YAD_FORM_VULKAN=$(sed 's/$/\;/' "${PW_TMPFS_PATH}/tmp_yad_form_vulkan")
|
||||
VULKAN_MOD=$(echo "${YAD_FORM_VULKAN}" | grep \;\; | awk -F";" '{print $1}')
|
||||
@@ -4490,7 +4561,7 @@ gui_proton_downloader () {
|
||||
pw_start_progress_bar_block "${translations[Check new version WINE...]}"
|
||||
|
||||
# PROTON_GE
|
||||
read -r -d '' -a PROTON_GE_GIT <<< "$(curl -s "https://api.github.com/repos/GloriousEggroll/proton-ge-custom/releases" | grep "browser_download_url.*\.tar\.gz" | cut -d \" -f 4)"
|
||||
read -r -d '' -a PROTON_GE_GIT < <(curl -s "https://api.github.com/repos/GloriousEggroll/proton-ge-custom/releases" | grep "browser_download_url.*\.tar\.gz" | cut -d \" -f 4)
|
||||
if [[ -n "${PROTON_GE_GIT[0]}" ]] ; then
|
||||
for PGEGIT in "${PROTON_GE_GIT[@]}" ; do
|
||||
echo "${PGEGIT}" | awk -F/ '{print $NF}' | sed 's/.tar.gz//' >> "${PW_TMPFS_PATH}/tmp_proton_ge_git"
|
||||
@@ -4499,7 +4570,7 @@ gui_proton_downloader () {
|
||||
fi
|
||||
|
||||
# WINE_KRON4EK
|
||||
read -r -d '' -a WINE_KRON4EK <<< "$(curl -s "https://api.github.com/repos/Kron4ek/Wine-Builds/releases" | grep "browser_download_url.*\.tar\.xz" | cut -d \" -f 4)"
|
||||
read -r -d '' -a WINE_KRON4EK < <(curl -s "https://api.github.com/repos/Kron4ek/Wine-Builds/releases" | grep "browser_download_url.*\.tar\.xz" | cut -d \" -f 4)
|
||||
if [[ -n "${WINE_KRON4EK[0]}" ]] ; then
|
||||
for PGEGIT in "${WINE_KRON4EK[@]}" ; do
|
||||
echo "${PGEGIT}" | awk -F/ '{print $NF}' | sed 's/.tar.xz//' >> "${PW_TMPFS_PATH}/tmp_wine_kron4ek_git"
|
||||
@@ -4508,7 +4579,7 @@ gui_proton_downloader () {
|
||||
fi
|
||||
|
||||
# WINE_GE_CUSTOM
|
||||
read -r -d '' -a WINE_GE_CUSTOM <<< "$(curl -s "https://api.github.com/repos/GloriousEggroll/wine-ge-custom/releases" | grep "browser_download_url.*\.tar\.xz" | cut -d \" -f 4)"
|
||||
read -r -d '' -a WINE_GE_CUSTOM < <(curl -s "https://api.github.com/repos/GloriousEggroll/wine-ge-custom/releases" | grep "browser_download_url.*\.tar\.xz" | cut -d \" -f 4)
|
||||
if [[ -n "${WINE_GE_CUSTOM[0]}" ]] ; then
|
||||
for PGEGIT in "${WINE_GE_CUSTOM[@]}" ; do
|
||||
echo "${PGEGIT}" | awk -F/ '{print $NF}' | sed 's/.tar.xz//' >> "${PW_TMPFS_PATH}/tmp_wine_ge_custom_git"
|
||||
@@ -4517,7 +4588,7 @@ gui_proton_downloader () {
|
||||
fi
|
||||
|
||||
# PROTON_LG
|
||||
read -r -d '' -a PROTON_PW_GIT <<< "$(curl -s "https://api.github.com/repos/Castro-Fidel/wine_builds/releases" | grep "browser_download_url.*\.tar\.xz" | cut -d \" -f 4 | sort -r)"
|
||||
read -r -d '' -a PROTON_PW_GIT < <(curl -s "https://api.github.com/repos/Castro-Fidel/wine_builds/releases" | grep "browser_download_url.*\.tar\.xz" | cut -d \" -f 4 | sort -r)
|
||||
if [[ -n "${PROTON_PW_GIT[0]}" ]] ; then
|
||||
for PPWGIT in "${PROTON_PW_GIT[@]}" ; do
|
||||
echo "${PPWGIT}" | awk -F/ '{print $NF}' | sed 's/.tar.xz//' >> "${PW_TMPFS_PATH}/tmp_proton_pw_git"
|
||||
@@ -4843,9 +4914,7 @@ A brief instruction:
|
||||
* library=n,b - use <b>WINDOWS</b> library and then <b>WINE</b>
|
||||
* library=b,n - use <b>WINE</b> library and then <b>WINDOWS</b>
|
||||
* library= - disable the use of this library]} :CBE" "$(combobox_fix --empty "${WINEDLLOVERRIDES}" "libglesv2=!d3dx9_36,d3dx9_42=n,b;mfc120=b,n")" \
|
||||
--field=":LBLH" "" \
|
||||
--field="${translations[ADD ARGUMENTS FOR .EXE FILE]}!${translations[Adding an argument after the <b>.exe</b> file, just like you would add an argument in a shortcut on a <b>WINDOWS </b> system]} :CBE" "$(combobox_fix --empty "\\${LAUNCH_PARAMETERS[@]}" "-dx11 -skipintro 1")" \
|
||||
--field=":LBLH" "" \
|
||||
--field="${translations[ADD ARGUMENTS FOR .EXE FILE]}!${translations[Adding an argument after the <b>.exe</b> file, just like you would add an argument in a shortcut on a <b>WINDOWS </b> system]} :CBE" "$(combobox_fix --empty "\\${LAUNCH_PARAMETERS}" "-dx11 -skipintro 1")" \
|
||||
--field="${translations[Limit the use of processor cores]}!${translations[Limiting the number of CPU cores is useful for Unity games (It is recommended to set the value equal to 8)]} :CB" "$(combobox_fix --disabled "${CPU_LIMIT_VAR}" "${GET_LOGICAL_CORE}")" \
|
||||
--field="${translations[Forcibly select the OpenGL version for the game]}!${translations[You can select the required OpenGL version, some games require a forced Compatibility Profile (COMPAT). (Examples are in the drop-down list)]} :CB" "$(combobox_fix --disabled "${PW_MESA_GL_VERSION_OVERRIDE}" "4.6COMPAT!4.5COMPAT!4.3COMPAT!4.1COMPAT!3.3COMPAT!3.2COMPAT")" \
|
||||
--field="${translations[Forcibly select the VKD3D feature level]}!${translations[You can set a forced feature level VKD3D for games on DirectX12]} :$VKD3D_CB" "$(combobox_fix --disabled "${PW_VKD3D_FEATURE_LEVEL}" "12_2!12_1!12_0!11_1!11_0")" \
|
||||
@@ -4882,7 +4951,7 @@ relaxed - Same as fifo but allows tearing when below the monitors refresh rate.]
|
||||
;;
|
||||
esac
|
||||
|
||||
IFS=' ' read -r -a output_yad_edit_db <"${PW_TMPFS_PATH}/tmp_output_yad_edit_db"
|
||||
read -r -a output_yad_edit_db <"${PW_TMPFS_PATH}/tmp_output_yad_edit_db"
|
||||
bool_from_yad="0"
|
||||
for boole_to_int in "${PW_EDIT_DB_LIST[@]}" ; do
|
||||
export "${boole_to_int}"="${output_yad_edit_db[$bool_from_yad]}"
|
||||
@@ -4897,12 +4966,12 @@ relaxed - Same as fifo but allows tearing when below the monitors refresh rate.]
|
||||
PW_WINDOWS_VER="${PW_ADD_SETTINGS[0]}"
|
||||
PW_DLL_INSTALL="${PW_ADD_SETTINGS[1]}"
|
||||
WINEDLLOVERRIDES="${PW_ADD_SETTINGS[2]}"
|
||||
LAUNCH_PARAMETERS="${PW_ADD_SETTINGS[4]}"
|
||||
CPU_LIMIT="${PW_ADD_SETTINGS[6]}"
|
||||
PW_MESA_GL_VERSION_OVERRIDE="${PW_ADD_SETTINGS[7]}"
|
||||
PW_VKD3D_FEATURE_LEVEL="${PW_ADD_SETTINGS[8]}"
|
||||
PW_LOCALE_SELECT="${PW_ADD_SETTINGS[9]}"
|
||||
PW_MESA_VK_WSI_PRESENT_MODE="${PW_ADD_SETTINGS[10]}"
|
||||
LAUNCH_PARAMETERS="${PW_ADD_SETTINGS[3]}"
|
||||
CPU_LIMIT="${PW_ADD_SETTINGS[4]}"
|
||||
PW_MESA_GL_VERSION_OVERRIDE="${PW_ADD_SETTINGS[5]}"
|
||||
PW_VKD3D_FEATURE_LEVEL="${PW_ADD_SETTINGS[6]}"
|
||||
PW_LOCALE_SELECT="${PW_ADD_SETTINGS[7]}"
|
||||
PW_MESA_VK_WSI_PRESENT_MODE="${PW_ADD_SETTINGS[8]}"
|
||||
|
||||
if [[ "${CPU_LIMIT}" =~ ^[0-9]+$ ]] ; then
|
||||
PW_WINE_CPU_TOPOLOGY="${CPU_LIMIT}:$(seq -s, 0 $(( CPU_LIMIT - 1 )))"
|
||||
@@ -4936,8 +5005,8 @@ relaxed - Same as fifo but allows tearing when below the monitors refresh rate.]
|
||||
gui_vkbasalt () {
|
||||
KEY_FX_GUI=$RANDOM
|
||||
FILE_VKBASALT_CONF="${PORT_WINE_PATH}/data/vkBasalt.conf"
|
||||
read -r -d '' -a LIST_FX <<< "$(grep -E '.fx$|.fxh$' "$FILE_VKBASALT_CONF" | awk '{print $1}')"
|
||||
IFS=' ' read -r -a GET_FX_IN_FILE <<< "$(echo "$PW_VKBASALT_EFFECTS" | sed -e s/"cas:"// -e s/":"/" "/g)"
|
||||
read -r -d '' -a LIST_FX < <(grep -E '.fx$|.fxh$' "$FILE_VKBASALT_CONF" | awk '{print $1}')
|
||||
read -r -a GET_FX_IN_FILE < <(echo "$PW_VKBASALT_EFFECTS" | sed -e s/"cas:"// -e s/":"/" "/g)
|
||||
|
||||
PW_3DFX_INFO=${translations[Simulation of an old 3dfx graphics accelerator (adds horizontal stripes)]}
|
||||
PW_AdaptiveSharpen_INFO=${translations[Sharpness increase, can be used with CAS]}
|
||||
@@ -5280,7 +5349,7 @@ gui_mangohud () {
|
||||
fi
|
||||
|
||||
if [[ "${GUI_MH_RESULT}" =~ "fps_only" ]] ; then
|
||||
local GUI_MH_RESULT="fps_only"
|
||||
GUI_MH_RESULT="fps_only"
|
||||
print_info "In the MangoHud config fps_only is detected all settings are reseted"
|
||||
fi
|
||||
|
||||
@@ -5441,7 +5510,7 @@ gui_dgvoodoo2 () {
|
||||
;;
|
||||
esac
|
||||
|
||||
IFS=' ' read -r -a output_yad_dgv2 <"${PW_TMPFS_PATH}/tmp_yad_dgv2_set"
|
||||
read -r -a output_yad_dgv2 <"${PW_TMPFS_PATH}/tmp_yad_dgv2_set"
|
||||
bool_from_yad=0
|
||||
for boole_to_int in "${PW_DGV2_LIST[@]}" ; do
|
||||
export "${boole_to_int}"="${output_yad_dgv2[$bool_from_yad]}"
|
||||
@@ -5609,7 +5678,7 @@ gui_gamescope () {
|
||||
;;
|
||||
esac
|
||||
|
||||
IFS=' ' read -r -a output_yad_gs <"${PW_TMPFS_PATH}/tmp_yad_gs_set"
|
||||
read -r -a output_yad_gs <"${PW_TMPFS_PATH}/tmp_yad_gs_set"
|
||||
bool_from_yad="0"
|
||||
for boole_to_int in "${PW_GS_LIST[@]}" ; do
|
||||
export "${boole_to_int}"="${output_yad_gs[$bool_from_yad]}"
|
||||
@@ -5946,7 +6015,7 @@ portwine_output_yad_shortcut () {
|
||||
if [[ -f "${SLUF}" ]]; then
|
||||
SLUFUB=false
|
||||
STUID64=""
|
||||
while IFS= read -r line; do
|
||||
while read -r line; do
|
||||
if [[ "${line}" =~ ^[[:space:]]*\"([0-9]+)\"$ ]]; then
|
||||
STUIDCUR="${BASH_REMATCH[1]}"
|
||||
SLUFUB=true
|
||||
@@ -6025,16 +6094,15 @@ pw_auto_create_shortcut () {
|
||||
fi
|
||||
|
||||
unset LINKS
|
||||
for link_file in "${PORT_WINE_PATH}"/data/prefixes/*/drive_c/users/*/Desktop/*.lnk
|
||||
do
|
||||
link_file=$(readlink -f "${link_file}")
|
||||
IFS=' ' read -r -a LINKS <<< "${LINKS[*]} ${link_file// /@_@}"
|
||||
for link_file in "${PORT_WINE_PATH}"/data/prefixes/*/drive_c/users/*/Desktop/*.lnk ; do
|
||||
link_file=$(readlink -f "$link_file")
|
||||
LINKS+=("${link_file// /#@_@#}")
|
||||
done
|
||||
|
||||
[[ -z "${LINKS[0]}" ]] && return 0
|
||||
IFS=' ' read -r -a SORTED_LINKS <<< "$(echo "${LINKS[@]}" | tr ' ' '\n' | sort -u | tr '\n' ' ')"
|
||||
read -r -a SORTED_LINKS < <(echo "${LINKS[@]}" | tr ' ' '\n' | sort -u | tr '\n' ' ')
|
||||
|
||||
for link_file in "${SORTED_LINKS[@]//@_@/ }" ; do
|
||||
for link_file in "${SORTED_LINKS[@]//#@_@#/ }" ; do
|
||||
if command -v exiftool &>/dev/null ; then
|
||||
if timeout 3 exiftool "$link_file" &> "${PW_TMPFS_PATH}/exiftool.tmp" ; then
|
||||
prefix_name=$(echo "$link_file" | awk -F"/prefixes/" '{print $2}' | awk -F"/" '{print $1}')
|
||||
@@ -6128,22 +6196,22 @@ portwine_change_shortcut () {
|
||||
portwine_search_shortcut () {
|
||||
unset PW_DELETE_SHORTCUT_MENU PW_DELETE_SHORTCUT_DESKTOP
|
||||
PW_DELETE_MENU="$(grep -il "${portwine_exe}" "${HOME}/.local/share/applications"/*.desktop 2>/dev/null)"
|
||||
read -r -d '' -a PW_DELETE_SHORTCUT_MENU <<< "${PW_DELETE_SHORTCUT_MENU[*]} ${PW_DELETE_MENU// /@_@}"
|
||||
read -r -d '' -a PW_DELETE_SHORTCUT_MENU <<< "${PW_DELETE_SHORTCUT_MENU[*]}${PW_DELETE_MENU// /#@_@#} "
|
||||
|
||||
PW_DELETE_PP="$(grep -il "${portwine_exe}" "${PORT_WINE_PATH}"/*.desktop 2>/dev/null)"
|
||||
read -r -d '' -a PW_DELETE_SHORTCUT_MENU <<< "${PW_DELETE_SHORTCUT_MENU[*]} ${PW_DELETE_PP// /@_@}"
|
||||
read -r -d '' -a PW_DELETE_SHORTCUT_MENU <<< "${PW_DELETE_SHORTCUT_MENU[*]}${PW_DELETE_PP// /#@_@#} "
|
||||
|
||||
if [[ -d "${HOME}/Desktop" ]] ; then
|
||||
PW_DELETE_DESKTOP="$(grep -il "${portwine_exe}" "${HOME}/Desktop"/*.desktop 2>/dev/null)"
|
||||
read -r -d '' -a PW_DELETE_SHORTCUT_DESKTOP <<< "${PW_DELETE_SHORTCUT_DESKTOP[*]} ${PW_DELETE_DESKTOP// /@_@}"
|
||||
read -r -d '' -a PW_DELETE_SHORTCUT_DESKTOP <<< "${PW_DELETE_SHORTCUT_DESKTOP[*]}${PW_DELETE_DESKTOP// /#@_@#} "
|
||||
fi
|
||||
if [[ -d "${HOME}/Рабочий стол" ]] ; then
|
||||
PW_DELETE_DESKTOP="$(grep -il "${portwine_exe}" "${HOME}/Рабочий стол"/*.desktop 2>/dev/null)"
|
||||
read -r -d '' -a PW_DELETE_SHORTCUT_DESKTOP <<< "${PW_DELETE_SHORTCUT_DESKTOP[*]} ${PW_DELETE_DESKTOP// /@_@}"
|
||||
read -r -d '' -a PW_DELETE_SHORTCUT_DESKTOP <<< "${PW_DELETE_SHORTCUT_DESKTOP[*]}${PW_DELETE_DESKTOP// /#@_@#} "
|
||||
fi
|
||||
if [[ $(xdg-user-dir DESKTOP) ]] ; then
|
||||
PW_DELETE_DESKTOP="$(grep -il "${portwine_exe}" "$(xdg-user-dir DESKTOP)"/*.desktop 2>/dev/null)"
|
||||
read -r -d '' -a PW_DELETE_SHORTCUT_DESKTOP <<< "${PW_DELETE_SHORTCUT_DESKTOP[*]} ${PW_DELETE_DESKTOP// /@_@}"
|
||||
read -r -d '' -a PW_DELETE_SHORTCUT_DESKTOP <<< "${PW_DELETE_SHORTCUT_DESKTOP[*]}${PW_DELETE_DESKTOP// /#@_@#} "
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -6154,7 +6222,7 @@ portwine_delete_shortcut () {
|
||||
unset PORTWINE_CHANGE_SHORTCUT
|
||||
|
||||
for delete_shortcut in "${PW_DELETE_SHORTCUT_MENU[@]}" "${PW_DELETE_SHORTCUT_DESKTOP[@]}" ; do
|
||||
rm -f "${delete_shortcut//@_@/ }"
|
||||
rm -f "${delete_shortcut//#@_@#/ }"
|
||||
done
|
||||
}
|
||||
|
||||
@@ -6790,7 +6858,7 @@ See the License for details.]}" 2>/dev/null &
|
||||
Developer assistants and testers:]}
|
||||
$(credits_devel)" 2>/dev/null &
|
||||
|
||||
"${pw_yad}" --plug="${KEY_CREDITS}" --tabnum=3 --text-info --scroll <<< "$(eval_translations "MIT License
|
||||
"${pw_yad}" --plug="${KEY_CREDITS}" --tabnum=3 --text-info --scroll < <(eval_translations "MIT License
|
||||
|
||||
Copyright © \$%DATE% Castro-Fidel (linux-gaming.ru)
|
||||
|
||||
@@ -6810,7 +6878,7 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE." "DATE=$(date +%Y)")" 2>/dev/null &
|
||||
SOFTWARE." "DATE=$(date +%Y)") 2>/dev/null &
|
||||
|
||||
"${pw_yad}" --plug="${KEY_CREDITS}" --tabnum=4 \
|
||||
--text-info --show-uri --scroll \
|
||||
|
@@ -5,5 +5,5 @@
|
||||
#####################examples###########################
|
||||
export WINEDLLOVERRIDES="Crash*,REDEngineErrorReporter.exe="
|
||||
export PW_REDUCE_PULSE_LATENCY=1
|
||||
export LAUNCH_PARAMETERS=("--launcher-skip") # Additional launch options
|
||||
export LAUNCH_PARAMETERS="--launcher-skip"
|
||||
export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue
|
||||
|
@@ -7,7 +7,7 @@
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export PW_PREFIX_NAME="AGE_OF_EMPIRES_ONLINE"
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Celeste.Installer.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Age of Empires Online"
|
||||
|
||||
|
@@ -7,7 +7,7 @@
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export PW_PREFIX_NAME="ALBION_ONLINE"
|
||||
export LAUNCH_PARAMETERS=("/S")
|
||||
export LAUNCH_PARAMETERS="/S"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/albion-online-setup.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Albion Online"
|
||||
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/S")
|
||||
export LAUNCH_PARAMETERS="/S"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Ankama-Setup.exe"
|
||||
start_portwine
|
||||
if try_download "https://download.ankama.com/launcher/full/win/" "${PW_AUTOINSTALL_EXE}" no_mirror
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/az_webinst.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Anomaly Zone"
|
||||
|
||||
|
@@ -7,7 +7,7 @@
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export PW_PREFIX_NAME="ARIZONA_GAMES_LAUNCHER"
|
||||
export LAUNCH_PARAMETERS=("/S")
|
||||
export LAUNCH_PARAMETERS="/S"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Arizona Installer.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Arizona Games Launcher"
|
||||
|
||||
|
@@ -7,7 +7,7 @@
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export PW_PREFIX_NAME="BLOOD_AND_SOUL"
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/bs-install.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Blood and Soul"
|
||||
|
||||
|
@@ -7,7 +7,7 @@
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export PW_PREFIX_NAME="BROKEN_RANKS"
|
||||
export LAUNCH_PARAMETERS=("/q")
|
||||
export LAUNCH_PARAMETERS="/q"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/BrokenRanksInstaller.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Broken Ranks"
|
||||
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT /SUPPRESSMSGBOXES")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT /SUPPRESSMSGBOXES"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/bsr_setup.exe"
|
||||
start_portwine
|
||||
if try_download "https://battleofspaceraiders.com/install/bsr_setup.exe" "${PW_AUTOINSTALL_EXE}" no_mirror
|
||||
|
@@ -7,7 +7,7 @@
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export PW_PREFIX_NAME="CALIBER"
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT" "/CLOSEAPPLICATIONS")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT /CLOSEAPPLICATIONS"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/CaliberSetup.exe"
|
||||
export PW_WINE_USE="PROTON_LG"
|
||||
# export DISABLE_CP_DEFPFX="1"
|
||||
|
@@ -7,7 +7,7 @@
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export PW_PREFIX_NAME="CHICKEN_INVADERS_UNIVERSE"
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/ChickenInvadersUniverseInstaller.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Chicken Invaders Universe"
|
||||
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/CWClient_Install.exe"
|
||||
start_portwine
|
||||
if try_download "https://cdn-01.contractwarsgame.com/standalone/CWClient_Install.exe" "${PW_AUTOINSTALL_EXE}" no_mirror
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/crossout.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Crossout"
|
||||
export PW_PREFIX_NAME="CROSSOUT"
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
##########################################################################
|
||||
export LAUNCH_PARAMETERS=("/S")
|
||||
export LAUNCH_PARAMETERS="/S"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/dolphin-x64-5.0.exe"
|
||||
start_portwine
|
||||
if try_download "https://dl-mirror.dolphin-emu.org/5.0/dolphin-x64-5.0.exe" "${PW_AUTOINSTALL_EXE}" no_mirror
|
||||
|
@@ -7,7 +7,7 @@
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export PW_PREFIX_NAME="DOOMSDAY"
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/dls_installer_1.0.30_1729944485-3778620.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Doomsday"
|
||||
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/silent" "/repair" )
|
||||
export LAUNCH_PARAMETERS="/silent /repair"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/EAappInstaller.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="EALauncher"
|
||||
export PW_VULKAN_USE="2"
|
||||
|
@@ -7,7 +7,7 @@
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export PW_PREFIX_NAME="ELDEVIN"
|
||||
export LAUNCH_PARAMETERS=("/S")
|
||||
export LAUNCH_PARAMETERS="/S"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/eldevin_win64.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Eldevin"
|
||||
|
||||
|
@@ -8,7 +8,7 @@
|
||||
########################################################################
|
||||
export PW_WINE_USE="WINE_LG"
|
||||
export PW_PREFIX_NAME="ELSWORD"
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/ElswordInstaller_NA(64bit).exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Elsword"
|
||||
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/q" )
|
||||
export LAUNCH_PARAMETERS="/q"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/EpicGamesLauncherInstaller.msi"
|
||||
export PW_USE_D3D_EXTRAS=1
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Epic Games Launcher"
|
||||
|
@@ -7,7 +7,7 @@
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export PW_PREFIX_NAME="EXOTANKS"
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/ExoTanksMOBA_Setup.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="ExoTanks"
|
||||
#UE4PrereqSetup
|
||||
|
@@ -24,7 +24,6 @@ pw_shutdown_please () {
|
||||
fi
|
||||
}
|
||||
|
||||
export LAUNCH_PARAMETERS=("")
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/GameforgeInstaller.exe"
|
||||
start_portwine
|
||||
if try_download "https://raw.githubusercontent.com/WarfaceZ/lutris-clients/master/GameforgeInstaller.exe" "${PW_AUTOINSTALL_EXE}"
|
||||
|
@@ -7,7 +7,7 @@
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export PW_PREFIX_NAME="GAMEXP"
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/InstallGameXPlauncher.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="GameXP"
|
||||
|
||||
|
@@ -11,7 +11,7 @@ GOG_VER="$(curl "https://remote-config.gog.com/components/webinstaller?component
|
||||
| awk -F'.exe' '{print $1}')"
|
||||
[[ "${GOG_VER}" != 2.* ]] && yad_error "ERROR: Get the GOG version." && exit 1
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/setup_galaxy_${GOG_VER}.exe"
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT"
|
||||
export PW_PREFIX_NAME="GOG"
|
||||
export DISABLE_CP_DEFPFX="1"
|
||||
export PW_WINE_USE="WINE_LG"
|
||||
|
@@ -8,7 +8,7 @@
|
||||
########################################################################
|
||||
VERSION="3.11.00"
|
||||
export PW_PREFIX_NAME="GOOSE_GOOSE_DUCK"
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Goose Goose Duck Installer $VERSION release.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Goose Goose Duck"
|
||||
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT"
|
||||
export PW_PREFIX_NAME="GW2"
|
||||
export WINEDLLOVERRIDES="mscoree,mshtml="
|
||||
export PW_MUST_HAVE_DLL=""
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/S")
|
||||
export LAUNCH_PARAMETERS="/S"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/igclient_setup.exe"
|
||||
export PW_DLL_INSTALL="vcrun2019"
|
||||
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
##########################################################################
|
||||
export LAUNCH_PARAMETERS=("--silent")
|
||||
export LAUNCH_PARAMETERS="--silent"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/itch-setup.exe"
|
||||
|
||||
start_portwine
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Lesta_Game_Center_Install_RU.exe"
|
||||
export PW_PREFIX_NAME="LGC"
|
||||
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/s" "/nr" "/l=Russian")
|
||||
export LAUNCH_PARAMETERS="/s /nr /l=Russian"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/MWO_Launcher_Setup.exe"
|
||||
start_portwine
|
||||
if try_download "http://mwogame.com/download.php" "${PW_AUTOINSTALL_EXE}" no_mirror
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/modern_warships.exe"
|
||||
export PW_PREFIX_NAME="MODERN_WARSHIPS"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Modern Warships"
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT"
|
||||
export PW_WINDOWS_VER="7"
|
||||
export PW_PREFIX_NAME="PANZAR"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Panzar.exe"
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/S")
|
||||
export LAUNCH_PARAMETERS="/S"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/PathOfExileInstaller.exe"
|
||||
|
||||
start_portwine
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/s" )
|
||||
export LAUNCH_PARAMETERS="/s"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/plarium_play_setup.exe"
|
||||
export PW_WINDOWS_VER="10"
|
||||
export PW_PREFIX_NAME="DOTNET"
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
##########################################################################
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/PPSSPPSetup.exe"
|
||||
start_portwine
|
||||
if try_download "https://ppsspp.org/files/1_16_5/PPSSPPSetup.exe" "${PW_AUTOINSTALL_EXE}" no_mirror
|
||||
|
@@ -11,7 +11,7 @@ PR64_VER="$(curl https://www.pj64-emu.com/public-releases | grep 'installer' | h
|
||||
| awk -F'installer"' '{print $1}')"
|
||||
[[ "${PR64_VER}" != *-3-* ]] && yad_error "ERROR: Get the Project64 version." && exit 1
|
||||
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Project64${PR64_VER}setup.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Project64"
|
||||
|
||||
|
@@ -8,7 +8,7 @@
|
||||
########################################################################
|
||||
export PW_PREFIX_NAME="RISE_OF_FLIGHT"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/ROF_UE.zip"
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Rise of Flight"
|
||||
|
||||
start_portwine
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/q" )
|
||||
export LAUNCH_PARAMETERS="/q"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/RF4SetupRU.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Russian Fishing 4"
|
||||
export PW_PREFIX_NAME="RUSSIAN_FISHING"
|
||||
|
@@ -7,7 +7,7 @@
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export WINEDLLOVERRIDES="d3d9=b"
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/SecretWorldLegendsMin.exe"
|
||||
export PW_PREFIX_NAME="SECRET_WORLD_LEGENDS"
|
||||
|
||||
|
@@ -6,7 +6,6 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
# export LAUNCH_PARAMETERS=("/S" )
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/EXBO_Setup_ru.exe"
|
||||
export PW_PREFIX_NAME="DOTNET"
|
||||
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/S")
|
||||
export LAUNCH_PARAMETERS="/S"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/SO_installer.exe"
|
||||
start_portwine
|
||||
if try_download "https://update-nl-release.stalker.so/launcher/SO_installer.exe" "${PW_AUTOINSTALL_EXE}" no_mirror
|
||||
|
@@ -7,7 +7,7 @@
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export PW_PREFIX_NAME="STAR_CONFLICT"
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/starconf_installer.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Star Conflict"
|
||||
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/S" "/D=c:\Program Files (x86)\Steam")
|
||||
export LAUNCH_PARAMETERS="/S /D=c:\Program Files (x86)\Steam"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/SteamSetup.exe"
|
||||
start_portwine
|
||||
if try_download "https://cdn.cloudflare.steamstatic.com/client/installer/SteamSetup.exe" "${PW_AUTOINSTALL_EXE}" no_mirror
|
||||
|
@@ -7,7 +7,7 @@
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export PW_PREFIX_NAME="TANKI_ONLINE"
|
||||
export LAUNCH_PARAMETERS=("/S")
|
||||
export LAUNCH_PARAMETERS="/S"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/TankiOnlineSetup.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Tanki Online"
|
||||
|
||||
|
@@ -7,7 +7,7 @@
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export PW_PREFIX_NAME="THE_LORD_OF_THE_RINGS_ONLINE"
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- /LANG=en")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP- /LANG=en"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/lotrolive.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="The Lord of the Rings Online"
|
||||
|
||||
|
@@ -7,7 +7,7 @@
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export PW_PREFIX_NAME="THE_WORLD_NIFTY_CRAFT"
|
||||
export LAUNCH_PARAMETERS=("/S")
|
||||
export LAUNCH_PARAMETERS="/S"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/web_installer.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="The World of Nifty Craft"
|
||||
|
||||
|
@@ -11,7 +11,7 @@ URL_VER=$(curl https://www.toontownrewritten.com/play \
|
||||
| awk -F".exe" '{print $1}' | grep "v1" | head -n1)
|
||||
|
||||
export PW_PREFIX_NAME="TOONTOWN_REWRITTEN"
|
||||
export LAUNCH_PARAMETERS=("/S")
|
||||
export LAUNCH_PARAMETERS="/S"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/TTRInstaller-$URL_VER.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Toontown Rewritten"
|
||||
|
||||
|
@@ -11,7 +11,7 @@ URL_VER=$(curl https://www.toribash.com/downloads.php \
|
||||
| awk -F"-Setup.exe" '{print $1}' | grep "5" | head -n1)
|
||||
|
||||
export PW_PREFIX_NAME="TORIBASH"
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Toribash-${URL_VER}-Setup.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Toribash"
|
||||
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/S" "/D=c:\Program Files (x86)\Ubisoft Game Launcher")
|
||||
export LAUNCH_PARAMETERS="/S /D=c:\Program Files (x86)\Ubisoft Game Launcher"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/UbisoftConnectInstaller.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Ubisoft Connect"
|
||||
|
||||
|
@@ -6,7 +6,6 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("")
|
||||
export PW_PREFIX_NAME="VK_PLAY"
|
||||
export PW_AUTOINSTALL_EXE="${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/users/steamuser/AppData/Local/VKPlayLoader.exe"
|
||||
export WINEDLLOVERRIDES="mscoree,mshtml="
|
||||
|
@@ -7,7 +7,7 @@
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export PW_PREFIX_NAME="DOTNET"
|
||||
export LAUNCH_PARAMETERS=("/S")
|
||||
export LAUNCH_PARAMETERS="/S"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/w3dhub_launcher_install.exe"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="W3D Hub Launcher"
|
||||
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/q")
|
||||
export LAUNCH_PARAMETERS="/q"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Warframe.msi"
|
||||
export PORTWINE_CREATE_SHORTCUT_NAME="Warframe"
|
||||
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/VERYSILENT")
|
||||
export LAUNCH_PARAMETERS="/VERYSILENT"
|
||||
[[ "$LANGUAGE" == "ru" ]] && export WGC_LOC=RU || export WGC_LOC=EU
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Wargaming_Game_Center_Install_WoT_${WGC_LOC}.exe"
|
||||
export PW_PREFIX_NAME="WGC"
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/S")
|
||||
export LAUNCH_PARAMETERS="/S"
|
||||
export PW_PREFIX_NAME="WORLD_OF_SEA_BATTLE"
|
||||
export PW_VULKAN_USE="2"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/installer.exe"
|
||||
|
@@ -6,7 +6,7 @@
|
||||
# info_en:
|
||||
# info_ru:
|
||||
########################################################################
|
||||
export LAUNCH_PARAMETERS=("/S")
|
||||
export LAUNCH_PARAMETERS="/S"
|
||||
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/yabause-0.9.15-win64.exe"
|
||||
start_portwine
|
||||
if try_download "https://download.tuxfamily.org/yabause/releases/0.9.15/yabause-0.9.15-win64.exe" "${PW_AUTOINSTALL_EXE}" no_mirror
|
||||
|
@@ -40,7 +40,7 @@ source "$PORT_SCRIPTS_PATH/functions_helper"
|
||||
export PW_START_PID="$$"
|
||||
export NO_AT_BRIDGE="1"
|
||||
export GDK_BACKEND="x11"
|
||||
IFS=' ' read -r -a pw_full_command_line <<< "$0 $*"
|
||||
read -r -a pw_full_command_line <<< "$0 $*"
|
||||
export pw_full_command_line
|
||||
export orig_IFS="$IFS"
|
||||
|
||||
@@ -358,7 +358,7 @@ EOF
|
||||
else
|
||||
try_remove_file "${PORT_WINE_TMP_PATH}"/pp_pfx_unpack.sh
|
||||
if [[ -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/.create_shortcut" ]] ; then
|
||||
while IFS= read -r line
|
||||
while read -r line
|
||||
do
|
||||
export portwine_exe="$PORT_WINE_PATH/data/prefixes/$PW_PREFIX_NAME/$line"
|
||||
portwine_create_shortcut
|
||||
@@ -614,7 +614,7 @@ else
|
||||
desktop_file_new="${desktop_file//"$PORT_WINE_PATH/"/}"
|
||||
if [[ $desktop_file_new =~ .desktop$ ]] ; then
|
||||
if [[ ! $desktop_file_new =~ (PortProton|readme) ]] ; then
|
||||
while IFS= read -r line1 ; do
|
||||
while read -r line1 ; do
|
||||
if [[ $line1 =~ ^Exec= ]] ; then
|
||||
if check_flatpak ; then
|
||||
PW_NAME_D_ICON["$AMOUNT_GENERATE_BUTTONS"]=${line1//Exec=flatpak run ru.linux_gaming.PortProton /}
|
||||
@@ -633,7 +633,7 @@ else
|
||||
PW_NAME_D_ICON["$AMOUNT_GENERATE_BUTTONS"]=${PW_NAME_D_ICON["$AMOUNT_GENERATE_BUTTONS"]//Exec=env \"$PORT_SCRIPTS_PATH\/start.sh\" /}
|
||||
sed -i "s|Exec=env \"$PORT_SCRIPTS_PATH/start.sh\"|Exec=flatpak run ru.linux_gaming.PortProton|" "$desktop_file"
|
||||
fi
|
||||
while IFS=' ' read -r -a line2 ; do
|
||||
while read -r -a line2 ; do
|
||||
if [[ \"${line2[0]//#@_@#/ }\" == "${PW_NAME_D_ICON["$AMOUNT_GENERATE_BUTTONS"]}" ]] ; then
|
||||
PW_GAME_TIME["$AMOUNT_GENERATE_BUTTONS"]=${line2[2]}
|
||||
break
|
||||
@@ -643,9 +643,9 @@ else
|
||||
done < "$PORT_WINE_TMP_PATH/statistics"
|
||||
if [[ $SORT_WITH_TIME == enabled ]] && [[ ${line2[3]} == NEW_DESKTOP ]] ; then
|
||||
sed -i "s/${line2[1]} ${line2[2]} NEW_DESKTOP/${line2[1]} ${line2[2]} OLD_DESKTOP/" "$PORT_WINE_TMP_PATH/statistics"
|
||||
IFS=' ' read -r -a PW_AMOUNT_NEW_DESKTOP <<< "${PW_AMOUNT_NEW_DESKTOP[*]} $AMOUNT_GENERATE_BUTTONS"
|
||||
PW_AMOUNT_NEW_DESKTOP+=("$AMOUNT_GENERATE_BUTTONS")
|
||||
else
|
||||
IFS=' ' read -r -a PW_AMOUNT_OLD_DESKTOP <<< "${PW_AMOUNT_OLD_DESKTOP[*]} $AMOUNT_GENERATE_BUTTONS"
|
||||
PW_AMOUNT_OLD_DESKTOP+=("$AMOUNT_GENERATE_BUTTONS")
|
||||
fi
|
||||
(( AMOUNT_GENERATE_BUTTONS++ ))
|
||||
fi
|
||||
@@ -758,7 +758,7 @@ else
|
||||
# AI_TOP_GAMES используется для сортировки автоинсталлов (работает на эмуляторы тоже)
|
||||
AI_AMOUNT_GAMES="0" && AI_AMOUNT_EMULS="0" && AI_AMOUNT_ARRAY="0"
|
||||
for ai_file in "$PORT_SCRIPTS_PATH"/pw_autoinstall/* ; do
|
||||
while IFS= read -r line ; do
|
||||
while read -r line ; do
|
||||
[[ $line =~ "##########" ]] && break
|
||||
[[ $line =~ "# type: " ]] && AI_TYPE["$AI_AMOUNT_ARRAY"]="${line//# type: /}"
|
||||
[[ $line =~ "# name: " ]] && AI_NAME["$AI_AMOUNT_ARRAY"]="${line//# name: /}"
|
||||
@@ -771,14 +771,14 @@ else
|
||||
done < "$ai_file"
|
||||
AI_FILE="${ai_file//"$PORT_SCRIPTS_PATH/pw_autoinstall/"/}"
|
||||
AI_FILE_CHECK="$AI_FILE=$AI_AMOUNT_ARRAY"
|
||||
IFS=' ' read -r -a AI_FILE_ARRAY <<< "${AI_FILE_ARRAY[*]} $AI_FILE"
|
||||
AI_FILE_ARRAY+=("$AI_FILE")
|
||||
if [[ $AI_TOP_GAMES =~ ${AI_FILE_CHECK//=*/} ]] ; then
|
||||
IFS=' ' read -r -a AI_TRUE_FILE <<< "${AI_TRUE_FILE[*]} $AI_FILE_CHECK"
|
||||
AI_TRUE_FILE+=("$AI_FILE_CHECK")
|
||||
else
|
||||
if [[ ${AI_NAME["$AI_AMOUNT_ARRAY"]} =~ \(ENG\) ]] ; then
|
||||
IFS=' ' read -r -a AI_FILE_ENG <<< "${AI_FILE_ENG[*]} $AI_AMOUNT_ARRAY"
|
||||
AI_FILE_ENG+=("$AI_AMOUNT_ARRAY")
|
||||
else
|
||||
IFS=' ' read -r -a AI_FILE_UNSORTED <<< "${AI_FILE_UNSORTED[*]} $AI_AMOUNT_ARRAY"
|
||||
AI_FILE_UNSORTED+=("$AI_AMOUNT_ARRAY")
|
||||
fi
|
||||
fi
|
||||
(( AI_AMOUNT_ARRAY++ ))
|
||||
@@ -786,8 +786,9 @@ else
|
||||
|
||||
for ai_sort in $AI_TOP_GAMES ; do
|
||||
if [[ ${AI_TRUE_FILE[*]} =~ $ai_sort ]] ; then
|
||||
AI_TRUE_FILE_NEW=(${AI_TRUE_FILE[@]//$ai_sort=/})
|
||||
AI_FILE_SORTED+=(${AI_TRUE_FILE_NEW[@]//*=*/})
|
||||
AI_TRUE_FILE_NEW=("${AI_TRUE_FILE[@]//$ai_sort=/}")
|
||||
AI_TRUE_FILE_NEW=("${AI_TRUE_FILE_NEW[*]//*=*/}")
|
||||
AI_FILE_SORTED+=("${AI_TRUE_FILE_NEW[*]// /}")
|
||||
fi
|
||||
done
|
||||
|
||||
|
@@ -1,6 +1,6 @@
|
||||
#!/usr/bin/env bash
|
||||
#Author: Castro-Fidel (linux-gaming.ru)
|
||||
#SCRIPTS_NEXT_VERSION=2373
|
||||
#SCRIPTS_NEXT_VERSION=2374
|
||||
#SCRIPTS_STABLE_VERSION=2360
|
||||
########################################################################
|
||||
export AI_TOP_GAMES="PW_LGC PW_VKPLAY PW_EPIC PW_BATTLE_NET PW_WORLD_OF_SEA_BATTLE PW_RUSSIAN_FISHING PW_HO_YO_PLAY PW_FARLIGHT84 PW_WARFRAME PW_WGC PW_UBISOFT"
|
||||
|
Reference in New Issue
Block a user