Commit 026e54e9 authored by Mikhail Tergoev's avatar Mikhail Tergoev

Scripts version 2279

parent a0493321
...@@ -2,6 +2,13 @@ You can help us in the development of the project on the website: https://linux- ...@@ -2,6 +2,13 @@ You can help us in the development of the project on the website: https://linux-
---------------------------------------- ----------------------------------------
Changelog: Changelog:
###Scripts version 2279### Date: 16.04.2024 / Download update size: 15 megabytes
* improvements to the flatpak version of PortProton:
- fixed running games on SteamDeck in gaming mode
- disabled downloading of the steam runtime container (reduces the size of the installed PortProton)
- improved the function of detecting GALLIUM_NINE libraries
* ATTENTION: Do not use flatpak and the native version of PortProton on the same system!
###Scripts version 2278### Date: 15.04.2024 / Download update size: 15 megabytes ###Scripts version 2278### Date: 15.04.2024 / Download update size: 15 megabytes
* changed function for prefix update * changed function for prefix update
......
...@@ -2,6 +2,14 @@ ...@@ -2,6 +2,14 @@
----------------------------------------- -----------------------------------------
История изменений: История изменений:
###Scripts version 2279### Дата: 16.04.2024 / Размер скачиваемого обновления: 15 мегабайт
* улучшения flatpak версии PortProton:
- исправлен запуск игр на SteamDeck в игровом режиме
- исправлены локализации внутри игр на SteamDeck в игровом режиме (требуется выбор руского интерфейса PortProton)
- отключено скачивание контейнера steam runtime (уменьшает размер установленого PortProton)
- улучшена функция определения библиотек GALLIUM_NINE
* ВНИМАНИЕ: Не используйте flatpak и нативную версии PortProton на одной системе!
###Scripts version 2278### Дата: 15.04.2024 / Размер скачиваемого обновления: 15 мегабайт ###Scripts version 2278### Дата: 15.04.2024 / Размер скачиваемого обновления: 15 мегабайт
* улучшена функция обновления префикса (исправлена ошибка shell32.dll) * улучшена функция обновления префикса (исправлена ошибка shell32.dll)
......
#!/usr/bin/env bash #!/usr/bin/env bash
# Author: Castro-Fidel (linux-gaming.ru) # Author: Castro-Fidel (linux-gaming.ru)
######################################################################## ########################################################################
pw_ping_test () { ping_test () {
ping -w3 -c1 github.com &> /dev/null ping -w3 -c1 $@ &> /dev/null
[ "$?" == "0" ] && return 0 || return 1 [ "$?" == "0" ] && return 0 || return 1
} }
...@@ -87,10 +87,10 @@ try_force_link_file () { ...@@ -87,10 +87,10 @@ try_force_link_file () {
export -f try_force_link_file export -f try_force_link_file
check_symlink () { check_symlink () {
CHK_SYMLINK_FILE="`file "$1"`" CHK_SYMLINK_FILE="$(file "$1")"
if [[ ! -z "`echo "$CHK_SYMLINK_FILE" | grep -v "broken" | grep "symbolic link to" | awk '{print $1}'`" ]] ; then if [[ ! -z "$(echo "$CHK_SYMLINK_FILE" | grep -v "broken" | grep "symbolic link to" | awk '{print $1}')" ]] ; then
return 0 return 0
elif [[ ! -z "`echo "$CHK_SYMLINK_FILE" | grep "broken symbolic link to" | awk '{print $1}'`" ]] ; then elif [[ ! -z "$(echo "$CHK_SYMLINK_FILE" | grep "broken symbolic link to" | awk '{print $1}')" ]] ; then
print_error "remove broken symlink: $CHK_SYMLINK_FILE" print_error "remove broken symlink: $CHK_SYMLINK_FILE"
rm -fr "$CHK_SYMLINK_FILE" rm -fr "$CHK_SYMLINK_FILE"
return 1 return 1
...@@ -112,7 +112,7 @@ try_force_link_dir () { ...@@ -112,7 +112,7 @@ try_force_link_dir () {
export -f try_force_link_dir export -f try_force_link_dir
check_process () { check_process () {
[ ! -n "`ps cax | grep "$1" | awk '{print $1}'`" ] && return 0 || return 1 [ ! -n "$(ps cax | grep "$1" | awk '{print $1}')" ] && return 0 || return 1
} }
export -f check_process export -f check_process
...@@ -203,7 +203,7 @@ var_radv_perftest_config_update () { ...@@ -203,7 +203,7 @@ var_radv_perftest_config_update () {
return 0 return 0
} }
var_vk_istance_layers_config_update () { var_pw_vk_istance_layers_config_update () {
if [ ! -z "$PW_VK_INSTANCE_LAYERS" ] if [ ! -z "$PW_VK_INSTANCE_LAYERS" ]
then export PW_VK_INSTANCE_LAYERS="$1:$PW_VK_INSTANCE_LAYERS" then export PW_VK_INSTANCE_LAYERS="$1:$PW_VK_INSTANCE_LAYERS"
else export PW_VK_INSTANCE_LAYERS="$1" else export PW_VK_INSTANCE_LAYERS="$1"
...@@ -212,7 +212,9 @@ var_vk_istance_layers_config_update () { ...@@ -212,7 +212,9 @@ var_vk_istance_layers_config_update () {
} }
var_ld_library_path_update () { var_ld_library_path_update () {
if [ ! -z "$LD_LIBRARY_PATH" ] if echo "$LD_LIBRARY_PATH" | grep "$1"
then return 0
elif [[ ! -z "$LD_LIBRARY_PATH" ]]
then export LD_LIBRARY_PATH="$1:$LD_LIBRARY_PATH" then export LD_LIBRARY_PATH="$1:$LD_LIBRARY_PATH"
else export LD_LIBRARY_PATH="$1" else export LD_LIBRARY_PATH="$1"
fi fi
...@@ -394,19 +396,11 @@ init_wine_ver () { ...@@ -394,19 +396,11 @@ init_wine_ver () {
if [[ "${PW_WINE_USE}" == "USE_SYSTEM_WINE" ]] \ if [[ "${PW_WINE_USE}" == "USE_SYSTEM_WINE" ]] \
&& command -v wine &>/dev/null ; then && command -v wine &>/dev/null ; then
if ! check_flatpak ; then export WINEDIR="$RT_PREFIX/usr"
export WINEDIR="$RT_PREFIX/usr" export WINE="$RT_PREFIX$(command -v wine)"
export WINE="$RT_PREFIX$(command -v wine)" export WINELOADER="$WINE"
export WINELOADER="$WINE" export WINESERVER="$RT_PREFIX$(command -v wineserver)"
export WINESERVER="$RT_PREFIX$(command -v wineserver)" export PW_NO_FSYNC=1
export PW_NO_FSYNC=1
else
export WINEDIR="$RT_PREFIX/app"
export WINE="$RT_PREFIX/app/bin/wine"
export WINELOADER="$WINE"
export WINESERVER="$RT_PREFIX/app/bin/wineserver"
export PW_NO_FSYNC=1
fi
unset WINEDLLPATH unset WINEDLLPATH
else else
if [[ -d "${PORT_WINE_PATH}/data/dist" ]] ; then if [[ -d "${PORT_WINE_PATH}/data/dist" ]] ; then
...@@ -500,9 +494,12 @@ init_wine_ver () { ...@@ -500,9 +494,12 @@ init_wine_ver () {
fi fi
fi fi
export WINE_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib"
if [[ "${PW_USE_GSTREAMER}" == 1 ]] ; then if [[ "${PW_USE_GSTREAMER}" == "1" ]] ; then
if [[ -d "${WINEDIR}/lib64/gstreamer-1.0" ]] ; then if [[ -d "${WINEDIR}/lib64/gstreamer-1.0" ]] \
&& ! check_flatpak
then
export GST_PLUGIN_SYSTEM_PATH_1_0="${WINEDIR}/lib64/gstreamer-1.0:${WINEDIR}/lib/gstreamer-1.0" export GST_PLUGIN_SYSTEM_PATH_1_0="${WINEDIR}/lib64/gstreamer-1.0:${WINEDIR}/lib/gstreamer-1.0"
fi fi
create_new_dir "${PORT_WINE_TMP_PATH}"/gstreamer_tmp/ create_new_dir "${PORT_WINE_TMP_PATH}"/gstreamer_tmp/
...@@ -512,17 +509,33 @@ init_wine_ver () { ...@@ -512,17 +509,33 @@ init_wine_ver () {
export MEDIACONV_VIDEO_DUMP_FILE="${PORT_WINE_TMP_PATH}"/gstreamer_tmp/video.foz export MEDIACONV_VIDEO_DUMP_FILE="${PORT_WINE_TMP_PATH}"/gstreamer_tmp/video.foz
export MEDIACONV_VIDEO_TRANSCODED_FILE="${PORT_WINE_TMP_PATH}"/gstreamer_tmp/transcoded_video.foz export MEDIACONV_VIDEO_TRANSCODED_FILE="${PORT_WINE_TMP_PATH}"/gstreamer_tmp/transcoded_video.foz
else else
# var_winedlloverride_update "winegstreamer=" var_winedlloverride_update "winegstreamer="
echo
fi fi
return 0 return 0
} }
pw_init_runtime () { pw_init_runtime () {
if [[ "$PW_USE_RUNTIME" != 1 ]] \ if [ ! -z ${PATH_TMP} ]
then export PATH="${PATH_TMP}"
else export PATH_TMP="${PATH}"
fi
if [ ! -z "${PATH}" ]
then export PATH="${PATH}:${PW_PLUGINS_PATH}/portable/bin"
else export PATH="${PW_PLUGINS_PATH}/portable/bin"
fi
if check_flatpak ; then
[[ "${update_loc}" == "RUS" ]] && export LC_ALL=ru_RU.UTF-8
export PW_USE_RUNTIME="0"
fi
if [[ "$PW_USE_RUNTIME" != "1" ]] \
|| [[ "$PW_WINE_USE" == "USE_SYSTEM_WINE" ]] || [[ "$PW_WINE_USE" == "USE_SYSTEM_WINE" ]]
then then
var_ld_library_path_update "${PW_PLUGINS_PATH}/portable/lib/lib64:${PW_PLUGINS_PATH}/portable/lib/lib32"
export PW_LD_LIBRARY_PATH="${LD_LIBRARY_PATH}"
export PW_VK_LAYER_PATH="${PW_PLUGINS_PATH}/portable/share/vulkan/implicit_layer.d"
export pw_runtime="" export pw_runtime=""
return 0 return 0
fi fi
...@@ -536,7 +549,6 @@ pw_init_runtime () { ...@@ -536,7 +549,6 @@ pw_init_runtime () {
PW_PV_OVERRIDES="/usr/lib/pressure-vessel/overrides/lib" PW_PV_OVERRIDES="/usr/lib/pressure-vessel/overrides/lib"
export PW_LD_LIBRARY_PATH="\ export PW_LD_LIBRARY_PATH="\
${WINEDIR}/lib64:${WINEDIR}/lib:\
${PW_PLUGINS_PATH}/portable/lib/lib64:\ ${PW_PLUGINS_PATH}/portable/lib/lib64:\
${PW_PLUGINS_PATH}/portable/lib/lib32:\ ${PW_PLUGINS_PATH}/portable/lib/lib32:\
${PW_PV_OVERRIDES}/x86_64-linux-gnu/aliases:\ ${PW_PV_OVERRIDES}/x86_64-linux-gnu/aliases:\
...@@ -544,15 +556,6 @@ ${PW_PV_OVERRIDES}/i386-linux-gnu/aliases:\ ...@@ -544,15 +556,6 @@ ${PW_PV_OVERRIDES}/i386-linux-gnu/aliases:\
/overrides/lib/x86_64-linux-gnu:\ /overrides/lib/x86_64-linux-gnu:\
/overrides/lib/i386-linux-gnu" /overrides/lib/i386-linux-gnu"
if [ ! -z ${PATH_TMP} ]
then export PATH="${PATH_TMP}"
else export PATH_TMP="${PATH}"
fi
if [ ! -z "${PATH}" ]
then export PATH="${WINEDIR}/bin:${PATH}:${PW_PLUGINS_PATH}/portable/bin"
else export PATH="${WINEDIR}/bin:${PW_PLUGINS_PATH}/portable/bin"
fi
if [[ ! -z "${PW_SANDBOX_HOME_PATH}" && -d "${PW_SANDBOX_HOME_PATH}" ]] ; then if [[ ! -z "${PW_SANDBOX_HOME_PATH}" && -d "${PW_SANDBOX_HOME_PATH}" ]] ; then
export pw_runtime="${PW_WINELIB}/pressure-vessel/bin/pressure-vessel-unruntime \ export pw_runtime="${PW_WINELIB}/pressure-vessel/bin/pressure-vessel-unruntime \
--unshare-home \ --unshare-home \
...@@ -617,7 +620,7 @@ pw_mangohud_check () { ...@@ -617,7 +620,7 @@ pw_mangohud_check () {
then export PW_LD_PRELOAD="${PW_LD_PRELOAD}:${MANGOHUD_LIB_NAME}" then export PW_LD_PRELOAD="${PW_LD_PRELOAD}:${MANGOHUD_LIB_NAME}"
else export PW_LD_PRELOAD="${MANGOHUD_LIB_NAME}" else export PW_LD_PRELOAD="${MANGOHUD_LIB_NAME}"
fi fi
var_vk_istance_layers_config_update "VK_LAYER_MANGOHUD_overlay64:VK_LAYER_MANGOHUD_overlay32" var_pw_vk_istance_layers_config_update "VK_LAYER_MANGOHUD_overlay64:VK_LAYER_MANGOHUD_overlay32"
print_info "Portable MANGOHUD is enabled" print_info "Portable MANGOHUD is enabled"
else else
export PW_MANGOHUD_SLR="" export PW_MANGOHUD_SLR=""
...@@ -636,7 +639,7 @@ pw_vkbasalt_check () { ...@@ -636,7 +639,7 @@ pw_vkbasalt_check () {
sed -ri "s/effects = .*/effects = ${PW_VKBASALT_EFFECTS}/g" "${VKBASALT_CONFIG_FILE}" sed -ri "s/effects = .*/effects = ${PW_VKBASALT_EFFECTS}/g" "${VKBASALT_CONFIG_FILE}"
sed -ri "s/casSharpness .*/casSharpness = ${PW_VKBASALT_FFX_CAS}/g" "${VKBASALT_CONFIG_FILE}" sed -ri "s/casSharpness .*/casSharpness = ${PW_VKBASALT_FFX_CAS}/g" "${VKBASALT_CONFIG_FILE}"
fi fi
var_vk_istance_layers_config_update "VK_LAYER_VKBASALT_post_processing64:VK_LAYER_VKBASALT_post_processing32" var_pw_vk_istance_layers_config_update "VK_LAYER_VKBASALT_post_processing64:VK_LAYER_VKBASALT_post_processing32"
print_info "vkBasalt is enabled" print_info "vkBasalt is enabled"
else else
export DISABLE_VKBASALT=1 export DISABLE_VKBASALT=1
...@@ -646,9 +649,9 @@ pw_vkbasalt_check () { ...@@ -646,9 +649,9 @@ pw_vkbasalt_check () {
} }
regdlloverrides () { regdlloverrides () {
PW_DLL_EXE=`echo $@ | awk -F: '{print $1}'` PW_DLL_EXE=$(echo $@ | awk -F: '{print $1}')
PW_DLL_LIB=`echo $@ | awk -F: '{print $2}' | awk -F= '{print $1}'` PW_DLL_LIB=$(echo $@ | awk -F: '{print $2}' | awk -F= '{print $1}')
PW_DLL_SET=`echo $@ | awk -F= '{print $NF}'` PW_DLL_SET=$(echo $@ | awk -F= '{print $NF}')
case "${PW_DLL_SET}" in case "${PW_DLL_SET}" in
"n,b") PW_DLL_IN_REG="native,builtin" ;; "n,b") PW_DLL_IN_REG="native,builtin" ;;
"b,n") PW_DLL_IN_REG="builtin,native" ;; "b,n") PW_DLL_IN_REG="builtin,native" ;;
...@@ -668,7 +671,7 @@ regdlloverrides () { ...@@ -668,7 +671,7 @@ regdlloverrides () {
} }
wait_wineserver () { wait_wineserver () {
while [ ! -z "$(ls -l /proc/*/exe 2>/dev/null | grep -ie ${portname} | grep -E 'wine(64)?-preloader|wineserver' | awk -F/ '{print $3}')" ] ; do while [ ! -z "$(ls -l /proc/*/exe 2>/dev/null | grep -ie PortProton | grep -E 'wine(64)?-preloader|wineserver' | awk -F/ '{print $3}')" ] ; do
sleep 1 sleep 1
done done
"$WINESERVER" -w "$WINESERVER" -w
...@@ -678,21 +681,21 @@ export -f wait_wineserver ...@@ -678,21 +681,21 @@ export -f wait_wineserver
kill_portwine () { kill_portwine () {
if [[ "${PW_WINE_USE}" != "USE_SYSTEM_WINE" ]] ; then if [[ "${PW_WINE_USE}" != "USE_SYSTEM_WINE" ]] ; then
wine_pids="`ls -l /proc/*/exe 2>/dev/null | grep -ie ${portname} | grep -E 'wine(64)?-preloader|wineserver' | awk -F/ '{print $3}'`" wine_pids="$(ls -l /proc/*/exe 2>/dev/null | grep -ie PortProton | grep -E 'wine(64)?-preloader|wineserver' | awk -F/ '{print $3}')"
for pw_kill_pids in ${wine_pids} ; do for pw_kill_pids in ${wine_pids} ; do
if ps cax | grep ${pw_kill_pids} ; then if ps cax | grep ${pw_kill_pids} ; then
kill -n 9 ${pw_kill_pids} &>/dev/null kill -n 9 ${pw_kill_pids} &>/dev/null
fi fi
done done
bwrap_pids="`pgrep -a wrap | grep ${portname} | head -n 1 | awk '{print $1}'`" bwrap_pids="$(pgrep -a wrap | grep PortProton | head -n 1 | awk '{print $1}')"
for pw_kill_pids in ${bwrap_pids} ; do for pw_kill_pids in ${bwrap_pids} ; do
if ps cax | grep ${pw_kill_pids} ; then if ps cax | grep ${pw_kill_pids} ; then
kill -n 9 ${pw_kill_pids} &>/dev/null kill -n 9 ${pw_kill_pids} &>/dev/null
fi fi
done done
else else
wine_pids="`ls -l /proc/*/exe 2>/dev/null | grep -E 'wine(64)?-preloader|wineserver' | awk -F/ '{print $3}'`" wine_pids="$(ls -l /proc/*/exe 2>/dev/null | grep -E 'wine(64)?-preloader|wineserver' | awk -F/ '{print $3}')"
for pw_kill_pids in ${wine_pids} ; do for pw_kill_pids in ${wine_pids} ; do
if ps cax | grep ${pw_kill_pids} ; then if ps cax | grep ${pw_kill_pids} ; then
kill -n 9 ${pw_kill_pids} &>/dev/null kill -n 9 ${pw_kill_pids} &>/dev/null
...@@ -710,22 +713,22 @@ pw_kill_autostart () { ...@@ -710,22 +713,22 @@ pw_kill_autostart () {
fi fi
sleep 5 sleep 5
while true ; do while true ; do
if [[ -z "`ps aux | grep -m 1 -i "$1" | grep -v grep | awk '{print $2}'`" ]] \ if [[ -z "$(ps aux | grep -m 1 -i "$1" | grep -v grep | awk '{print $2}')" ]] \
&& [[ ! -z "`ps aux | grep wrap | grep -v grep | grep -i ${portname} | head -n 1`" ]] && [[ ! -z "$(ps aux | grep wrap | grep -v grep | grep -i "PortProton" | head -n 1)" ]]
then then
echo -e "PID "$1" not found" echo -e "PID "$1" not found"
sleep "${SWAIT}" sleep "${SWAIT}"
else else
sleep "${SWAIT}" sleep "${SWAIT}"
if [[ "$3" == please ]] if [[ "$3" == please ]]
then kill -s SIGTERM `ps aux | grep -m 1 -i "$1" | grep -v grep | awk '{print $2}'` then kill -s SIGTERM $(ps aux | grep -m 1 -i "$1" | grep -v grep | awk '{print $2}')
else kill_portwine else kill_portwine
fi fi
break break
fi fi
done done
if [[ ! -z "`ls "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/drive_c/ | grep -m 1 ".tmp"`" ]] ; then if [[ ! -z "$(ls "${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 rm -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/drive_c/*.tmp
fi fi
...@@ -772,10 +775,10 @@ stop_portwine () { ...@@ -772,10 +775,10 @@ stop_portwine () {
try_remove_dir "${PW_WINELIB}/var" try_remove_dir "${PW_WINELIB}/var"
find "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/" -maxdepth 1 -type f -name "*.tmp" -delete find "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/" -maxdepth 1 -type f -name "*.tmp" -delete
if [[ ! -z "$(pgrep -a yad_v13_0 | grep "\--notification" | awk '{print $1}')" ]] ; then if [[ ! -z "$(pgrep -a yad_v13_0 | grep "\--notification" | awk '{print $1}')" ]] ; then
kill -s SIGUSR1 "`pgrep -a yad_v13_0 | grep "\--notification" | awk '{print $1}'`" 2>/dev/null kill -s SIGUSR1 "$(pgrep -a yad_v13_0 | grep "\--notification" | awk '{print $1}')" 2>/dev/null
fi fi
add_in_stop_portwine #&>/dev/null add_in_stop_portwine #&>/dev/null
kill -n 9 `pgrep -a start.sh | grep -i '/PortProton/' | awk '{print $1}'` > /dev/null 2>&1 kill -n 9 $(pgrep -a start.sh | grep -i '/PortProton/' | awk '{print $1}') &>/dev/null
killall yad_v13_0 &>/dev/null killall yad_v13_0 &>/dev/null
exit 0 exit 0
} }
...@@ -790,8 +793,8 @@ pw_download_libs () { ...@@ -790,8 +793,8 @@ pw_download_libs () {
"${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}.tar.xz" ; then "${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}.tar.xz" ; then
if unpack_tar_xz "${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}.tar.xz" "${PORT_WINE_TMP_PATH}/" ; then if unpack_tar_xz "${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" try_remove_file "${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}.tar.xz"
if [ ! -z "`ls ${PORT_WINE_TMP_PATH} | grep libs_v | grep -v libs${PW_LIBS_VER}`" ] ; then if [ ! -z "$(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}` for RM_LIBS in $(ls ${PORT_WINE_TMP_PATH} | grep libs_v | grep -v libs${PW_LIBS_VER})
do try_remove_dir "${PORT_WINE_TMP_PATH}/${RM_LIBS}" do try_remove_dir "${PORT_WINE_TMP_PATH}/${RM_LIBS}"
done done
fi fi
...@@ -942,8 +945,8 @@ pw_check_and_download_plugins () { ...@@ -942,8 +945,8 @@ pw_check_and_download_plugins () {
try_remove_file "${PORT_WINE_TMP_PATH}/plugins${PW_PLUGINS_VER}.tar.xz" try_remove_file "${PORT_WINE_TMP_PATH}/plugins${PW_PLUGINS_VER}.tar.xz"
# TODO: drop clear prefix, and add update prefix from new plugins # TODO: drop clear prefix, and add update prefix from new plugins
pw_clear_pfx pw_clear_pfx
if [ ! -z "`ls ${PORT_WINE_TMP_PATH} | grep plugins_v | grep -v plugins${PW_PLUGINS_VER}`" ] ; then if [ ! -z "$(ls ${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 $(ls ${PORT_WINE_TMP_PATH} | grep plugins_v | grep -v plugins${PW_PLUGINS_VER})
do try_remove_dir "${PORT_WINE_TMP_PATH}/${RM_PLUGINS}" do try_remove_dir "${PORT_WINE_TMP_PATH}/${RM_PLUGINS}"
done done
fi fi
...@@ -974,8 +977,8 @@ pw_check_and_download_plugins () { ...@@ -974,8 +977,8 @@ pw_check_and_download_plugins () {
try_remove_file "${PORT_WINE_TMP_PATH}/plugins${PW_PLUGINS_VER}.tar.xz" try_remove_file "${PORT_WINE_TMP_PATH}/plugins${PW_PLUGINS_VER}.tar.xz"
# TODO: drop clear prefix, and add update prefix from new plugins # TODO: drop clear prefix, and add update prefix from new plugins
pw_clear_pfx pw_clear_pfx
if [ ! -z "`ls ${PORT_WINE_TMP_PATH} | grep plugins_v | grep -v plugins${PW_PLUGINS_VER}`" ] ; then if [ ! -z "$(ls ${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 $(ls ${PORT_WINE_TMP_PATH} | grep plugins_v | grep -v plugins${PW_PLUGINS_VER})
do try_remove_dir "${PORT_WINE_TMP_PATH}/${RM_PLUGINS}" do try_remove_dir "${PORT_WINE_TMP_PATH}/${RM_PLUGINS}"
done done
fi fi
...@@ -1076,40 +1079,40 @@ pw_init_db () { ...@@ -1076,40 +1079,40 @@ pw_init_db () {
if [[ -f "${portwine_exe}".ppdb ]] && [[ "${PORTWINE_DB}" != "RiotClientServices" ]] ; then if [[ -f "${portwine_exe}".ppdb ]] && [[ "${PORTWINE_DB}" != "RiotClientServices" ]] ; then
export PORTWINE_DB_FILE="${portwine_exe}".ppdb export PORTWINE_DB_FILE="${portwine_exe}".ppdb
. "${PORTWINE_DB_FILE}" . "${PORTWINE_DB_FILE}"
if [[ -z "`ls -p "${PORT_WINE_PATH}/prefixes/" | grep -e "^${PW_PREFIX_NAME}/"`" ]] ; then if [[ -z "$(ls -p "${PORT_WINE_PATH}/prefixes/" | grep -e "^${PW_PREFIX_NAME}/")" ]] ; then
export PW_PREFIX_NAME=`echo "${portwine_exe}" | awk -F"/prefixes/" '{print $2}' | awk -F"/" '{print $1}'` export PW_PREFIX_NAME=$(echo "${portwine_exe}" | awk -F"/prefixes/" '{print $2}' | awk -F"/" '{print $1}')
edit_db_from_gui PW_PREFIX_NAME edit_db_from_gui PW_PREFIX_NAME
fi fi
else else
orig_IFS="$IFS" orig_IFS="$IFS"
IFS=$'\n' IFS=$'\n'
PW_FIND_DB_FILE=`grep -ilw "#${PORTWINE_DB}.exe" "${PORT_SCRIPTS_PATH}/portwine_db"/* | sed s/".exe"/""/gi` PW_FIND_DB_FILE=$(grep -ilw "#${PORTWINE_DB}.exe" "${PORT_SCRIPTS_PATH}/portwine_db"/* | sed s/".exe"/""/gi)
if [[ `echo "$PW_FIND_DB_FILE" | wc -l` -gt 1 ]] ; then if [[ $(echo "$PW_FIND_DB_FILE" | wc -l) -gt 1 ]] ; then
unset ADD_CB_DBFILE unset ADD_CB_DBFILE
for PW_CHECK_DB_FILE in $PW_FIND_DB_FILE ; do for PW_CHECK_DB_FILE in $PW_FIND_DB_FILE ; do
if [[ -z "${ADD_CB_DBFILE}" ]] ; then if [[ -z "${ADD_CB_DBFILE}" ]] ; then
export ADD_CB_DBFILE="`echo ${PW_CHECK_DB_FILE} | awk -F'/' '{print $NF}'`" export ADD_CB_DBFILE="$(echo ${PW_CHECK_DB_FILE} | awk -F'/' '{print $NF}')"
else else
export ADD_CB_DBFILE="`echo ${PW_CHECK_DB_FILE} | awk -F'/' '{print $NF}'`!${ADD_CB_DBFILE}" export ADD_CB_DBFILE="$(echo ${PW_CHECK_DB_FILE} | awk -F'/' '{print $NF}')!${ADD_CB_DBFILE}"
fi fi
done done
PORTWINE_DB_FILE="${PORT_SCRIPTS_PATH}/portwine_db"/`"${pw_yad_v13_0}" --text-align=center \ PORTWINE_DB_FILE="${PORT_SCRIPTS_PATH}/portwine_db"/$("${pw_yad_v13_0}" --text-align=center \
--text "${PW_SELECTION_DB_LOC}" --borders="${YAD_BORDERS}" --form \ --text "${PW_SELECTION_DB_LOC}" --borders="${YAD_BORDERS}" --form \
--title "Database file selection..." --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --form --separator="" \ --title "Database file selection..." --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --form --separator="" \
--field="DB FILE: :CB" "${ADD_CB_DBFILE}" 2>/dev/null` --field="DB FILE: :CB" "${ADD_CB_DBFILE}" 2>/dev/null)
if [[ "$?" == "1" || "$?" == "252" ]] ; then exit 0 ; fi if [[ "$?" == "1" || "$?" == "252" ]] ; then exit 0 ; fi
elif [[ `echo "$PW_FIND_DB_FILE" | wc -l` -eq 1 ]] ; then elif [[ $(echo "$PW_FIND_DB_FILE" | wc -l) -eq 1 ]] ; then
PORTWINE_DB_FILE="${PW_FIND_DB_FILE}" PORTWINE_DB_FILE="${PW_FIND_DB_FILE}"
fi fi
IFS="$orig_IFS" IFS="$orig_IFS"
if [[ -f "${PW_FIND_DB_FILE}" ]] && [[ -z `grep "^export PW_DISABLED_CREATE_DB=1" "${PW_FIND_DB_FILE}"` ]] ; then if [[ -f "${PW_FIND_DB_FILE}" ]] && [[ -z $(grep "^export PW_DISABLED_CREATE_DB=1" "${PW_FIND_DB_FILE}") ]] ; then
try_copy_file "${PW_FIND_DB_FILE}" "${portwine_exe}".ppdb try_copy_file "${PW_FIND_DB_FILE}" "${portwine_exe}".ppdb
export PORTWINE_DB_FILE="${portwine_exe}".ppdb export PORTWINE_DB_FILE="${portwine_exe}".ppdb
fi fi
if [[ ! -z `echo "${portwine_exe}" | grep "/data/prefixes/"` ]] && \ if [[ ! -z $(echo "${portwine_exe}" | grep "/data/prefixes/") ]] && \
[[ -z `echo "${portwine_exe}" | grep "/data/prefixes/DEFAULT/"` ]] [[ -z $(echo "${portwine_exe}" | grep "/data/prefixes/DEFAULT/") ]]
then then
export PW_PREFIX_NAME=`echo "${portwine_exe}" | awk -F"/prefixes/" '{print $2}' | awk -F"/" '{print $1}'` export PW_PREFIX_NAME=$(echo "${portwine_exe}" | awk -F"/prefixes/" '{print $2}' | awk -F"/" '{print $1}')
fi fi
fi fi
if [[ -f "${PORTWINE_DB_FILE}" ]] ; then if [[ -f "${PORTWINE_DB_FILE}" ]] ; then
...@@ -1138,7 +1141,7 @@ pw_init_db () { ...@@ -1138,7 +1141,7 @@ pw_init_db () {
check_variables PW_USE_RAY_TRACING "1" check_variables PW_USE_RAY_TRACING "1"
fi fi
if grep "RUS" "${PORT_WINE_TMP_PATH}/${portname}_loc" &>/dev/null ; then if grep "RUS" "${PORT_WINE_TMP_PATH}/PortProton_loc" &>/dev/null ; then
for chk_lang_and_uname in "steam_emu.ini" "steam_api.ini" "steam_api64.ini" ; do for chk_lang_and_uname in "steam_emu.ini" "steam_api.ini" "steam_api64.ini" ; do
if [[ -f "${PATH_TO_GAME}/${chk_lang_and_uname}" ]] ; then if [[ -f "${PATH_TO_GAME}/${chk_lang_and_uname}" ]] ; then
sed -i "s/Language=english/Language=russian/" "${PATH_TO_GAME}/${chk_lang_and_uname}" sed -i "s/Language=english/Language=russian/" "${PATH_TO_GAME}/${chk_lang_and_uname}"
...@@ -1179,7 +1182,7 @@ pw_port_update () { ...@@ -1179,7 +1182,7 @@ pw_port_update () {
[[ ! -f "${PORT_WINE_TMP_PATH}/scripts_update_notifier" ]] && echo "1" > "${PORT_WINE_TMP_PATH}/scripts_update_notifier" [[ ! -f "${PORT_WINE_TMP_PATH}/scripts_update_notifier" ]] && echo "1" > "${PORT_WINE_TMP_PATH}/scripts_update_notifier"
read "scripts_update_not" < "${PORT_WINE_TMP_PATH}/scripts_update_notifier" read "scripts_update_not" < "${PORT_WINE_TMP_PATH}/scripts_update_notifier"
if [[ "${scripts_update_not}" == "1" ]] ; then if [[ "${scripts_update_not}" == "1" ]] ; then
export scripts_current_ver=`cat "${PORT_WINE_TMP_PATH}/curent_var_ver" | grep SCRIPTS_NEXT_VERSION | awk -F "=" '{print $2}'` export scripts_current_ver=$(cat "${PORT_WINE_TMP_PATH}/curent_var_ver" | grep SCRIPTS_NEXT_VERSION | awk -F "=" '{print $2}')
print_info "Scripts version in github = ${scripts_current_ver}" print_info "Scripts version in github = ${scripts_current_ver}"
print_info "Scripts version local = ${scripts_install_ver}" print_info "Scripts version local = ${scripts_install_ver}"
if [[ ! -z "${scripts_current_ver}" ]] && [[ "${scripts_current_ver}" -gt "${scripts_install_ver}" ]] ; then if [[ ! -z "${scripts_current_ver}" ]] && [[ "${scripts_current_ver}" -gt "${scripts_install_ver}" ]] ; then
...@@ -1193,11 +1196,11 @@ pw_port_update () { ...@@ -1193,11 +1196,11 @@ pw_port_update () {
xcsd="${scripts_upd4}" xcsd="${scripts_upd4}"
else else
curl -s --list-only "${URL_FOR_CHANGELOG}/${PW_CHANGELOG_FILE}" | tee "${PORT_WINE_TMP_PATH}/curent_var_ver" curl -s --list-only "${URL_FOR_CHANGELOG}/${PW_CHANGELOG_FILE}" | tee "${PORT_WINE_TMP_PATH}/curent_var_ver"
CHANGLOG_NEWS=`cat "${PORT_WINE_TMP_PATH}/curent_var_ver" | sed "/Scripts version ${scripts_install_ver}/,$ d" | sed '1,/---/ d' ` CHANGLOG_NEWS=$(cat "${PORT_WINE_TMP_PATH}/curent_var_ver" | sed "/Scripts version ${scripts_install_ver}/,$ d" | sed '1,/---/ d' )
xcsd=`"${pw_yad_v13_0}" --title "${scripts_upd2} v.${scripts_current_ver}" --window-icon="$PW_GUI_ICON_PATH/portproton.svg" \ xcsd=$("${pw_yad_v13_0}" --title "${scripts_upd2} v.${scripts_current_ver}" --window-icon="$PW_GUI_ICON_PATH/portproton.svg" \
--form --separator='%%%' --width=1200 --height=600 \ --form --separator='%%%' --width=1200 --height=600 \
--field=":TXT" "${CHANGLOG_NEWS}" \ --field=":TXT" "${CHANGLOG_NEWS}" \
--field=" ${scripts_upd3} :CB" "${scripts_upd4}!${scripts_upd5}!${scripts_upd6}" 2>/dev/null` --field=" ${scripts_upd3} :CB" "${scripts_upd4}!${scripts_upd5}!${scripts_upd6}" 2>/dev/null)
YAD_STATUS="$?" YAD_STATUS="$?"
if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then exit 0 ; fi if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then exit 0 ; fi
xcsd=`echo "${xcsd}" | awk -F'%%%' '{print $2}'` xcsd=`echo "${xcsd}" | awk -F'%%%' '{print $2}'`
...@@ -1339,14 +1342,14 @@ pw_create_gui_png () { ...@@ -1339,14 +1342,14 @@ pw_create_gui_png () {
fi fi
cp -f "${PORT_WINE_TMP_PATH}/tmp_img/${PORTPROTON_NAME}.png" "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" cp -f "${PORT_WINE_TMP_PATH}/tmp_img/${PORTPROTON_NAME}.png" "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png"
fi fi
if [[ -z "`file "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" | grep "${PW_RESIZE_TO} x ${PW_RESIZE_TO}"`" ]] \ if [[ -z "$(file "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" | grep "${PW_RESIZE_TO} x ${PW_RESIZE_TO}")" ]] \
&& command -v convert &>/dev/null \ && command -v convert &>/dev/null \
&& [[ -f "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" ]] && [[ -f "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" ]]
then then
convert "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" -resize ${PW_RESIZE_TO}x${PW_RESIZE_TO} "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" convert "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" -resize ${PW_RESIZE_TO}x${PW_RESIZE_TO} "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png"
fi fi
if [[ -z "${PW_ICON_FOR_YAD}" ]] ; then if [[ -z "${PW_ICON_FOR_YAD}" ]] ; then
if [[ ! -z "`file "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" | grep "${PW_RESIZE_TO} x ${PW_RESIZE_TO}"`" ]] ; then if [[ ! -z "$(file "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" | grep "${PW_RESIZE_TO} x ${PW_RESIZE_TO}")" ]] ; then
export PW_ICON_FOR_YAD="${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" export PW_ICON_FOR_YAD="${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png"
else else
export PW_ICON_FOR_YAD="${PW_GUI_ICON_PATH}/port_proton.png" export PW_ICON_FOR_YAD="${PW_GUI_ICON_PATH}/port_proton.png"
...@@ -1477,7 +1480,7 @@ start_portwine () { ...@@ -1477,7 +1480,7 @@ start_portwine () {
done done
print_info "Used wineboot $@ for prefix: ${PW_PREFIX_NAME}" print_info "Used wineboot $@ for prefix: ${PW_PREFIX_NAME}"
${pw_runtime} env GST_PLUGIN_SYSTEM_PATH_1_0="" LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" \ ${pw_runtime} env GST_PLUGIN_SYSTEM_PATH_1_0="" LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}:${WINE_LIBRARY_PATH}" \
WINEDEBUG="fixme-all,err+loaddll,err+dll,err+file,err+reg" \ WINEDEBUG="fixme-all,err+loaddll,err+dll,err+file,err+reg" \
"${WINELOADER}" wineboot $@ &>>"${PORT_WINE_TMP_PATH}/update_pfx_log" "${WINELOADER}" wineboot $@ &>>"${PORT_WINE_TMP_PATH}/update_pfx_log"
wait_wineserver wait_wineserver
...@@ -1805,7 +1808,7 @@ start_portwine () { ...@@ -1805,7 +1808,7 @@ start_portwine () {
d3dx9_31 d3dx9_32 d3dx9_33 d3dx9_34 d3dx9_35 d3dx9_36 d3dx9_37 d3dx9_38 d3dx9_39 d3dx9_40 d3dx9_41 d3dx9_42 d3dx9_43" d3dx9_31 d3dx9_32 d3dx9_33 d3dx9_34 d3dx9_35 d3dx9_36 d3dx9_37 d3dx9_38 d3dx9_39 d3dx9_40 d3dx9_41 d3dx9_42 d3dx9_43"
if [[ "${PW_USE_D3D_EXTRAS}" == 1 ]] ; then if [[ "${PW_USE_D3D_EXTRAS}" == 1 ]] ; then
if [[ ! -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" ]] \ if [[ ! -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" ]] \
|| [[ -z "`grep d3dx9 "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log"`" ]] || [[ -z "$(grep d3dx9 "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log")" ]]
then then
echo "d3dx9" >> "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" echo "d3dx9" >> "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log"
fi fi
...@@ -1815,7 +1818,7 @@ start_portwine () { ...@@ -1815,7 +1818,7 @@ start_portwine () {
try_force_link_file "${PATH_TO_D3DEXTRAS}/x64/${d3d_extras_from_plugins}.dll" "${WINEPREFIX}/drive_c/windows/system32/" try_force_link_file "${PATH_TO_D3DEXTRAS}/x64/${d3d_extras_from_plugins}.dll" "${WINEPREFIX}/drive_c/windows/system32/"
try_force_link_file "${PATH_TO_D3DEXTRAS}/x32/${d3d_extras_from_plugins}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/" try_force_link_file "${PATH_TO_D3DEXTRAS}/x32/${d3d_extras_from_plugins}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
var_winedlloverride_update "${d3d_extras_from_plugins}=n" var_winedlloverride_update "${d3d_extras_from_plugins}=n"
if [[ -z "`grep "${d3d_extras_from_plugins}" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log"`" ]] ; then if [[ -z "$(grep "${d3d_extras_from_plugins}" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log")" ]] ; then
echo "${d3d_extras_from_plugins}" >> "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" echo "${d3d_extras_from_plugins}" >> "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log"
fi fi
done done
...@@ -1862,10 +1865,9 @@ start_portwine () { ...@@ -1862,10 +1865,9 @@ start_portwine () {
try_force_link_file "${PW_GALLIUM_NINE_PATH}/lib64/d3d9-nine.dll.so" "${WINEPREFIX}/drive_c/windows/system32/d3d9.dll" try_force_link_file "${PW_GALLIUM_NINE_PATH}/lib64/d3d9-nine.dll.so" "${WINEPREFIX}/drive_c/windows/system32/d3d9.dll"
var_winedlloverride_update "d3d9=n;wined3d=b;dxvk_config,vulkan-1,winevulkan=" var_winedlloverride_update "d3d9=n;wined3d=b;dxvk_config,vulkan-1,winevulkan="
unset FIND_D3D_MODULE D3D_MODULE_PATH unset FIND_D3D_MODULE D3D_MODULE_PATH
FIND_D3D_MODULE=`dirname $(find /usr/ -maxdepth 4 -type f -name "d3dadapter9.so.*") 2>/dev/null`
FLATPAK_D3D_MODULES_PATH="/app/lib/i386-linux-gnu/GL/default/lib/d3d
/usr/lib/x86_64-linux-gnu/GL/default/lib/d3d"
if ! check_flatpak ; then if ! check_flatpak ; then
FIND_D3D_MODULE=$(dirname $(find /usr/ -maxdepth 4 -type f -name "d3dadapter9.so.*") 2>/dev/null)
if [[ ! -z "$FIND_D3D_MODULE" ]] ; then if [[ ! -z "$FIND_D3D_MODULE" ]] ; then
old_IFS=$IFS old_IFS=$IFS
IFS=$'\n' IFS=$'\n'
...@@ -1883,12 +1885,7 @@ start_portwine () { ...@@ -1883,12 +1885,7 @@ start_portwine () {
stop_portwine stop_portwine
fi fi
else else
for D3D_MP in $FLATPAK_D3D_MODULES_PATH ; do export D3D_MODULE_PATH="/app/lib/i386-linux-gnu/GL/default/lib/d3d:/usr/lib/x86_64-linux-gnu/GL/default/lib/d3d"
if [[ ! -z "$D3D_MODULE_PATH" ]]
then export D3D_MODULE_PATH="$D3D_MODULE_PATH:/run/parent${D3D_MP}"
else export D3D_MODULE_PATH="/run/parent${D3D_MP}"
fi
done
print_info "D3D_MODULE_PATH=${D3D_MODULE_PATH}" print_info "D3D_MODULE_PATH=${D3D_MODULE_PATH}"
fi fi
export mesa_glthread=true export mesa_glthread=true
...@@ -1998,7 +1995,7 @@ start_portwine () { ...@@ -1998,7 +1995,7 @@ start_portwine () {
#run_winetricks_from_db #run_winetricks_from_db
if [[ ! -z "${PW_MUST_HAVE_DLL}" ]] if [[ ! -z "${PW_MUST_HAVE_DLL}" ]]
then export PW_DLL_INSTALL="`echo "${PW_MUST_HAVE_DLL} ${PW_DLL_INSTALL}" | awk '{ for(i=1;i<=NF;i++){a[$i]++} }END{ for(i in a){printf("%s ",i)} }' `" then export PW_DLL_INSTALL="$(echo "${PW_MUST_HAVE_DLL} ${PW_DLL_INSTALL}" | awk '{ for(i=1;i<=NF;i++){a[$i]++} }END{ for(i in a){printf("%s ",i)} }' )"
fi fi
if [[ ! -z "${PW_DLL_INSTALL}" ]] ; then if [[ ! -z "${PW_DLL_INSTALL}" ]] ; then
...@@ -2038,13 +2035,13 @@ start_portwine () { ...@@ -2038,13 +2035,13 @@ start_portwine () {
fi fi
if [[ -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg" ]] \ if [[ -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg" ]] \
&& [[ -z `grep "Windows $PW_WINDOWS_VER" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg"` ]] && [[ -z $(grep "Windows $PW_WINDOWS_VER" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg") ]]
then then
if [[ ! -z "${PW_WINDOWS_VER}" && `echo "$PW_WINDOWS_VER" | sed 's/.*/\L&/'` == "xp" ]] ; then if [[ ! -z "${PW_WINDOWS_VER}" && $(echo "$PW_WINDOWS_VER" | sed 's/.*/\L&/') == "xp" ]] ; then
export PW_WINDOWS_VER="xp64" export PW_WINDOWS_VER="xp64"
fi fi
${pw_runtime} env PATH="${PATH}" LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" GST_PLUGIN_SYSTEM_PATH_1_0="" \ ${pw_runtime} env PATH="${PATH}" LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}:${WINE_LIBRARY_PATH}" GST_PLUGIN_SYSTEM_PATH_1_0="" \
"${WINELOADER}" winecfg -v `echo "win${PW_WINDOWS_VER}" | sed 's/.*/\L&/'` "${WINELOADER}" winecfg -v $(echo "win${PW_WINDOWS_VER}" | sed 's/.*/\L&/')
wait_wineserver wait_wineserver
kill_portwine kill_portwine
echo "Set to win${PW_WINDOWS_VER}" echo "Set to win${PW_WINDOWS_VER}"
...@@ -2090,7 +2087,8 @@ start_portwine () { ...@@ -2090,7 +2087,8 @@ start_portwine () {
pw_run () { pw_run () {
unset GDK_BACKEND unset GDK_BACKEND
if [[ ! -z "${PATH_TO_GAME}" ]] && [[ -d "${PATH_TO_GAME}" ]] ; then if [[ ! -z "${PATH_TO_GAME}" ]] \
&& [[ -d "${PATH_TO_GAME}" ]] ; then
cd "${PATH_TO_GAME}" cd "${PATH_TO_GAME}"
elif [[ -f "$portwine_exe" ]] ; then elif [[ -f "$portwine_exe" ]] ; then
export PATH_TO_GAME="$( cd "$( dirname "${portwine_exe}" )" >/dev/null 2>&1 && pwd )" export PATH_TO_GAME="$( cd "$( dirname "${portwine_exe}" )" >/dev/null 2>&1 && pwd )"
...@@ -2098,22 +2096,16 @@ pw_run () { ...@@ -2098,22 +2096,16 @@ pw_run () {
else else
cd "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c" cd "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c"
fi fi
PW_LOG_TO_FILE="${PORT_WINE_PATH}/${portname}.log" PW_LOG_TO_FILE="${PORT_WINE_PATH}/PortProton.log"
PW_LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}:${WINE_LIBRARY_PATH}"
print_var "WINEDIR" "WINEPREFIX" "WINEDLLOVERRIDES" "PATH_TO_GAME" "PW_WINE_USE" "PW_VULKAN_USE" "VULKAN_DRIVER_NAME" print_var "WINEDIR" "WINEPREFIX" "WINEDLLOVERRIDES" "PATH_TO_GAME" "PW_WINE_USE" "PW_VULKAN_USE" "VULKAN_DRIVER_NAME"
print_var "VULKAN_API_DRIVER_VERSION" "VKD3D_CONFIG" "PW_LD_LIBRARY_PATH" "PATH" "WINEESYNC" "WINEFSYNC" "WINEFSYNC_FUTEX2" print_var "VKD3D_CONFIG" "PW_LD_LIBRARY_PATH" "PATH" "WINEESYNC" "WINEFSYNC" "WINEFSYNC_FUTEX2"
print_var "WINEDLLPATH" "WINE_CPU_TOPOLOGY" "PW_RUN_GAMESCOPE" "LD_LIBRARY_PATH" print_var "WINEDLLPATH" "WINE_CPU_TOPOLOGY" "PW_RUN_GAMESCOPE" "LD_LIBRARY_PATH"
kill -s SIGUSR1 "$PW_YAD_PID_PFX_COVER_UI" &>/dev/null kill -s SIGUSR1 "$PW_YAD_PID_PFX_COVER_UI" &>/dev/null
if [[ "$PW_USE_RUNTIME" == 1 ]] \ if [[ "$PW_USE_RUNTIME" == 1 ]] \
&& [[ "$PW_WINE_USE" != "USE_SYSTEM_WINE" ]] && [[ "$PW_WINE_USE" != "USE_SYSTEM_WINE" ]]
then then
if [[ "${PW_LOG}" == 1 ]] ; then if [[ "${PW_LOG}" == 1 ]] ; then
if check_start_from_steam ; then
for VAR_LOGGER in PW_WINE_USE WINEDIR WINEDLLPATH WINEPREFIX PATH_TO_GAME PW_VULKAN_USE PW_LD_LIBRARY_PATH LD_LIBRARY_PATH PATH \
VKD3D_CONFIG WINEESYNC WINEFSYNC WINEFSYNC_FUTEX2 WINE_CPU_TOPOLOGY DESKTOP_SESSION
do
echo "${VAR_LOGGER}=${!VAR_LOGGER}" >> "${PW_LOG_TO_FILE}"
done
fi
echo "WINEDLLOVERRIDES=${WINEDLLOVERRIDES}" >> "${PW_LOG_TO_FILE}" echo "WINEDLLOVERRIDES=${WINEDLLOVERRIDES}" >> "${PW_LOG_TO_FILE}"
echo "------------------------------------" >> "${PW_LOG_TO_FILE}" echo "------------------------------------" >> "${PW_LOG_TO_FILE}"
[[ -f "${PORT_WINE_TMP_PATH}/update_pfx_log" ]] && cat "${PORT_WINE_TMP_PATH}/update_pfx_log" >> "${PW_LOG_TO_FILE}" [[ -f "${PORT_WINE_TMP_PATH}/update_pfx_log" ]] && cat "${PORT_WINE_TMP_PATH}/update_pfx_log" >> "${PW_LOG_TO_FILE}"
...@@ -2159,13 +2151,6 @@ pw_run () { ...@@ -2159,13 +2151,6 @@ pw_run () {
fi fi
else else
if [[ "${PW_LOG}" == 1 ]] ; then if [[ "${PW_LOG}" == 1 ]] ; then
if check_start_from_steam ; then
for VAR_LOGGER in PW_WINE_USE WINEDIR WINEDLLPATH WINEPREFIX PATH_TO_GAME PW_VULKAN_USE PW_LD_LIBRARY_PATH LD_LIBRARY_PATH PATH \
VKD3D_CONFIG WINEESYNC WINEFSYNC WINEFSYNC_FUTEX2 WINE_CPU_TOPOLOGY DESKTOP_SESSION
do
echo "${VAR_LOGGER}=${!VAR_LOGGER}" >> "${PW_LOG_TO_FILE}"
done
fi
echo "WINEDLLOVERRIDES=${WINEDLLOVERRIDES}" >> "${PW_LOG_TO_FILE}" echo "WINEDLLOVERRIDES=${WINEDLLOVERRIDES}" >> "${PW_LOG_TO_FILE}"
echo "------------------------------------" >> "${PW_LOG_TO_FILE}" echo "------------------------------------" >> "${PW_LOG_TO_FILE}"
[[ -f "${PORT_WINE_TMP_PATH}/update_pfx_log" ]] && cat "${PORT_WINE_TMP_PATH}/update_pfx_log" >> "${PW_LOG_TO_FILE}" [[ -f "${PORT_WINE_TMP_PATH}/update_pfx_log" ]] && cat "${PORT_WINE_TMP_PATH}/update_pfx_log" >> "${PW_LOG_TO_FILE}"
...@@ -2174,6 +2159,10 @@ pw_run () { ...@@ -2174,6 +2159,10 @@ pw_run () {
echo "" echo ""
print_info "Log WINE:" print_info "Log WINE:"
env FAKE_VAR= \ env FAKE_VAR= \
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_RUN_GAMESCOPE} \ ${PW_RUN_GAMESCOPE} \
${PW_GAMEMODERUN_SLR} \ ${PW_GAMEMODERUN_SLR} \
${PW_MANGOHUD_SLR} \ ${PW_MANGOHUD_SLR} \
...@@ -2186,6 +2175,10 @@ pw_run () { ...@@ -2186,6 +2175,10 @@ pw_run () {
echo "Log WINE:" > "${PW_LOG_TO_FILE}" echo "Log WINE:" > "${PW_LOG_TO_FILE}"
print_info "Log WINE:" print_info "Log WINE:"
env FAKE_VAR= \ env FAKE_VAR= \
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_RUN_GAMESCOPE} \ ${PW_RUN_GAMESCOPE} \
${PW_GAMEMODERUN_SLR} \ ${PW_GAMEMODERUN_SLR} \
${PW_MANGOHUD_SLR} \ ${PW_MANGOHUD_SLR} \
...@@ -2227,7 +2220,7 @@ pw_winecmd () { ...@@ -2227,7 +2220,7 @@ pw_winecmd () {
export PW_USE_TERMINAL=1 export PW_USE_TERMINAL=1
start_portwine start_portwine
cd "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c" cd "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c"
${pw_runtime} env LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" "${PW_PLUGINS_PATH}/portable/bin/xterm" -e "${WINELOADER}" cmd ${pw_runtime} env LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}:${WINE_LIBRARY_PATH}" "${PW_PLUGINS_PATH}/portable/bin/xterm" -e "${WINELOADER}" cmd
stop_portwine stop_portwine
} }
...@@ -2252,9 +2245,6 @@ pw_start_cont_xterm () { ...@@ -2252,9 +2245,6 @@ pw_start_cont_xterm () {
"${PW_PLUGINS_PATH}/portable/bin/xterm" "${PW_PLUGINS_PATH}/portable/bin/xterm"
} }
#!/usr/bin/env bash
# Author: Castro-Fidel (linux-gaming.ru)
########################################################################
yad_info () { yad_info () {
print_info "$@" print_info "$@"
if [[ ! -f "${pw_yad_v13_0}" ]] ; then if [[ ! -f "${pw_yad_v13_0}" ]] ; then
...@@ -2289,8 +2279,8 @@ yad_error_download () { ...@@ -2289,8 +2279,8 @@ yad_error_download () {
"${pw_yad_v13_0}" --text "$loc_gui_error_download" --width=400 --borders=15 --title "$loc_gui_error" \ "${pw_yad_v13_0}" --text "$loc_gui_error_download" --width=400 --borders=15 --title "$loc_gui_error" \
--window-icon="$PW_GUI_ICON_PATH/portproton.svg" --image="$PW_GUI_ICON_PATH/download.png" \ --window-icon="$PW_GUI_ICON_PATH/portproton.svg" --image="$PW_GUI_ICON_PATH/download.png" \
--no-wrap --center --text-align=center \ --no-wrap --center --text-align=center \
--button="SKIP"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":1 \ --button="$loc_skip"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":1 \
--button="REPEAT"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":0 2>/dev/null --button="$loc_repeat"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":0 2>/dev/null
[[ "$?" != 0 ]] && return 1 || return 0 [[ "$?" != 0 ]] && return 1 || return 0
} }
...@@ -2310,8 +2300,8 @@ yad_question () { ...@@ -2310,8 +2300,8 @@ yad_question () {
pw_start_progress_bar_cover () { pw_start_progress_bar_cover () {
if ! check_start_from_steam ; then if ! check_start_from_steam ; then
PW_GIF_FILE="$1" PW_GIF_FILE="$1"
PW_GIF_SIZE_X=`file "${PW_GIF_FILE}" | awk '{print $7 + 8}'` PW_GIF_SIZE_X=$(file "${PW_GIF_FILE}" | awk '{print $7 + 8}')
PW_GIF_SIZE_Y=`file "${PW_GIF_FILE}" | awk '{print $9 + 15}'` PW_GIF_SIZE_Y=$(file "${PW_GIF_FILE}" | awk '{print $9 + 15}')
"${pw_yad_v13_0}" --picture --filename="${PW_GIF_FILE}" --close-on-unfocus --no-buttons --undecorated --center \ "${pw_yad_v13_0}" --picture --filename="${PW_GIF_FILE}" --close-on-unfocus --no-buttons --undecorated --center \
--skip-taskbar --width=$PW_GIF_SIZE_X --height=$PW_GIF_SIZE_Y --window-icon="$PW_GUI_ICON_PATH/portproton.svg" > /dev/null 2>&1 & --skip-taskbar --width=$PW_GIF_SIZE_X --height=$PW_GIF_SIZE_Y --window-icon="$PW_GUI_ICON_PATH/portproton.svg" > /dev/null 2>&1 &
export PW_YAD_PID_PROGRESS_BAR_COVER="$!" export PW_YAD_PID_PROGRESS_BAR_COVER="$!"
...@@ -2323,8 +2313,8 @@ pw_start_progress_bar_cover_block () { ...@@ -2323,8 +2313,8 @@ pw_start_progress_bar_cover_block () {
if ! check_start_from_steam ; then if ! check_start_from_steam ; then
[[ ! -f "${pw_yad_v13_0}" ]] && local pw_yad_v13_0="yad" [[ ! -f "${pw_yad_v13_0}" ]] && local pw_yad_v13_0="yad"
PW_GIF_FILE="$1" PW_GIF_FILE="$1"
PW_GIF_SIZE_X=`file "${PW_GIF_FILE}" | awk '{print $7 + 8}'` PW_GIF_SIZE_X=$(file "${PW_GIF_FILE}" | awk '{print $7 + 8}')
PW_GIF_SIZE_Y=`file "${PW_GIF_FILE}" | awk '{print $9 + 15}'` PW_GIF_SIZE_Y=$(file "${PW_GIF_FILE}" | awk '{print $9 + 15}')
"${pw_yad_v13_0}" --picture --filename="${PW_GIF_FILE}" --close-on-unfocus --no-buttons --undecorated --center \ "${pw_yad_v13_0}" --picture --filename="${PW_GIF_FILE}" --close-on-unfocus --no-buttons --undecorated --center \
--skip-taskbar --width=$PW_GIF_SIZE_X --height=$PW_GIF_SIZE_Y --window-icon="$PW_GUI_ICON_PATH/portproton.svg" > /dev/null 2>&1 & --skip-taskbar --width=$PW_GIF_SIZE_X --height=$PW_GIF_SIZE_Y --window-icon="$PW_GUI_ICON_PATH/portproton.svg" > /dev/null 2>&1 &
export PW_YAD_PID_PROGRESS_BAR_COVER_BLOCK="$!" export PW_YAD_PID_PROGRESS_BAR_COVER_BLOCK="$!"
...@@ -2348,15 +2338,15 @@ pw_update_pfx_cover_gui () { ...@@ -2348,15 +2338,15 @@ pw_update_pfx_cover_gui () {
if ! check_start_from_steam && ! pgrep -a yad | grep "yad_v13_0 --notebook --key=$PW_KEY_PROGRESS_BAR_UP" &>/dev/null ; then if ! check_start_from_steam && ! pgrep -a yad | grep "yad_v13_0 --notebook --key=$PW_KEY_PROGRESS_BAR_UP" &>/dev/null ; then
PW_KEY_PROGRESS_BAR_UP=$RANDOM PW_KEY_PROGRESS_BAR_UP=$RANDOM
PW_GIF_FILE="${COVERS_PATH}/update_prefix_${update_loc}.gif" PW_GIF_FILE="${COVERS_PATH}/update_prefix_${update_loc}.gif"
PW_GIF_SIZE_X=`file "${PW_GIF_FILE}" | awk '{print $7 + 20}'` PW_GIF_SIZE_X=$(file "${PW_GIF_FILE}" | awk '{print $7 + 20}')
PW_GIF_SIZE_Y=`file "${PW_GIF_FILE}" | awk '{print $9 + 60}'` PW_GIF_SIZE_Y=$(file "${PW_GIF_FILE}" | awk '{print $9 + 60}')
echo "UPDATE PREFIX..." > "${PORT_WINE_TMP_PATH}/update_pfx_log" echo "UPDATE PREFIX..." > "${PORT_WINE_TMP_PATH}/update_pfx_log"
export PW_TIMER=0 export PW_TIMER=0
while read -r line || [[ ! -z `pgrep -a yad | grep "yad_v13_0 --notebook --key=$PW_KEY_PROGRESS_BAR_UP" | awk '{print $1}'` ]] ; do while read -r line || [[ ! -z $(pgrep -a yad | grep "yad_v13_0 --notebook --key=$PW_KEY_PROGRESS_BAR_UP" | awk '{print $1}') ]] ; do
sleep 0.005 sleep 0.005
if [[ ! -z "${line}" ]] && [[ -z "`echo "${line}" | grep -i "gstreamer"`" ]] \ if [[ ! -z "${line}" ]] && [[ -z "$(echo "${line}" | grep -i "gstreamer")" ]] \
&& [[ -z "`echo "${line}" | grep -i "kerberos"`" ]] \ && [[ -z "$(echo "${line}" | grep -i "kerberos")" ]] \
&& [[ -z "`echo "${line}" | grep -i "ntlm"`" ]] && [[ -z "$(echo "${line}" | grep -i "ntlm")" ]]
then then
echo "# ${line}" echo "# ${line}"
fi fi
...@@ -2432,8 +2422,8 @@ open_changelog () { ...@@ -2432,8 +2422,8 @@ open_changelog () {
export -f open_changelog export -f open_changelog
pw_tray_icon () { pw_tray_icon () {
if [ ! -z "`pgrep -a yad_v13_0 | grep "\--notification" | awk '{print $1}'`" ] ; then if [ ! -z "$(pgrep -a yad_v13_0 | grep "\--notification" | awk '{print $1}')" ] ; then
kill -s SIGUSR1 "`pgrep -a yad_v13_0 | grep "\--notification" | awk '{print $1}'`" kill -s SIGUSR1 "$(pgrep -a yad_v13_0 | grep "\--notification" | awk '{print $1}')"
fi fi
tray_icon_click () { tray_icon_click () {
...@@ -2479,7 +2469,7 @@ pw_tray_icon () { ...@@ -2479,7 +2469,7 @@ pw_tray_icon () {
pw_gui_for_edit_db () { pw_gui_for_edit_db () {
KEY_EDIT_DB_GUI=$RANDOM KEY_EDIT_DB_GUI=$RANDOM
if [[ "${PW_WINE_CPU_TOPOLOGY}" == *[0-9]:* ]] && [[ "${PW_WINE_CPU_TOPOLOGY}" != "disabled" ]] ; then if [[ "${PW_WINE_CPU_TOPOLOGY}" == *[0-9]:* ]] && [[ "${PW_WINE_CPU_TOPOLOGY}" != "disabled" ]] ; then
CPU_LIMIT_VAR="`echo ${PW_WINE_CPU_TOPOLOGY%%:*}`" CPU_LIMIT_VAR="$(echo ${PW_WINE_CPU_TOPOLOGY%%:*})"
else else
CPU_LIMIT_VAR="disabled" CPU_LIMIT_VAR="disabled"
fi fi
...@@ -2512,7 +2502,7 @@ pw_gui_for_edit_db () { ...@@ -2512,7 +2502,7 @@ pw_gui_for_edit_db () {
else export ${int_to_boole}="FALSE" else export ${int_to_boole}="FALSE"
fi fi
TMP_HELP_FOR_GUI="${int_to_boole}_INFO" TMP_HELP_FOR_GUI="${int_to_boole}_INFO"
int_to_boole_non_pw="`echo ${int_to_boole} | sed 's/^PW_//' | sed 's/_/ /g' `" int_to_boole_non_pw="$(echo ${int_to_boole} | sed 's/^PW_//' | sed 's/_/ /g' )"
ADD_CHK_BOX_EDIT_DB+="--field=${CHKBOX_SPACE}${int_to_boole_non_pw}!${!TMP_HELP_FOR_GUI}:${THEME_CHKBOX}%${!int_to_boole}%" ADD_CHK_BOX_EDIT_DB+="--field=${CHKBOX_SPACE}${int_to_boole_non_pw}!${!TMP_HELP_FOR_GUI}:${THEME_CHKBOX}%${!int_to_boole}%"
done done
} }
...@@ -2563,7 +2553,7 @@ pw_gui_for_edit_db () { ...@@ -2563,7 +2553,7 @@ pw_gui_for_edit_db () {
exit 0 exit 0
;; ;;
esac esac
output_yad_edit_db=(`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_edit_db"`) output_yad_edit_db=($(cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_edit_db"))
bool_from_yad=0 bool_from_yad=0
edit_db_field_read () { edit_db_field_read () {
for boole_to_int in $@ ; do for boole_to_int in $@ ; do
...@@ -2779,12 +2769,22 @@ gui_proton_downloader () { ...@@ -2779,12 +2769,22 @@ gui_proton_downloader () {
else else
try_remove_file "${PORT_WINE_PATH}/data/tmp/${PW_WINE_ARCHIVE}.tar.${archive_type}" try_remove_file "${PORT_WINE_PATH}/data/tmp/${PW_WINE_ARCHIVE}.tar.${archive_type}"
try_remove_dir "${PORT_WINE_PATH}/data/dist/${PW_WINE_ARCHIVE}" try_remove_dir "${PORT_WINE_PATH}/data/dist/${PW_WINE_ARCHIVE}"
yad_error_download && gui_proton_downloader || exit 1 if yad_error_download
then gui_proton_downloader $@
else
export PW_WINE_VER="$PW_WINE_USE"
init_wine_ver
fi
fi fi
fi fi
done done
else else
yad_error_download && gui_proton_downloader || exit 1 if yad_error_download
then gui_proton_downloader $@
else
export PW_WINE_VER="$PW_WINE_USE"
init_wine_ver
fi
fi fi
if [[ "$1" != "silent" ]] ; then if [[ "$1" != "silent" ]] ; then
...@@ -2801,7 +2801,7 @@ export -f gui_proton_downloader ...@@ -2801,7 +2801,7 @@ export -f gui_proton_downloader
gui_vkBasalt () { gui_vkBasalt () {
KEY_FX_GUI=$RANDOM KEY_FX_GUI=$RANDOM
FILE_VKBASALT_CONF="${PORT_WINE_PATH}/data/vkBasalt.conf" FILE_VKBASALT_CONF="${PORT_WINE_PATH}/data/vkBasalt.conf"
LIST_FX=(`grep -E '.fx$|.fxh$' "${FILE_VKBASALT_CONF}" | awk '{print $1}'`) LIST_FX=($(grep -E '.fx$|.fxh$' "${FILE_VKBASALT_CONF}" | awk '{print $1}'))
GET_FX_IN_FILE=(`echo ${PW_VKBASALT_EFFECTS} | sed s/"cas:"// | sed s/":"/" "/g`) GET_FX_IN_FILE=(`echo ${PW_VKBASALT_EFFECTS} | sed s/"cas:"// | sed s/":"/" "/g`)
unset ADD_GUI_FX GUI_FX_RESULT unset ADD_GUI_FX GUI_FX_RESULT
for add_list_fx in ${LIST_FX[@]} ; do for add_list_fx in ${LIST_FX[@]} ; do
...@@ -3122,7 +3122,7 @@ portwine_delete_shortcut () { ...@@ -3122,7 +3122,7 @@ portwine_delete_shortcut () {
portwine_missing_shortcut () { portwine_missing_shortcut () {
"${pw_yad}" --title="${loc_gui_error}." --form \ "${pw_yad}" --title="${loc_gui_error}." --form \
--window-icon "$PW_GUI_ICON_PATH/portproton.svg" \ --window-icon "$PW_GUI_ICON_PATH/portproton.svg" \
--image "$PW_GUI_ICON_PATH/error_file.png" \ --image "$PW_GUI_ICON_PATH/error.png" \
--text "$loc_gui_missing_shortcut" \ --text "$loc_gui_missing_shortcut" \
--button="$loc_gui_delete_shortcut"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":0 \ --button="$loc_gui_delete_shortcut"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":0 \
--button="$loc_cancel"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":1 --button="$loc_cancel"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":1
...@@ -3249,135 +3249,135 @@ portwine_start_debug () { ...@@ -3249,135 +3249,135 @@ portwine_start_debug () {
if [[ -z "$VULKAN_DRIVER_NAME" ]] || [[ "$VULKAN_DRIVER_NAME" == "llvmpipe" ]] ; then if [[ -z "$VULKAN_DRIVER_NAME" ]] || [[ "$VULKAN_DRIVER_NAME" == "llvmpipe" ]] ; then
yad_info "Attention working version of vulkan not detected!\nIt is recommended to run games in OpenGL (low performance possible)!" yad_info "Attention working version of vulkan not detected!\nIt is recommended to run games in OpenGL (low performance possible)!"
fi fi
echo "${port_deb1}" > "${PORT_WINE_PATH}/${portname}.log" echo "${port_deb1}" > "${PORT_WINE_PATH}/PortProton.log"
echo "${port_deb2}" >> "${PORT_WINE_PATH}/${portname}.log" echo "${port_deb2}" >> "${PORT_WINE_PATH}/PortProton.log"
echo "-------------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "-------------------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
echo "PortWINE version:" >> "${PORT_WINE_PATH}/${portname}.log" echo "PortWINE version:" >> "${PORT_WINE_PATH}/PortProton.log"
read install_ver < "${PORT_WINE_TMP_PATH}/${portname}_ver" read install_ver < "${PORT_WINE_TMP_PATH}/PortProton_ver"
echo "${portname}-${install_ver}" >> "${PORT_WINE_PATH}/${portname}.log" echo "PortProton-${install_ver}" >> "${PORT_WINE_PATH}/PortProton.log"
echo "------------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "------------------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
echo "Scripts version:" >> "${PORT_WINE_PATH}/${portname}.log" echo "Scripts version:" >> "${PORT_WINE_PATH}/PortProton.log"
cat "${PORT_WINE_TMP_PATH}/scripts_ver" >> "${PORT_WINE_PATH}/${portname}.log" cat "${PORT_WINE_TMP_PATH}/scripts_ver" >> "${PORT_WINE_PATH}/PortProton.log"
echo "-----------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "-----------------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
if [ "${PW_USE_RUNTIME}" = 0 ] ; then if [ "${PW_USE_RUNTIME}" = 0 ] ; then
echo "RUNTIME is disabled" >> "${PORT_WINE_PATH}/${portname}.log" echo "RUNTIME is disabled" >> "${PORT_WINE_PATH}/PortProton.log"
else else
echo "RUNTIME is enabled" >> "${PORT_WINE_PATH}/${portname}.log" echo "RUNTIME is enabled" >> "${PORT_WINE_PATH}/PortProton.log"
fi fi
echo "----------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "----------------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
if [ ! -z "${portwine_exe}" ] ; then if [ ! -z "${portwine_exe}" ] ; then
echo "Debug for programm:" >> "${PORT_WINE_PATH}/${portname}.log" echo "Debug for programm:" >> "${PORT_WINE_PATH}/PortProton.log"
echo "${portwine_exe}" >> "${PORT_WINE_PATH}/${portname}.log" echo "${portwine_exe}" >> "${PORT_WINE_PATH}/PortProton.log"
echo "---------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "---------------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
fi fi
echo "GLIBC version:" >> "${PORT_WINE_PATH}/${portname}.log" echo "GLIBC version:" >> "${PORT_WINE_PATH}/PortProton.log"
echo $(ldd --version | grep -m1 ldd | awk '{print $NF}') >> "${PORT_WINE_PATH}/${portname}.log" echo $(ldd --version | grep -m1 ldd | awk '{print $NF}') >> "${PORT_WINE_PATH}/PortProton.log"
echo "--------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "--------------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
if [[ "${PW_VULKAN_USE}" = "0" ]] ; then if [[ "${PW_VULKAN_USE}" = "0" ]] ; then
echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DX9-11 to ${loc_gui_open_gl}" >> "${PORT_WINE_PATH}/${portname}.log" echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DX9-11 to ${loc_gui_open_gl}" >> "${PORT_WINE_PATH}/PortProton.log"
elif [[ "${PW_VULKAN_USE}" = "1" ]] ; then elif [[ "${PW_VULKAN_USE}" = "1" ]] ; then
echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DXVK v.${DXVK_STABLE_VER} and VKD3D-PROTON v.${VKD3D_STABLE_VER}" >> "${PORT_WINE_PATH}/${portname}.log" echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DXVK v.${DXVK_STABLE_VER} and VKD3D-PROTON v.${VKD3D_STABLE_VER}" >> "${PORT_WINE_PATH}/PortProton.log"
elif [[ "${PW_VULKAN_USE}" = "2" ]] ; then elif [[ "${PW_VULKAN_USE}" = "2" ]] ; then
echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DXVK v.${DXVK_GIT_VER} and VKD3D-PROTON v.${VKD3D_GIT_VER}" >> "${PORT_WINE_PATH}/${portname}.log" echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DXVK v.${DXVK_GIT_VER} and VKD3D-PROTON v.${VKD3D_GIT_VER}" >> "${PORT_WINE_PATH}/PortProton.log"
elif [[ "${PW_VULKAN_USE}" = "3" ]] ; then elif [[ "${PW_VULKAN_USE}" = "3" ]] ; then
echo "PW_VULKAN_USE=${PW_VULKAN_USE} - native DX9 on MESA drivers" >> "${PORT_WINE_PATH}/${portname}.log" echo "PW_VULKAN_USE=${PW_VULKAN_USE} - native DX9 on MESA drivers" >> "${PORT_WINE_PATH}/PortProton.log"
elif [[ "${PW_VULKAN_USE}" = "4" ]] ; then elif [[ "${PW_VULKAN_USE}" = "4" ]] ; then
echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DirectX to wined3d vulkan" >> "${PORT_WINE_PATH}/${portname}.log" echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DirectX to wined3d vulkan" >> "${PORT_WINE_PATH}/PortProton.log"
else else
echo "PW_VULKAN_USE=${PW_VULKAN_USE}" >> "${PORT_WINE_PATH}/${portname}.log" echo "PW_VULKAN_USE=${PW_VULKAN_USE}" >> "${PORT_WINE_PATH}/PortProton.log"
fi fi
echo "--------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "--------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
echo "Version WINE in use:" >> "${PORT_WINE_PATH}/${portname}.log" echo "Version WINE in use:" >> "${PORT_WINE_PATH}/PortProton.log"
echo "$PW_WINE_USE" >> "${PORT_WINE_PATH}/${portname}.log" echo "$PW_WINE_USE" >> "${PORT_WINE_PATH}/PortProton.log"
echo "-------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "-------------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
echo "Program bit depth:" >> "${PORT_WINE_PATH}/${portname}.log" echo "Program bit depth:" >> "${PORT_WINE_PATH}/PortProton.log"
if [[ $(file "$portwine_exe") =~ x86-64 ]]; then if [[ $(file "$portwine_exe") =~ x86-64 ]]; then
echo "64 bit" >> "${PORT_WINE_PATH}/${portname}.log" echo "64 bit" >> "${PORT_WINE_PATH}/PortProton.log"
echo "-----------------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "-----------------------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
else else
echo "32 bit" >> "${PORT_WINE_PATH}/${portname}.log" echo "32 bit" >> "${PORT_WINE_PATH}/PortProton.log"
fi fi
echo "--------------------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "--------------------------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
echo "Date and time of start debug for ${portname}:" >> "${PORT_WINE_PATH}/${portname}.log" echo "Date and time of start debug for PortProton:" >> "${PORT_WINE_PATH}/PortProton.log"
date >> "${PORT_WINE_PATH}/${portname}.log" date >> "${PORT_WINE_PATH}/PortProton.log"
echo "-----------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "-----------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
echo "The installation path of the ${portname}:" >> "${PORT_WINE_PATH}/${portname}.log" echo "The installation path of the PortProton:" >> "${PORT_WINE_PATH}/PortProton.log"
echo "$PORT_WINE_PATH" >> "${PORT_WINE_PATH}/${portname}.log" echo "$PORT_WINE_PATH" >> "${PORT_WINE_PATH}/PortProton.log"
echo "------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "------------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
echo "Operating system:" >> "${PORT_WINE_PATH}/${portname}.log" echo "Operating system:" >> "${PORT_WINE_PATH}/PortProton.log"
cat /etc/os-release | grep -oP 'PRETTY_NAME="\K[^"]+' >> "${PORT_WINE_PATH}/${portname}.log" cat /etc/os-release | grep -oP 'PRETTY_NAME="\K[^"]+' >> "${PORT_WINE_PATH}/PortProton.log"
echo "--------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "--------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
echo "Desktop environment:" >> "${PORT_WINE_PATH}/${portname}.log" echo "Desktop environment:" >> "${PORT_WINE_PATH}/PortProton.log"
echo "Desktop session: ${DESKTOP_SESSION}" >> "${PORT_WINE_PATH}/${portname}.log" echo "Desktop session: ${DESKTOP_SESSION}" >> "${PORT_WINE_PATH}/PortProton.log"
echo "Current desktop: ${XDG_CURRENT_DESKTOP}" >> "${PORT_WINE_PATH}/${portname}.log" echo "Current desktop: ${XDG_CURRENT_DESKTOP}" >> "${PORT_WINE_PATH}/PortProton.log"
echo "Session type: ${XDG_SESSION_TYPE}" >> "${PORT_WINE_PATH}/${portname}.log" echo "Session type: ${XDG_SESSION_TYPE}" >> "${PORT_WINE_PATH}/PortProton.log"
echo "---------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "---------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
echo "Kernel:" >> "${PORT_WINE_PATH}/${portname}.log" echo "Kernel:" >> "${PORT_WINE_PATH}/PortProton.log"
uname -r >> "${PORT_WINE_PATH}/${portname}.log" uname -r >> "${PORT_WINE_PATH}/PortProton.log"
echo "-------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "-------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
echo "CPU:" >> "${PORT_WINE_PATH}/${portname}.log" echo "CPU:" >> "${PORT_WINE_PATH}/PortProton.log"
echo "CPU physical cores:$(cat /proc/cpuinfo | grep 'cpu cores' | sort -u | cut -d':' -f2)" >> "${PORT_WINE_PATH}/${portname}.log" echo "CPU physical cores:$(cat /proc/cpuinfo | grep 'cpu cores' | sort -u | cut -d':' -f2)" >> "${PORT_WINE_PATH}/PortProton.log"
echo "CPU logical cores: $(cat /proc/cpuinfo | grep 'processor' | wc -l)" >> "${PORT_WINE_PATH}/${portname}.log" echo "CPU logical cores: $(cat /proc/cpuinfo | grep 'processor' | wc -l)" >> "${PORT_WINE_PATH}/PortProton.log"
echo "CPU model name:$(cat /proc/cpuinfo | grep 'model name' | sort -u | cut -d':' -f2)" >> "${PORT_WINE_PATH}/${portname}.log" echo "CPU model name:$(cat /proc/cpuinfo | grep 'model name' | sort -u | cut -d':' -f2)" >> "${PORT_WINE_PATH}/PortProton.log"
echo "------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
echo "RAM:" >> "${PORT_WINE_PATH}/${portname}.log" echo "RAM:" >> "${PORT_WINE_PATH}/PortProton.log"
free -m >> "${PORT_WINE_PATH}/${portname}.log" free -m >> "${PORT_WINE_PATH}/PortProton.log"
echo "-----------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "-----------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
echo "Graphic cards and drivers:" >> "${PORT_WINE_PATH}/${portname}.log" echo "Graphic cards and drivers:" >> "${PORT_WINE_PATH}/PortProton.log"
echo 'lspci -k | grep -EA3 VGA|3D|Display :' >> "${PORT_WINE_PATH}/${portname}.log" echo 'lspci -k | grep -EA3 VGA|3D|Display :' >> "${PORT_WINE_PATH}/PortProton.log"
echo "$(lspci -k | grep -EA3 'VGA|3D|Display')" >> "${PORT_WINE_PATH}/${portname}.log" echo "$(lspci -k | grep -EA3 'VGA|3D|Display')" >> "${PORT_WINE_PATH}/PortProton.log"
echo "----" >> "${PORT_WINE_PATH}/${portname}.log" echo "----" >> "${PORT_WINE_PATH}/PortProton.log"
[[ `command -v glxinfo` ]] && glxinfo -B >> "${PORT_WINE_PATH}/${portname}.log" [[ `command -v glxinfo` ]] && glxinfo -B >> "${PORT_WINE_PATH}/PortProton.log"
echo "-----" >> "${PORT_WINE_PATH}/${portname}.log" echo "-----" >> "${PORT_WINE_PATH}/PortProton.log"
echo "inxi -G:" >> "${PORT_WINE_PATH}/${portname}.log" echo "inxi -G:" >> "${PORT_WINE_PATH}/PortProton.log"
if ! check_flatpak if ! check_flatpak
then "${PW_PLUGINS_PATH}/portable/bin/inxi" -Gc0 >> "${PORT_WINE_PATH}/${portname}.log" then "${PW_PLUGINS_PATH}/portable/bin/inxi" -Gc0 >> "${PORT_WINE_PATH}/PortProton.log"
fi fi
if echo "$LSPCI_VGA" | grep -i nvidia &>/dev/null ; then if echo "$LSPCI_VGA" | grep -i nvidia &>/dev/null ; then
if command -v ldconfig &>/dev/null ; then if command -v ldconfig &>/dev/null ; then
echo "------" >> "${PORT_WINE_PATH}/${portname}.log" echo "------" >> "${PORT_WINE_PATH}/PortProton.log"
echo "ldconfig -p | grep libGLX_nvidia" >> "${PORT_WINE_PATH}/${portname}.log" echo "ldconfig -p | grep libGLX_nvidia" >> "${PORT_WINE_PATH}/PortProton.log"
ldconfig -p | grep libGLX_nvidia >> "${PORT_WINE_PATH}/${portname}.log" ldconfig -p | grep libGLX_nvidia >> "${PORT_WINE_PATH}/PortProton.log"
fi fi
fi fi
echo "PW_SCREEN_RESOLUTION=$PW_SCREEN_RESOLUTION" >> "${PORT_WINE_PATH}/${portname}.log" echo "PW_SCREEN_RESOLUTION=$PW_SCREEN_RESOLUTION" >> "${PORT_WINE_PATH}/PortProton.log"
echo "PW_SCREEN_PRIMARY=$PW_SCREEN_PRIMARY" >> "${PORT_WINE_PATH}/${portname}.log" echo "PW_SCREEN_PRIMARY=$PW_SCREEN_PRIMARY" >> "${PORT_WINE_PATH}/PortProton.log"
echo "----------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "----------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
echo "Vulkan info device name:" >> "${PORT_WINE_PATH}/${portname}.log" echo "Vulkan info device name:" >> "${PORT_WINE_PATH}/PortProton.log"
"$PW_VULKANINFO_PORTABLE" 2>/dev/null | grep -E '^GPU|deviceName|driverName' >> "${PORT_WINE_PATH}/${portname}.log" "$PW_VULKANINFO_PORTABLE" 2>/dev/null | grep -E '^GPU|deviceName|driverName' >> "${PORT_WINE_PATH}/PortProton.log"
"${PW_PLUGINS_PATH}/portable/bin/vkcube" --c 50 "${PW_PLUGINS_PATH}/portable/bin/vkcube" --c 50
if [ $? -eq 0 ]; then if [ $? -eq 0 ]; then
echo "Vulkan cube test passed successfully" >> "${PORT_WINE_PATH}/${portname}.log" echo "Vulkan cube test passed successfully" >> "${PORT_WINE_PATH}/PortProton.log"
else else
echo "Vulkan cube test completed with error" >> "${PORT_WINE_PATH}/${portname}.log" echo "Vulkan cube test completed with error" >> "${PORT_WINE_PATH}/PortProton.log"
fi fi
echo "----------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "----------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
echo 'locale:' >> "${PORT_WINE_PATH}/${portname}.log" echo 'locale:' >> "${PORT_WINE_PATH}/PortProton.log"
locale >> "${PORT_WINE_PATH}/${portname}.log" locale >> "${PORT_WINE_PATH}/PortProton.log"
echo "---" >> "${PORT_WINE_PATH}/${portname}.log" echo "---" >> "${PORT_WINE_PATH}/PortProton.log"
echo 'locale -a | grep -i "$(locale | grep -e '^LANG=' | sed 's/LANG=//' | sed 's/\-8//')" :' >> "${PORT_WINE_PATH}/${portname}.log" echo 'locale -a | grep -i "$(locale | grep -e '^LANG=' | sed 's/LANG=//' | sed 's/\-8//')" :' >> "${PORT_WINE_PATH}/PortProton.log"
locale -a | grep -i "$(locale | grep -e '^LANG=' | sed 's/LANG=//' | sed 's/\-8//')" >> "${PORT_WINE_PATH}/${portname}.log" locale -a | grep -i "$(locale | grep -e '^LANG=' | sed 's/LANG=//' | sed 's/\-8//')" >> "${PORT_WINE_PATH}/PortProton.log"
echo "-------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "-------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
if [[ "${PW_USE_D3D_EXTRAS}" != 1 ]] if [[ "${PW_USE_D3D_EXTRAS}" != 1 ]]
then echo "D3D_EXTRAS - disabled" >> "${PORT_WINE_PATH}/${portname}.log" then echo "D3D_EXTRAS - disabled" >> "${PORT_WINE_PATH}/PortProton.log"
else echo "D3D_EXTRAS - enabled" >> "${PORT_WINE_PATH}/${portname}.log" else echo "D3D_EXTRAS - enabled" >> "${PORT_WINE_PATH}/PortProton.log"
fi fi
echo "------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
echo "winetricks.log:" >> "${PORT_WINE_PATH}/${portname}.log" echo "winetricks.log:" >> "${PORT_WINE_PATH}/PortProton.log"
cat "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" | sed -e /"^d3dcomp*"/d -e /"^d3dx*"/d >> "${PORT_WINE_PATH}/${portname}.log" cat "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" | sed -e /"^d3dcomp*"/d -e /"^d3dx*"/d >> "${PORT_WINE_PATH}/PortProton.log"
echo "-----------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "-----------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
if [ ! -z "${PORTWINE_DB_FILE}" ]; then if [ ! -z "${PORTWINE_DB_FILE}" ]; then
echo "Use ${PORTWINE_DB_FILE} db file:" >> "${PORT_WINE_PATH}/${portname}.log" echo "Use ${PORTWINE_DB_FILE} db file:" >> "${PORT_WINE_PATH}/PortProton.log"
cat "${PORTWINE_DB_FILE}" | sed '/##/d' >> "${PORT_WINE_PATH}/${portname}.log" cat "${PORTWINE_DB_FILE}" | sed '/##/d' >> "${PORT_WINE_PATH}/PortProton.log"
else else
echo "Use ${PORT_SCRIPTS_PATH}/portwine_db/default db file:" >> "${PORT_WINE_PATH}/${portname}.log" echo "Use ${PORT_SCRIPTS_PATH}/portwine_db/default db file:" >> "${PORT_WINE_PATH}/PortProton.log"
cat "${PORT_SCRIPTS_PATH}/portwine_db/default" | sed '/##/d' >> "${PORT_WINE_PATH}/${portname}.log" cat "${PORT_SCRIPTS_PATH}/portwine_db/default" | sed '/##/d' >> "${PORT_WINE_PATH}/PortProton.log"
fi fi
echo "----------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "----------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
if [ -f "${USER_CONF}" ]; then if [ -f "${USER_CONF}" ]; then
cat "${USER_CONF}" | sed '/bash/d' >> "${PORT_WINE_PATH}/${portname}.log" cat "${USER_CONF}" | sed '/bash/d' >> "${PORT_WINE_PATH}/PortProton.log"
fi fi
echo "---------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "---------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
export DXVK_HUD="full" export DXVK_HUD="full"
...@@ -3396,21 +3396,21 @@ portwine_start_debug () { ...@@ -3396,21 +3396,21 @@ portwine_start_debug () {
sleep 3 sleep 3
PW_TIMER=1 PW_TIMER=1
fi fi
done < "${PORT_WINE_PATH}/${portname}.log" | "${pw_yad_v13_0}" --text-info --tail --button="STOP"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":0 --title="DEBUG" \ done < "${PORT_WINE_PATH}/PortProton.log" | "${pw_yad_v13_0}" --text-info --tail --button="STOP"!"$PW_GUI_ICON_PATH/$BUTTON_SIZE.png":0 --title="DEBUG" \
--skip-taskbar --width=800 --height=400 --text "${port_debug}" --window-icon="$PW_GUI_ICON_PATH/portproton.svg" 2>/dev/null && --skip-taskbar --width=800 --height=400 --text "${port_debug}" --window-icon="$PW_GUI_ICON_PATH/portproton.svg" 2>/dev/null &&
kill_portwine kill_portwine
sed -i '/.fx$/d' "${PORT_WINE_PATH}/${portname}.log" sed -i '/.fx$/d' "${PORT_WINE_PATH}/PortProton.log"
sed -i '/HACK_does_openvr_work/d' "${PORT_WINE_PATH}/${portname}.log" sed -i '/HACK_does_openvr_work/d' "${PORT_WINE_PATH}/PortProton.log"
sed -i '/Uploading is disabled/d' "${PORT_WINE_PATH}/${portname}.log" sed -i '/Uploading is disabled/d' "${PORT_WINE_PATH}/PortProton.log"
sed -i '/wine: RLIMIT_NICE is <= 20/d' "${PORT_WINE_PATH}/${portname}.log" sed -i '/wine: RLIMIT_NICE is <= 20/d' "${PORT_WINE_PATH}/PortProton.log"
sed -i '/ALT_2.24/d' "${PORT_WINE_PATH}/${portname}.log" sed -i '/ALT_2.24/d' "${PORT_WINE_PATH}/PortProton.log"
sed -i '/UDEV monitor/d' "${PORT_WINE_PATH}/${portname}.log" sed -i '/UDEV monitor/d' "${PORT_WINE_PATH}/PortProton.log"
deb_text=$(cat "${PORT_WINE_PATH}/${portname}.log" | awk '! a[$0]++') deb_text=$(cat "${PORT_WINE_PATH}/PortProton.log" | awk '! a[$0]++')
echo "$deb_text" > "${PORT_WINE_PATH}/${portname}.log" echo "$deb_text" > "${PORT_WINE_PATH}/PortProton.log"
"$pw_yad" --title="${portname}.log" --no-buttons --text-align=center \ "$pw_yad" --title="PortProton.log" --no-buttons --text-align=center \
--text-info --show-uri --wrap --width=1200 --height=550 --uri-color=red \ --text-info --show-uri --wrap --width=1200 --height=550 --uri-color=red \
--window-icon="$PW_GUI_ICON_PATH/portproton.svg" \ --window-icon="$PW_GUI_ICON_PATH/portproton.svg" \
--filename="${PORT_WINE_PATH}/${portname}.log" --filename="${PORT_WINE_PATH}/PortProton.log"
stop_portwine stop_portwine
} }
...@@ -3559,7 +3559,7 @@ gui_pw_update () { ...@@ -3559,7 +3559,7 @@ gui_pw_update () {
} }
change_loc () { change_loc () {
try_remove_file "${PORT_WINE_TMP_PATH}/${portname}_loc" try_remove_file "${PORT_WINE_TMP_PATH}/PortProton_loc"
print_info "Restarting PP for change language..." print_info "Restarting PP for change language..."
export SKIP_CHECK_UPDATES=1 export SKIP_CHECK_UPDATES=1
/usr/bin/env bash -c ${pw_full_command_line[*]} & /usr/bin/env bash -c ${pw_full_command_line[*]} &
......
...@@ -3,15 +3,15 @@ ...@@ -3,15 +3,15 @@
# Helped in translation: ConTI1NuEsZZZ and Boria138 # Helped in translation: ConTI1NuEsZZZ and Boria138
unset update_loc unset update_loc
if [[ -f "${PORT_WINE_TMP_PATH}/${portname}_loc" ]] ; then if [[ -f "${PORT_WINE_TMP_PATH}/PortProton_loc" ]] ; then
read "update_loc" < "${PORT_WINE_TMP_PATH}/${portname}_loc" read "update_loc" < "${PORT_WINE_TMP_PATH}/PortProton_loc"
export update_loc=${update_loc} export update_loc=${update_loc}
fi fi
if [[ "${FORCE_ENG_LANG}" == "1" ]] ; then if [[ "${FORCE_ENG_LANG}" == "1" ]] ; then
export update_loc="ENG" export update_loc="ENG"
else else
if [[ "${update_loc}" == "RUS" || "${update_loc}" == "ENG" ]] && [[ -f "${PORT_WINE_TMP_PATH}/${portname}_loc" ]] ; then if [[ "${update_loc}" == "RUS" || "${update_loc}" == "ENG" ]] && [[ -f "${PORT_WINE_TMP_PATH}/PortProton_loc" ]] ; then
echo "" echo ""
else else
[[ ! -f "${pw_yad_v13_0}" ]] && pw_yad_v13_0="yad" [[ ! -f "${pw_yad_v13_0}" ]] && pw_yad_v13_0="yad"
...@@ -19,7 +19,7 @@ else ...@@ -19,7 +19,7 @@ else
--column="Set:" --column "Choose language:" TRUE "RUS" FALSE "ENG" \ --column="Set:" --column "Choose language:" TRUE "RUS" FALSE "ENG" \
--window-icon "$PW_GUI_ICON_PATH/portproton.svg" --width=300 --height=150) --window-icon "$PW_GUI_ICON_PATH/portproton.svg" --width=300 --height=150)
SET_LANG="$(echo $SET_LANG | awk -F'|' '{print $2}')" SET_LANG="$(echo $SET_LANG | awk -F'|' '{print $2}')"
echo "${SET_LANG}" > "${PORT_WINE_TMP_PATH}/${portname}_loc" echo "${SET_LANG}" > "${PORT_WINE_TMP_PATH}/PortProton_loc"
if [[ ! -z "${SET_LANG}" ]] if [[ ! -z "${SET_LANG}" ]]
then export update_loc=${SET_LANG} then export update_loc=${SET_LANG}
else exit 1 else exit 1
...@@ -28,8 +28,8 @@ else ...@@ -28,8 +28,8 @@ else
fi fi
if [[ "${update_loc}" == "RUS" ]] ; then if [[ "${update_loc}" == "RUS" ]] ; then
export loc_gui_pw_reinstall_pp="Переустановить ${portname}" export loc_gui_pw_reinstall_pp="Переустановить PortProton"
export loc_gui_rm_pp="Удалить ${portname}" export loc_gui_rm_pp="Удалить PortProton"
export loc_gui_upd_pp="Проверить обновления" export loc_gui_upd_pp="Проверить обновления"
export loc_gui_changelog="История изменений" export loc_gui_changelog="История изменений"
export loc_gui_change_loc="Сменить язык интерфейса" export loc_gui_change_loc="Сменить язык интерфейса"
...@@ -52,7 +52,7 @@ if [[ "${update_loc}" == "RUS" ]] ; then ...@@ -52,7 +52,7 @@ if [[ "${update_loc}" == "RUS" ]] ; then
export loc_tray_winefile="Файловый менеджер WINE" export loc_tray_winefile="Файловый менеджер WINE"
export loc_tray_tascmng="Диспетчер задач WINE" export loc_tray_tascmng="Диспетчер задач WINE"
export loc_tray_cangelog="История изменений" export loc_tray_cangelog="История изменений"
export loc_tray_force_exit="Завершить работу ${portname}" export loc_tray_force_exit="Завершить работу PortProton"
export loc_mg_autoinstall="АВТОУСТАНОВКА" export loc_mg_autoinstall="АВТОУСТАНОВКА"
export loc_mg_emulators="ЭМУЛЯТОРЫ" export loc_mg_emulators="ЭМУЛЯТОРЫ"
...@@ -64,8 +64,8 @@ if [[ "${update_loc}" == "RUS" ]] ; then ...@@ -64,8 +64,8 @@ if [[ "${update_loc}" == "RUS" ]] ; then
export PW_SELECTION_DB_LOC="Найдено более одного DB файла для запускаемого приложения.\nВыберите необходимый, или перед следующим запуском удалите лишний DB файл.\n" export PW_SELECTION_DB_LOC="Найдено более одного DB файла для запускаемого приложения.\nВыберите необходимый, или перед следующим запуском удалите лишний DB файл.\n"
export inst_set="Выбор" export inst_set="Выбор"
export inst_set_top="Установка ${portname}" export inst_set_top="Установка PortProton"
export sc_info="Ярлык будет создан в каталоге ${portname}." export sc_info="Ярлык будет создан в каталоге PortProton."
export sc_name="Название" export sc_name="Название"
export sc_menu_desktop="Добавить ярлык в МЕНЮ -> Игры" export sc_menu_desktop="Добавить ярлык в МЕНЮ -> Игры"
export sc_desktop_desktop="Добавить ярлык на Рабочий стол" export sc_desktop_desktop="Добавить ярлык на Рабочий стол"
...@@ -74,32 +74,32 @@ if [[ "${update_loc}" == "RUS" ]] ; then ...@@ -74,32 +74,32 @@ if [[ "${update_loc}" == "RUS" ]] ; then
export inst_succ="Установка завершена успешно!" export inst_succ="Установка завершена успешно!"
export port_upd1="Обновление ${portname}" export port_upd1="Обновление PortProton"
export port_upd2="На сайте linux-gaming.ru вышло обновление для ${portname}\n" export port_upd2="На сайте linux-gaming.ru вышло обновление для PortProton\n"
export port_upd3="Действие:" export port_upd3="Действие:"
export port_upd4="Перейти на сайт" export port_upd4="Перейти на сайт"
export port_upd5="Напомнить позже" export port_upd5="Напомнить позже"
export port_upd6="Больше не напоминать" export port_upd6="Больше не напоминать"
export scripts_upd1="Обновление скриптов" export scripts_upd1="Обновление скриптов"
export scripts_upd2="Доступно обновление скриптов для ${portname}" export scripts_upd2="Доступно обновление скриптов для PortProton"
export scripts_upd3="Действие :" export scripts_upd3="Действие :"
export scripts_upd4="Обновить сейчас" export scripts_upd4="Обновить сейчас"
export scripts_upd5="Напомнить позже" export scripts_upd5="Напомнить позже"
export scripts_upd6="Больше не напоминать" export scripts_upd6="Больше не напоминать"
export port_clear_pfx="Вы действительно хотите очистить префикс ${portname}?" export port_clear_pfx="Вы действительно хотите очистить префикс PortProton?"
export port_del1="Удаление $portname" export port_del1="Удаление PortProton"
export port_del2="Вы действительно хотите полностью удалить ${portname}?" export port_del2="Вы действительно хотите полностью удалить PortProton?"
export port_reinstall="Вы действительно хотите переустановить ${portname}?\nДля этого будет необходимо интернет соединение." export port_reinstall="Вы действительно хотите переустановить PortProton?\nДля этого будет необходимо интернет соединение."
export port_deb1="PortWINE был запущен в режиме создания ${portname}.log и он успешно сохранен в корне каталога порта" export port_deb1="PortWINE был запущен в режиме создания PortProton.log и он успешно сохранен в корне каталога порта"
export port_deb2="Для диагностики проблемы, скопируйте ВЕСЬ лог в соответствующий канал у нас на сервере дискорда: https://discord.gg/FTaheP99wE" export port_deb2="Для диагностики проблемы, скопируйте ВЕСЬ лог в соответствующий канал у нас на сервере дискорда: https://discord.gg/FTaheP99wE"
export port_start1="Запуск ${portname}" export port_start1="Запуск PortProton"
export port_start2="В каком режиме вы хотите запустить ${portname}?" export port_start2="В каком режиме вы хотите запустить PortProton?"
export port_start3="Режим:" export port_start3="Режим:"
export port_start4="Обычный" export port_start4="Обычный"
export port_start5="Отдельной X-сессии" export port_start5="Отдельной X-сессии"
...@@ -107,12 +107,12 @@ if [[ "${update_loc}" == "RUS" ]] ; then ...@@ -107,12 +107,12 @@ if [[ "${update_loc}" == "RUS" ]] ; then
export port_start7="Запустить winetricks" export port_start7="Запустить winetricks"
export port_start8="DXVK" export port_start8="DXVK"
export port_debug="Не торопитесь! После окончания работы ${portname}, нажмите STOP." export port_debug="Не торопитесь! После окончания работы PortProton, нажмите STOP."
export loc_create_shortcut_from_gui="Создать ярлык..." export loc_create_shortcut_from_gui="Создать ярлык..."
export loc_create_shortcut="Создать ярлык для запускаемого файла." export loc_create_shortcut="Создать ярлык для запускаемого файла."
export loc_delete_shortcut="Удалить ярлык для запускаемого файла." export loc_delete_shortcut="Удалить ярлык для запускаемого файла."
export loc_debug="Запуск c созданием .log файла в корне ${portname}" export loc_debug="Запуск c созданием .log файла в корне PortProton"
export loc_launch="Запустить файл..." export loc_launch="Запустить файл..."
export loc_winecfg="Запустить winecfg для редактирования настроек выбранного префикса" export loc_winecfg="Запустить winecfg для редактирования настроек выбранного префикса"
export loc_winefile="Запустить файловый менеждер встроенный в wine" export loc_winefile="Запустить файловый менеждер встроенный в wine"
...@@ -291,7 +291,7 @@ if [[ "${update_loc}" == "RUS" ]] ; then ...@@ -291,7 +291,7 @@ if [[ "${update_loc}" == "RUS" ]] ; then
export loc_gui_error='Ошибка.' export loc_gui_error='Ошибка.'
export loc_gui_error_download="Проверьте интернет соединение и\nнажмите Repeat для повторной попытки скачивания" export loc_gui_error_download="Проверьте интернет соединение и\nнажмите Repeat для повторной попытки скачивания"
export loc_gui_settings="Пожалуйста подождите." export loc_gui_settings="Пожалуйста подождите."
export loc_gui_sett_info="Обновление конфигурации <b>${portname}</b>..." export loc_gui_sett_info="Обновление конфигурации <b>PortProton</b>..."
export loc_gui_edit_db="Изменение файла настроек для:" export loc_gui_edit_db="Изменение файла настроек для:"
export loc_gui_edit_db_help="<b>ПРИМЕЧАНИЕ:</b> Для вывода справки по каждому пункту, просто наведите курсор мыши на текст." export loc_gui_edit_db_help="<b>ПРИМЕЧАНИЕ:</b> Для вывода справки по каждому пункту, просто наведите курсор мыши на текст."
...@@ -303,6 +303,8 @@ if [[ "${update_loc}" == "RUS" ]] ; then ...@@ -303,6 +303,8 @@ if [[ "${update_loc}" == "RUS" ]] ; then
export loc_gui_reset_db_help="Востановить все настройки по умолчанию." export loc_gui_reset_db_help="Востановить все настройки по умолчанию."
export loc_disabled="Отключено" export loc_disabled="Отключено"
export loc_skip="ПРОПУСТИТЬ"
export loc_repeat="ПОВТОРИТЬ"
export loc_gui_open_db="ОТКРЫТЬ ФАЙЛ НАСТРОЕК" export loc_gui_open_db="ОТКРЫТЬ ФАЙЛ НАСТРОЕК"
export loc_gui_open_db_help="Открыть файл настроек <b>.ppdb</b> в системном текстовом редакторе для просмотра и изменений переменных вручную." export loc_gui_open_db_help="Открыть файл настроек <b>.ppdb</b> в системном текстовом редакторе для просмотра и изменений переменных вручную."
...@@ -332,7 +334,7 @@ if [[ "${update_loc}" == "RUS" ]] ; then ...@@ -332,7 +334,7 @@ if [[ "${update_loc}" == "RUS" ]] ; then
export loc_gui_arg_exe_help="Добавление аргумента после <b>.exe</b> файла, так же как если бы вы добавили аргумент в ярлыке в системе <b>WINDOWS </b>" export loc_gui_arg_exe_help="Добавление аргумента после <b>.exe</b> файла, так же как если бы вы добавили аргумент в ярлыке в системе <b>WINDOWS </b>"
export loc_gui_mango_fps="Ограничить FPS" export loc_gui_mango_fps="Ограничить FPS"
export loc_gui_mango_fps_help="Включение ограничения количества кадров в секунду средстами MANGOHUD встроенного в ${portname}" export loc_gui_mango_fps_help="Включение ограничения количества кадров в секунду средстами MANGOHUD встроенного в PortProton"
export loc_gui_arg_gamescope="Добавить аргументы для GAMESCOPE:" export loc_gui_arg_gamescope="Добавить аргументы для GAMESCOPE:"
export loc_gui_arg_gamescope_help="Аргументы: export loc_gui_arg_gamescope_help="Аргументы:
...@@ -367,7 +369,7 @@ if [[ "${update_loc}" == "RUS" ]] ; then ...@@ -367,7 +369,7 @@ if [[ "${update_loc}" == "RUS" ]] ; then
export loc_gui_amd_vulkan_select_help="Выбор какая реализация vulkan будет использоваться для запуска игры" export loc_gui_amd_vulkan_select_help="Выбор какая реализация vulkan будет использоваться для запуска игры"
export loc_gui_gpu_select="Выбрать видеокарту для запуска игры (в user.conf)" export loc_gui_gpu_select="Выбрать видеокарту для запуска игры (в user.conf)"
export loc_gui_gpu_select_help="Выбор какая видеокарта будет использоваться для запуска игры (используется для всех запускаемых игр и программ в ${portname}.)" export loc_gui_gpu_select_help="Выбор какая видеокарта будет использоваться для запуска игры (используется для всех запускаемых игр и программ в PortProton.)"
export loc_gui_check_new_wine="Проверяем новые версии WINE" export loc_gui_check_new_wine="Проверяем новые версии WINE"
export loc_gui_check_new_wine_error="Не удается проверить новые версии WINE." export loc_gui_check_new_wine_error="Не удается проверить новые версии WINE."
...@@ -396,7 +398,7 @@ if [[ "${update_loc}" == "RUS" ]] ; then ...@@ -396,7 +398,7 @@ if [[ "${update_loc}" == "RUS" ]] ; then
export loc_gui_vkbasalt_start="VKBASALT" export loc_gui_vkbasalt_start="VKBASALT"
export loc_gui_mh_start="MANGOHUD" export loc_gui_mh_start="MANGOHUD"
export loc_gui_db_comments="Найден файл настроек ${portname} для" export loc_gui_db_comments="Найден файл настроек PortProton для"
export loc_gui_vulkan_stable="Стабильные DXVK ${DXVK_STABLE_VER} и VKD3D ${VKD3D_STABLE_VER}" export loc_gui_vulkan_stable="Стабильные DXVK ${DXVK_STABLE_VER} и VKD3D ${VKD3D_STABLE_VER}"
export loc_gui_vulkan_git="Новейшие DXVK ${DXVK_GIT_VER} и VKD3D ${VKD3D_GIT_VER}" export loc_gui_vulkan_git="Новейшие DXVK ${DXVK_GIT_VER} и VKD3D ${VKD3D_GIT_VER}"
...@@ -442,9 +444,9 @@ if [[ "${update_loc}" == "RUS" ]] ; then ...@@ -442,9 +444,9 @@ if [[ "${update_loc}" == "RUS" ]] ; then
elif [[ "${update_loc}" == "ENG" ]] ; then elif [[ "${update_loc}" == "ENG" ]] ; then
export loc_gui_pw_reinstall_pp="REINSTALL ${portname}" export loc_gui_pw_reinstall_pp="REINSTALL PortProton"
export loc_gui_rm_pp="REMOVE ${portname}" export loc_gui_rm_pp="REMOVE PortProton"
export loc_gui_upd_pp="UPDATE ${portname}" export loc_gui_upd_pp="UPDATE PortProton"
export loc_gui_changelog="CHANGELOG" export loc_gui_changelog="CHANGELOG"
export loc_gui_change_loc="CHANGE LANGUAGE" export loc_gui_change_loc="CHANGE LANGUAGE"
export loc_gui_edit_usc="EDIT USER.CONF" export loc_gui_edit_usc="EDIT USER.CONF"
...@@ -478,8 +480,8 @@ elif [[ "${update_loc}" == "ENG" ]] ; then ...@@ -478,8 +480,8 @@ elif [[ "${update_loc}" == "ENG" ]] ; then
export PW_SELECTION_DB_LOC="More than one DB file found for the application being launched.\nSelect the required one, or delete the extra DB file before the next run.\n" export PW_SELECTION_DB_LOC="More than one DB file found for the application being launched.\nSelect the required one, or delete the extra DB file before the next run.\n"
export inst_set="Choices" export inst_set="Choices"
export inst_set_top="Instaling ${portname}" export inst_set_top="Instaling PortProton"
export sc_info="The shortcut will be created in the ${portname} directory." export sc_info="The shortcut will be created in the PortProton directory."
export sc_name="Name" export sc_name="Name"
export sc_menu_desktop="Add shortcut to MENU -> GAMES" export sc_menu_desktop="Add shortcut to MENU -> GAMES"
export sc_desktop_desktop="Add shortcut to Desktop" export sc_desktop_desktop="Add shortcut to Desktop"
...@@ -488,32 +490,32 @@ elif [[ "${update_loc}" == "ENG" ]] ; then ...@@ -488,32 +490,32 @@ elif [[ "${update_loc}" == "ENG" ]] ; then
export inst_succ="The installation was successful." export inst_succ="The installation was successful."
export port_upd1="New update for ${portname}" export port_upd1="New update for PortProton"
export port_upd2="On linux-gaming.ru site published an update for ${portname}\n" export port_upd2="On linux-gaming.ru site published an update for PortProton\n"
export port_upd3="Action:" export port_upd3="Action:"
export port_upd4="Go to the website" export port_upd4="Go to the website"
export port_upd5="Remind me later" export port_upd5="Remind me later"
export port_upd6="Do not remind me" export port_upd6="Do not remind me"
export scripts_upd1="New update for scripts" export scripts_upd1="New update for scripts"
export scripts_upd2="Scripts update avialable for ${portname}" export scripts_upd2="Scripts update avialable for PortProton"
export scripts_upd3="Action:" export scripts_upd3="Action:"
export scripts_upd4="Updating now" export scripts_upd4="Updating now"
export scripts_upd5="Remind me later" export scripts_upd5="Remind me later"
export scripts_upd6="Do not remind me" export scripts_upd6="Do not remind me"
export port_clear_pfx="Do you want to clear prefix in ${portname}?" export port_clear_pfx="Do you want to clear prefix in PortProton?"
export port_del1="Remove $portname" export port_del1="Remove PortProton"
export port_del2="Do you really want to remove $portname?" export port_del2="Do you really want to remove PortProton?"
export port_reinstall="Do you really want to reinstall ${portname}?\nFor this, an internet connection will be required." export port_reinstall="Do you really want to reinstall PortProton?\nFor this, an internet connection will be required."
export port_deb1="${portname} was launched in creation mode ${portname}.log and it is successfully stored in the root directory of the port" export port_deb1="PortProton was launched in creation mode PortProton.log and it is successfully stored in the root directory of the port"
export port_deb2="To diagnose the problem, copy ALL of the log to discord server: https://discord.gg/FTaheP99wE" export port_deb2="To diagnose the problem, copy ALL of the log to discord server: https://discord.gg/FTaheP99wE"
export port_start1="Starting the ${portname}" export port_start1="Starting the PortProton"
export port_start2="In what mode you want to start the ${portname}?" export port_start2="In what mode you want to start the PortProton?"
export port_start3="Mode:" export port_start3="Mode:"
export port_start4="Normal" export port_start4="Normal"
export port_start5="Individual X-Session" export port_start5="Individual X-Session"
...@@ -521,12 +523,12 @@ elif [[ "${update_loc}" == "ENG" ]] ; then ...@@ -521,12 +523,12 @@ elif [[ "${update_loc}" == "ENG" ]] ; then
export port_start7="Run winetricks" export port_start7="Run winetricks"
export port_start8="DXVK" export port_start8="DXVK"
export port_debug="Please wait! After finishing the ${portname}, click STOP." export port_debug="Please wait! After finishing the PortProton, click STOP."
export loc_create_shortcut_from_gui="Create shortcut..." export loc_create_shortcut_from_gui="Create shortcut..."
export loc_create_shortcut="Create shortcut for select file..." export loc_create_shortcut="Create shortcut for select file..."
export loc_delete_shortcut="Delete shortcut for select file..." export loc_delete_shortcut="Delete shortcut for select file..."
export loc_debug="Launch with the creation of a .log file at the root ${portname}" export loc_debug="Launch with the creation of a .log file at the root PortProton"
export loc_launch="Run file ..." export loc_launch="Run file ..."
export loc_winecfg="Run winecfg to edit the settings of the selected prefix" export loc_winecfg="Run winecfg to edit the settings of the selected prefix"
export loc_winefile="Run wine file manager" export loc_winefile="Run wine file manager"
...@@ -705,7 +707,7 @@ elif [[ "${update_loc}" == "ENG" ]] ; then ...@@ -705,7 +707,7 @@ elif [[ "${update_loc}" == "ENG" ]] ; then
export loc_gui_error='Error.' export loc_gui_error='Error.'
export loc_gui_error_download="You will need to check internet connection,and\npress Repeat for repeat download" export loc_gui_error_download="You will need to check internet connection,and\npress Repeat for repeat download"
export loc_gui_settings="Please wait." export loc_gui_settings="Please wait."
export loc_gui_sett_info="Updating configuration for <b>${portname}</b>..." export loc_gui_sett_info="Updating configuration for <b>PortProton</b>..."
export loc_gui_edit_db="Change settings in database file for" export loc_gui_edit_db="Change settings in database file for"
export loc_gui_edit_db_help="<b>NOTE:</b> To display help for each item, simply hover your mouse over the text" export loc_gui_edit_db_help="<b>NOTE:</b> To display help for each item, simply hover your mouse over the text"
...@@ -718,6 +720,8 @@ elif [[ "${update_loc}" == "ENG" ]] ; then ...@@ -718,6 +720,8 @@ elif [[ "${update_loc}" == "ENG" ]] ; then
export loc_gui_reset_db_help="Restore default settings." export loc_gui_reset_db_help="Restore default settings."
export loc_disabled="Disabled" export loc_disabled="Disabled"
export loc_skip="SKIP"
export loc_repeat="REPEAT"
export loc_gui_open_db="OPEN THE SETTINGS FILE" export loc_gui_open_db="OPEN THE SETTINGS FILE"
export loc_gui_open_db_help="Open the <b>.ppdb</b> settings file in a system text editor to view and change variables manually." export loc_gui_open_db_help="Open the <b>.ppdb</b> settings file in a system text editor to view and change variables manually."
...@@ -748,7 +752,7 @@ A brief instruction: ...@@ -748,7 +752,7 @@ A brief instruction:
export loc_gui_arg_exe_help="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" export loc_gui_arg_exe_help="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"
export loc_gui_mango_fps="MANGOHUD FPS LIMIT" export loc_gui_mango_fps="MANGOHUD FPS LIMIT"
export loc_gui_mango_fps_help="Enabling FPS limits using MANGOHUD built into ${portname}" export loc_gui_mango_fps_help="Enabling FPS limits using MANGOHUD built into PortProton"
export loc_gui_arg_gamescope="Add arguments for GAMESCOPE:" export loc_gui_arg_gamescope="Add arguments for GAMESCOPE:"
export loc_gui_arg_gamescope_help=" export loc_gui_arg_gamescope_help="
...@@ -781,7 +785,7 @@ A brief instruction: ...@@ -781,7 +785,7 @@ A brief instruction:
export loc_gui_amd_vulkan_select_help="Choosing which implementation of vulkan will be used to run the game" export loc_gui_amd_vulkan_select_help="Choosing which implementation of vulkan will be used to run the game"
export loc_gui_gpu_select="Choose a graphics card to run the game (in user.conf)" export loc_gui_gpu_select="Choose a graphics card to run the game (in user.conf)"
export loc_gui_gpu_select_help="Select which video card will be used to run the game (used for all running games and programs in ${portname})" export loc_gui_gpu_select_help="Select which video card will be used to run the game (used for all running games and programs in PortProton)"
export loc_gui_check_new_wine="Check new version WINE" export loc_gui_check_new_wine="Check new version WINE"
export loc_gui_check_new_wine_error="Error: check wine." export loc_gui_check_new_wine_error="Error: check wine."
...@@ -811,7 +815,7 @@ A brief instruction: ...@@ -811,7 +815,7 @@ A brief instruction:
export loc_gui_vkbasalt_top="vkBasalt settings for adding effects to games running under Vulkan. (The <b>HOME</b> key disables vkbasalt)\n<b>NOTE:</b> To display help for each item, simply hover over the text\n" export loc_gui_vkbasalt_top="vkBasalt settings for adding effects to games running under Vulkan. (The <b>HOME</b> key disables vkbasalt)\n<b>NOTE:</b> To display help for each item, simply hover over the text\n"
export loc_gui_db_comments="${portname} database file was found for" export loc_gui_db_comments="PortProton database file was found for"
export loc_gui_vulkan_stable="Stable DXVK ${DXVK_STABLE_VER} и VKD3D ${VKD3D_STABLE_VER}" export loc_gui_vulkan_stable="Stable DXVK ${DXVK_STABLE_VER} и VKD3D ${VKD3D_STABLE_VER}"
export loc_gui_vulkan_git="Newest DXVK ${DXVK_GIT_VER} и VKD3D ${VKD3D_GIT_VER}" export loc_gui_vulkan_git="Newest DXVK ${DXVK_GIT_VER} и VKD3D ${VKD3D_GIT_VER}"
......
#!/usr/bin/env bash #!/usr/bin/env bash
#Author: Dezert1r #Author: Dezert1r
#GalaxyClient.exe #GalaxyClient.exe
#GOG_Galaxy_2.0.exe #GOG_Galaxy_2.0.exe
#Rating=1-5 #Rating=1-5
################################################ ################################################
......
...@@ -41,16 +41,9 @@ then ...@@ -41,16 +41,9 @@ then
MISSING_DESKTOP_FILE=0 MISSING_DESKTOP_FILE=0
fi fi
. "$(dirname $(readlink -f "$0"))/functions_helper" cd "$(dirname "$(readlink -f "$0")")" && export PORT_SCRIPTS_PATH="$(pwd)"
cd "${PORT_SCRIPTS_PATH}/../../" && export PORT_WINE_PATH="$(pwd)"
# if [[ -z "${LANG}" ]] ; then . "${PORT_SCRIPTS_PATH}/functions_helper"
# export LANG=C
# export FORCE_ENG_LANG=1
# elif [[ "${START_FROM_STEAM}" == 1 ]] ; then
# export FORCE_ENG_LANG=1
# else
# unset FORCE_ENG_LANG
# fi
create_new_dir "${HOME}/.local/share/applications" create_new_dir "${HOME}/.local/share/applications"
if [[ "${PW_SILENT_RESTART}" == 1 ]] || [[ "${START_FROM_STEAM}" == 1 ]] ; then if [[ "${PW_SILENT_RESTART}" == 1 ]] || [[ "${START_FROM_STEAM}" == 1 ]] ; then
...@@ -66,12 +59,7 @@ unset PW_PREFIX_NAME WINEPREFIX VULKAN_MOD PW_WINE_VER PW_ADD_TO_ARGS_IN_RUNTIME ...@@ -66,12 +59,7 @@ unset PW_PREFIX_NAME WINEPREFIX VULKAN_MOD PW_WINE_VER PW_ADD_TO_ARGS_IN_RUNTIME
unset PW_NAME_D_NAME PW_NAME_D_ICON PW_NAME_D_EXEC PW_EXEC_FROM_DESKTOP PW_ALL_DF PW_GENERATE_BUTTONS PW_NAME_D_ICON PW_NAME_D_ICON_48 unset PW_NAME_D_NAME PW_NAME_D_ICON PW_NAME_D_EXEC PW_EXEC_FROM_DESKTOP PW_ALL_DF PW_GENERATE_BUTTONS PW_NAME_D_ICON PW_NAME_D_ICON_48
unset MANGOHUD_CONFIG PW_WINE_USE WINEDLLPATH WINE WINEDIR WINELOADER WINESERVER PW_USE_RUNTIME unset MANGOHUD_CONFIG PW_WINE_USE WINEDLLPATH WINE WINEDIR WINELOADER WINESERVER PW_USE_RUNTIME
export portname=PortProton
cd "$(dirname "`readlink -f "$0"`")" && export PORT_SCRIPTS_PATH="$(pwd)"
cd "${PORT_SCRIPTS_PATH}/../../" && export PORT_WINE_PATH="$(pwd)"
export PORT_WINE_TMP_PATH="${PORT_WINE_PATH}/data/tmp" export PORT_WINE_TMP_PATH="${PORT_WINE_PATH}/data/tmp"
rm -f $PORT_WINE_TMP_PATH/*{exe,msi,tar}* rm -f $PORT_WINE_TMP_PATH/*{exe,msi,tar}*
echo "" > "${PORT_WINE_TMP_PATH}/tmp_yad_form" echo "" > "${PORT_WINE_TMP_PATH}/tmp_yad_form"
...@@ -142,7 +130,7 @@ export urlg="https://linux-gaming.ru/portproton/" ...@@ -142,7 +130,7 @@ export urlg="https://linux-gaming.ru/portproton/"
export url_cdn="https://cdn.linux-gaming.ru" export url_cdn="https://cdn.linux-gaming.ru"
export PW_WINELIB="${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}" export PW_WINELIB="${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}"
try_remove_dir "${PW_WINELIB}/var" try_remove_dir "${PW_WINELIB}/var"
export install_ver=$(cat "${PORT_WINE_TMP_PATH}/${portname}_ver" | head -n 1) export install_ver=$(cat "${PORT_WINE_TMP_PATH}/PortProton_ver" | head -n 1)
export WINETRICKS_DOWNLOADER="curl" export WINETRICKS_DOWNLOADER="curl"
export USER_CONF="${PORT_WINE_PATH}/data/user.conf" export USER_CONF="${PORT_WINE_PATH}/data/user.conf"
check_user_conf check_user_conf
...@@ -184,6 +172,8 @@ fi ...@@ -184,6 +172,8 @@ fi
unset SKIP_CHECK_UPDATES unset SKIP_CHECK_UPDATES
pw_check_and_download_plugins pw_check_and_download_plugins
export PW_VULKANINFO_PORTABLE="$PW_PLUGINS_PATH/portable/bin/x86_64-linux-gnu-vulkaninfo"
export VULKAN_DRIVER_NAME="$("$PW_VULKANINFO_PORTABLE" 2>/dev/null | grep driverName | awk '{print$3}' | head -1)"
if [[ -f "/tmp/portproton.lock" ]] ; then if [[ -f "/tmp/portproton.lock" ]] ; then
print_warning "Found lock file: /tmp/portproton.lock" print_warning "Found lock file: /tmp/portproton.lock"
...@@ -196,10 +186,11 @@ rm_lock_file () { ...@@ -196,10 +186,11 @@ rm_lock_file () {
} }
trap "rm_lock_file" EXIT trap "rm_lock_file" EXIT
pw_download_libs if check_flatpak
export PW_VULKANINFO_PORTABLE="$PW_PLUGINS_PATH/portable/bin/x86_64-linux-gnu-vulkaninfo" then try_remove_dir "${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}"
export VULKAN_API_DRIVER_VERSION="$("$PW_VULKANINFO_PORTABLE" 2>/dev/null | grep "api" | head -n 1 | awk '{print $3}')" else pw_download_libs
export VULKAN_DRIVER_NAME="$("$PW_VULKANINFO_PORTABLE" 2>/dev/null | grep driverName | awk '{print$3}' | head -1)" fi
pw_init_db pw_init_db
. "${PORT_SCRIPTS_PATH}"/lang . "${PORT_SCRIPTS_PATH}"/lang
pw_check_and_download_dxvk_and_vkd3d pw_check_and_download_dxvk_and_vkd3d
...@@ -207,7 +198,7 @@ pw_check_and_download_dxvk_and_vkd3d ...@@ -207,7 +198,7 @@ pw_check_and_download_dxvk_and_vkd3d
kill_portwine kill_portwine
killall -15 yad_v13_0 2>/dev/null killall -15 yad_v13_0 2>/dev/null
kill -TERM `pgrep -a yad | grep ${portname} | head -n 1 | awk '{print $1}'` 2>/dev/null kill -TERM $(pgrep -a yad | grep PortProton | head -n 1 | awk '{print $1}') 2>/dev/null
if [[ -f "/usr/bin/portproton" ]] \ if [[ -f "/usr/bin/portproton" ]] \
&& [[ -f "${HOME}/.local/share/applications/PortProton.desktop" ]] && [[ -f "${HOME}/.local/share/applications/PortProton.desktop" ]]
...@@ -296,8 +287,7 @@ IFS=$IFS_OLD ...@@ -296,8 +287,7 @@ IFS=$IFS_OLD
export PW_ADD_PREFIXES_TO_GUI="${PW_PREFIX_NAME^^}${PW_ADD_PREFIXES_TO_GUI}" export PW_ADD_PREFIXES_TO_GUI="${PW_PREFIX_NAME^^}${PW_ADD_PREFIXES_TO_GUI}"
PW_ALL_DIST=$(ls "${PORT_WINE_PATH}/data/dist/" | sed -e s/"${PW_WINE_LG_VER}$//g" | sed -e s/"${PW_PROTON_LG_VER}$//g") PW_ALL_DIST=$(ls "${PORT_WINE_PATH}/data/dist/" | sed -e s/"${PW_WINE_LG_VER}$//g" | sed -e s/"${PW_PROTON_LG_VER}$//g")
if command -v wine &>/dev/null \ if command -v wine &>/dev/null
&& ! check_flatpak
then DIST_ADD_TO_GUI="!USE_SYSTEM_WINE" then DIST_ADD_TO_GUI="!USE_SYSTEM_WINE"
else unset DIST_ADD_TO_GUI else unset DIST_ADD_TO_GUI
fi fi
...@@ -358,7 +348,7 @@ if [[ -f "${portwine_exe}" ]] ; then ...@@ -358,7 +348,7 @@ if [[ -f "${portwine_exe}" ]] ; then
PW_SHORTCUT="${loc_gui_delete_shortcut}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${loc_delete_shortcut}:98" PW_SHORTCUT="${loc_gui_delete_shortcut}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${loc_delete_shortcut}:98"
fi fi
OUTPUT_START=$("${pw_yad}" --text-align=center --text "$PW_COMMENT_DB" --form \ OUTPUT_START=$("${pw_yad}" --text-align=center --text "$PW_COMMENT_DB" --form \
--title "${portname}-${install_ver} (${scripts_install_ver})" \ --title "PortProton-${install_ver} (${scripts_install_ver})" \
--image "${PW_ICON_FOR_YAD}" --separator=";" \ --image "${PW_ICON_FOR_YAD}" --separator=";" \
--window-icon="$PW_GUI_ICON_PATH/portproton.svg" \ --window-icon="$PW_GUI_ICON_PATH/portproton.svg" \
--field="3D API : :CB" "${PW_DEFAULT_VULKAN_USE}" \ --field="3D API : :CB" "${PW_DEFAULT_VULKAN_USE}" \
...@@ -496,7 +486,7 @@ else ...@@ -496,7 +486,7 @@ else
"${pw_yad_v13_0}" --key=$KEY --notebook --expand \ "${pw_yad_v13_0}" --key=$KEY --notebook --expand \
--width="${PW_MAIN_SIZE_W}" --height="${PW_MAIN_SIZE_H}" --no-buttons \ --width="${PW_MAIN_SIZE_W}" --height="${PW_MAIN_SIZE_H}" --no-buttons \
--auto-close --window-icon="$PW_GUI_ICON_PATH/portproton.svg" \ --auto-close --window-icon="$PW_GUI_ICON_PATH/portproton.svg" \
--title "${portname}-${install_ver} (${scripts_install_ver})" \ --title "PortProton-${install_ver} (${scripts_install_ver})" \
--tab-pos=bottom \ --tab-pos=bottom \
--tab="$loc_mg_autoinstall"!"$PW_GUI_ICON_PATH/$TAB_SIZE.png"!"" \ --tab="$loc_mg_autoinstall"!"$PW_GUI_ICON_PATH/$TAB_SIZE.png"!"" \
--tab="$loc_mg_emulators"!"$PW_GUI_ICON_PATH/$TAB_SIZE.png"!"" \ --tab="$loc_mg_emulators"!"$PW_GUI_ICON_PATH/$TAB_SIZE.png"!"" \
...@@ -508,7 +498,7 @@ else ...@@ -508,7 +498,7 @@ else
"${pw_yad_v13_0}" --key=$KEY --notebook --expand \ "${pw_yad_v13_0}" --key=$KEY --notebook --expand \
--width="${PW_MAIN_SIZE_W}" --height="${PW_MAIN_SIZE_H}" --no-buttons \ --width="${PW_MAIN_SIZE_W}" --height="${PW_MAIN_SIZE_H}" --no-buttons \
--auto-close --window-icon="$PW_GUI_ICON_PATH/portproton.svg" \ --auto-close --window-icon="$PW_GUI_ICON_PATH/portproton.svg" \
--title "${portname}-${install_ver} (${scripts_install_ver})" \ --title "PortProton-${install_ver} (${scripts_install_ver})" \
--tab-pos=bottom \ --tab-pos=bottom \
--tab="$loc_mg_installed"!"$PW_GUI_ICON_PATH/$TAB_SIZE.png"!"" \ --tab="$loc_mg_installed"!"$PW_GUI_ICON_PATH/$TAB_SIZE.png"!"" \
--tab="$loc_mg_autoinstall"!"$PW_GUI_ICON_PATH/$TAB_SIZE.png"!"" \ --tab="$loc_mg_autoinstall"!"$PW_GUI_ICON_PATH/$TAB_SIZE.png"!"" \
......
#!/usr/bin/env bash #!/usr/bin/env bash
#Author: Castro-Fidel (linux-gaming.ru) #Author: Castro-Fidel (linux-gaming.ru)
#SCRIPTS_NEXT_VERSION=2278 #SCRIPTS_NEXT_VERSION=2279
######################################################################## ########################################################################
export PW_MANGOHUD="0" export PW_MANGOHUD="0"
export DEFAULT_MANGOHUD_CONFIG="arch,cpu_mhz,cpu_temp,engine_version,gamemode,gpu_core_clock,gpu_mem_clock,gpu_name,gpu_temp,ram,resolution,vkbasalt,vram,vulkan_driver,wine" export DEFAULT_MANGOHUD_CONFIG="arch,cpu_mhz,cpu_temp,engine_version,gamemode,gpu_core_clock,gpu_mem_clock,gpu_name,gpu_temp,ram,resolution,vkbasalt,vram,vulkan_driver,wine"
......
...@@ -8,7 +8,7 @@ export port_ver=1.5 ...@@ -8,7 +8,7 @@ export port_ver=1.5
######################################################################## ########################################################################
cd "$(dirname "$(readlink -f "$0")")" cd "$(dirname "$(readlink -f "$0")")"
script_path="$(pwd)" script_path="$(pwd)"
def_path="${HOME}/${portname}" def_path="${HOME}/PortProton"
######################################################################## ########################################################################
fatal () { fatal () {
echo -e "\n${1}\n" echo -e "\n${1}\n"
...@@ -16,12 +16,12 @@ fatal () { ...@@ -16,12 +16,12 @@ fatal () {
} }
######################################################################## ########################################################################
if [ "$(id -u)" == "0" ] ; then if [ "$(id -u)" == "0" ] ; then
$yad_gui --error --text "\nDo not run ${portname} from the superuser!" 2>/dev/null $yad_gui --error --text "\nDo not run PortProton from the superuser!" 2>/dev/null
fatal "Do not run the script from the superuser!" fatal "Do not run the script from the superuser!"
fi fi
######################################################################## ########################################################################
[ -z "${XDG_DATA_HOME}" ] && export XDG_DATA_HOME="$HOME/.local/share" [ -z "${XDG_DATA_HOME}" ] && export XDG_DATA_HOME="$HOME/.local/share"
PP_CONFIG_FILE="${HOME}/.config/${portname}.conf" PP_CONFIG_FILE="${HOME}/.config/PortProton.conf"
if [ -f "${XDG_DATA_HOME}/PortWINE/PortProton/data/scripts/start.sh" ] ; then if [ -f "${XDG_DATA_HOME}/PortWINE/PortProton/data/scripts/start.sh" ] ; then
echo "${XDG_DATA_HOME}/PortWINE/PortProton" > "${PP_CONFIG_FILE}" echo "${XDG_DATA_HOME}/PortWINE/PortProton" > "${PP_CONFIG_FILE}"
elif [ -f "${HOME}/PortWINE/PortProton/data/scripts/start.sh" ] ; then elif [ -f "${HOME}/PortWINE/PortProton/data/scripts/start.sh" ] ; then
...@@ -31,7 +31,7 @@ fi ...@@ -31,7 +31,7 @@ fi
if [ "$script_path" == "/usr/bin" ] && [ -f "${PP_CONFIG_FILE}" ] ; then if [ "$script_path" == "/usr/bin" ] && [ -f "${PP_CONFIG_FILE}" ] ; then
export PORT_WINE_PATH="$(cat "${PP_CONFIG_FILE}" | head -n 1)" export PORT_WINE_PATH="$(cat "${PP_CONFIG_FILE}" | head -n 1)"
if [ -f "${PORT_WINE_PATH}/data/scripts/start.sh" ] ; then if [ -f "${PORT_WINE_PATH}/data/scripts/start.sh" ] ; then
echo "${port_ver}" > "${PORT_WINE_PATH}/data/tmp/${portname}_ver" echo "${port_ver}" > "${PORT_WINE_PATH}/data/tmp/PortProton_ver"
/usr/bin/env bash "${PORT_WINE_PATH}/data/scripts/start.sh" "$@" /usr/bin/env bash "${PORT_WINE_PATH}/data/scripts/start.sh" "$@"
exit 0 exit 0
else else
...@@ -78,7 +78,7 @@ export INSTALLING_PORT=1 ...@@ -78,7 +78,7 @@ export INSTALLING_PORT=1
if [[ "${PW_USE_NS}" != "1" ]] ; then if [[ "${PW_USE_NS}" != "1" ]] ; then
case $PW_SET_LANG in case $PW_SET_LANG in
"Russian") "Russian")
inst1=$($yad_gui --title "Install ${portname}" --text "Выберите путь для установки (обновления) ${portname},\nили оставьте его по умолчанию.\n\nВнимание:\nУстанавливать необходимо на файловую систему Linux (ext4, btrfs и прочие)." --list --radiolist --width=600 --height=200 \ inst1=$($yad_gui --title "Install PortProton" --text "Выберите путь для установки (обновления) PortProton,\nили оставьте его по умолчанию.\n\nВнимание:\nУстанавливать необходимо на файловую систему Linux (ext4, btrfs и прочие)." --list --radiolist --width=600 --height=200 \
--column="Выбор" --column "Путь:" \ --column="Выбор" --column "Путь:" \
TRUE "${def_path}" \ TRUE "${def_path}" \
FALSE "Другой путь...") FALSE "Другой путь...")
...@@ -91,7 +91,7 @@ if [[ "${PW_USE_NS}" != "1" ]] ; then ...@@ -91,7 +91,7 @@ if [[ "${PW_USE_NS}" != "1" ]] ; then
D_PATH="$($yad_gui --file --directory --title="Выберите путь..." --width=800 --height=800)" ;; D_PATH="$($yad_gui --file --directory --title="Выберите путь..." --width=800 --height=800)" ;;
esac ;; esac ;;
"English") "English")
inst1=$($yad_gui --title "Install ${portname}" --text "Select the installation path (update) port,\nor leave it in default." --list --radiolist --width=600 --height=200 \ inst1=$($yad_gui --title "Install PortProton" --text "Select the installation path (update) port,\nor leave it in default." --list --radiolist --width=600 --height=200 \
--column="Set..." --column "Path:" \ --column="Set..." --column "Path:" \
TRUE "${def_path}" \ TRUE "${def_path}" \
FALSE "Other path...") FALSE "Other path...")
...@@ -105,16 +105,16 @@ if [[ "${PW_USE_NS}" != "1" ]] ; then ...@@ -105,16 +105,16 @@ if [[ "${PW_USE_NS}" != "1" ]] ; then
esac ;; esac ;;
esac esac
[[ -z "${D_PATH}" ]] && fatal [[ -z "${D_PATH}" ]] && fatal
echo "${D_PATH}" | grep -i "${portname}" 2>/dev/null || D_PATH="${D_PATH}/${portname}" echo "${D_PATH}" | grep -i "PortProton" 2>/dev/null || D_PATH="${D_PATH}/PortProton"
case $PW_SET_LANG in case $PW_SET_LANG in
"Russian") "Russian")
progress_bar() { progress_bar() {
$yad_gui --progress --title="Установка..." --text="Настройка ${portname}" --pulsate --auto-close --auto-kill --width=500 $yad_gui --progress --title="Установка..." --text="Настройка PortProton" --pulsate --auto-close --auto-kill --width=500
} ;; } ;;
"English") "English")
progress_bar() { progress_bar() {
$yad_gui --progress --title="Install..." --text="Install ${portname}" --pulsate --auto-close --auto-kill --width=500 $yad_gui --progress --title="Install..." --text="Install PortProton" --pulsate --auto-close --auto-kill --width=500
} ;; } ;;
esac esac
else else
...@@ -133,10 +133,10 @@ else ...@@ -133,10 +133,10 @@ else
fi fi
######################################################################## ########################################################################
mkdir -p "${PORT_WINE_PATH}/data/tmp" mkdir -p "${PORT_WINE_PATH}/data/tmp"
echo "${port_ver}" > "${PORT_WINE_PATH}/data/tmp/${portname}_ver" echo "${port_ver}" > "${PORT_WINE_PATH}/data/tmp/PortProton_ver"
case "${PW_SET_LANG}" in case "${PW_SET_LANG}" in
"Russian") echo "RUS" > "${PORT_WINE_PATH}/data/tmp/${portname}_loc" ;; "Russian") echo "RUS" > "${PORT_WINE_PATH}/data/tmp/PortProton_loc" ;;
"English") echo "ENG" > "${PORT_WINE_PATH}/data/tmp/${portname}_loc" ;; "English") echo "ENG" > "${PORT_WINE_PATH}/data/tmp/PortProton_loc" ;;
esac esac
######################################################################## ########################################################################
if [[ "${PW_USE_NS}" != "1" ]] ; then if [[ "${PW_USE_NS}" != "1" ]] ; then
......
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