Compare commits

...

6 Commits

5 changed files with 76 additions and 34 deletions

View File

@ -2,11 +2,23 @@ You can help us in the development of the project on the website: https://linux-
----------------------------------------
Changelog:
###Scripts version 2425### / stable / Дата: 02.07.2025 / Download update size: 4 megabytes
###Scripts version 2427### / Date: 04.07.2025 / Download update size: 380 megabytes
* updated WINE_LG to version "10-11"
* updated PROTON_LG to version "10-8" (repackaging from GE-Proton10-8)
* updated versions:
- DXVK_GIT "2.6.1-368" (together with dxvk-nvapi)
- VKD3D_GIT "1.1-4655" (together with vkd3d-shader)
* added division of temporary directory for different users
* fixed updating scripts and downloading archives in gamescope sessions with native PortProton
###Scripts version 2426### / Date: 04.07.2025 / Download update size: 4 megabytes
* expanding integration with PPQT (alpha)
###Scripts version 2425### / stable / Date: 02.07.2025 / Download update size: 4 megabytes
* updated Spanish translation (thanks to BlackSnaker)
* improved NVIDIA RTX GPU detection (thanks to Boria138)
###Scripts version 2424### / stable / Дата: 01.07.2025 / Download update size: 380 megabytes
###Scripts version 2424### / stable / Date: 01.07.2025 / Download update size: 380 megabytes
* cumulative update to the stable version of PortProton scripts
###Scripts version 2423### / Date: 01.07.2025 / Download update size: 4 megabytes

View File

@ -2,6 +2,18 @@
-----------------------------------------
История изменений:
###Scripts version 2427### / Дата: 04.07.2025 / Размер скачиваемого обновления: 380 мегабайт
* обновлен WINE_LG до версии "10-11"
* обновлен PROTON_LG до версии "10-8" (перепаковка с GE-Proton10-8)
* обновлены версии:
- DXVK_GIT "2.6.1-368" (совместно с dxvk-nvapi)
- VKD3D_GIT "1.1-4655" (совместно vkd3d-shader)
* добавлено разделение временного каталога для разных пользователей
* исправлено обновление скриптов и скачивание архивов в gamescope сессии с нативным PortProton
###Scripts version 2426### / Дата: 04.07.2025 / Размер скачиваемого обновления: 4 мегабайта
* расширена интеграция с PPQT (альфа)
###Scripts version 2425### / stable / Дата: 02.07.2025 / Размер скачиваемого обновления: 4 мегабайта
* обновлен Испанский перевод (спасибо BlackSnaker)
* улучшено определение видеокарт NVIDIA RTX (спасибо Boria138)

View File

@ -2,21 +2,29 @@
# Author: Castro-Fidel (linux-gaming.ru)
# shellcheck disable=SC2034
########################################################################
$PW_DEBUG
print_error () { printf "\E[31m%s Error: $@ %s\e[0m\n" ;}
process_log () {
if [[ $PROCESS_LOG == "1" ]] ; then
local filter_word="mono|gecko"
echo "$@" | sed -r "/$filter_word/Id" >> "$PW_TMPFS_PATH/process.log"
fi
}
export -f process_log
print_error () { printf "\E[31m%s Error: $@ %s\e[0m\n" ; process_log "$@" ;}
export -f print_error
print_warning () { printf "\E[33m%s Warning: $@ %s\e[0m\n" ;}
print_warning () { printf "\E[33m%s Warning: $@ %s\e[0m\n" ; process_log "$@" ;}
export -f print_warning
print_info () { printf "\E[36m%s Info: $@ %s\e[0m\n" ;}
print_info () { printf "\E[36m%s Info: $@ %s\e[0m\n" ; process_log "$@" ;}
export -f print_info
print_ok () { printf "\E[35m%s OK: $@ %s\e[0m\n" ;}
print_ok () { printf "\E[35m%s OK: $@ %s\e[0m\n" ; process_log "$@" ;}
export -f print_ok
print_var () { for vp in $@ ; do print_info "${vp}=${!vp}" ; done ;}
print_var () { for vp in $@ ; do echo "${vp}=${!vp}" ; done ;}
export -f print_var
print_wrapped () {
@ -620,6 +628,10 @@ try_download () {
if [[ "$silent" == "true" ]] ; then
curl -f -# -A 'Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)' -H 'Cache-Control: no-cache, no-store' \
-H 'Pragma: no-cache' -L "${FIRST_URL[@]}" -o "$dest" 2>&1
elif [[ $PROCESS_LOG == "1" ]] ; then
curl -f -# -A 'Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)' -H 'Cache-Control: no-cache, no-store' \
-H 'Pragma: no-cache' -L "${FIRST_URL[@]}" -o "$dest" 2>&1 \
| tr '\r' '\n' | sed -ur 's|[# ]+||g;s|100||g;s|0-||g;s|.*=.*||g' >> "$PW_TMPFS_PATH/process.log"
else
curl -f -# -A 'Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)' -H 'Cache-Control: no-cache, no-store' \
-H 'Pragma: no-cache' -L "${FIRST_URL[@]}" -o "$dest" 2>&1 | \
@ -861,7 +873,7 @@ background_pid () {
arg2=$2 # Название команды
arg3=$3 # Номер процесса (1,2,3..)
if [[ "$START_FROM_STEAM" == 1 ]] \
if check_start_from_steam \
|| [[ "$PW_GUI_DISABLED_CS" == 1 ]] \
|| [[ -n "$PW_DEBUG" ]] ; then
case $arg1 in
@ -4437,9 +4449,15 @@ pw_run () {
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 "WINELOADER" "VKD3D_CONFIG" "PW_LD_LIBRARY_PATH" "PATH" "WINEESYNC" "WINEFSYNC" "WINEFSYNC_FUTEX2"
print_var "WINEDLLPATH" "WINE_CPU_TOPOLOGY" "PW_RUN_GAMESCOPE" "LD_LIBRARY_PATH" "PW_VK_ICD_FILENAMES" "PW_TASKSET_SLR"
echo "##### Current variables #####" > "$PW_TMPFS_PATH/var.log"
for var in "WINEDIR" "WINEPREFIX" "WINEDLLOVERRIDES" "PATH_TO_GAME" "PW_WINE_USE" "PW_VULKAN_USE" "VULKAN_DRIVER_NAME" \
"WINELOADER" "VKD3D_CONFIG" "PW_LD_LIBRARY_PATH" "PATH" "WINEESYNC" "WINEFSYNC" "WINEFSYNC_FUTEX2" \
"WINEDLLPATH" "WINE_CPU_TOPOLOGY" "PW_RUN_GAMESCOPE" "LD_LIBRARY_PATH" "PW_VK_ICD_FILENAMES" "PW_TASKSET_SLR"
do
print_var "$var" | tee -a "$PW_TMPFS_PATH/var.log"
done
proxy_launch_parameters=${LAUNCH_PARAMETERS//\\\\/\\}
if [[ "$PW_USE_RUNTIME" == 1 ]] \
&& [[ "$PW_WINE_USE" != "USE_SYSTEM_WINE" ]]

View File

@ -108,11 +108,11 @@ unset PW_TERM PW_EXEC_FROM_DESKTOP WEBKIT_DISABLE_DMABUF_RENDERER PW_AMD_VULKAN_
export PORT_WINE_TMP_PATH="${PORT_WINE_PATH}/data/tmp"
rm -f "$PORT_WINE_TMP_PATH"/*{exe,msi,tar}*
if mkdir -p "/tmp/PortProton" ; then
export PW_TMPFS_PATH="/tmp/PortProton"
if mkdir -p "/tmp/PortProton_$USER" ; then
export PW_TMPFS_PATH="/tmp/PortProton_$USER"
else
create_new_dir "${PORT_WINE_PATH}/data/tmp/PortProton"
export PW_TMPFS_PATH="${PORT_WINE_PATH}/data/tmp/PortProton"
create_new_dir "${PORT_WINE_PATH}/data/tmp/PortProton_$USER"
export PW_TMPFS_PATH="${PORT_WINE_PATH}/data/tmp/PortProton_$USER"
fi
echo "" > "${PW_TMPFS_PATH}/tmp_yad_form"
@ -292,11 +292,9 @@ if [[ -z $PW_WINE_DPI_VALUE ]] ; then
export PW_WINE_DPI_VALUE="recommended"
fi
if check_flatpak ; then
if check_gamescope_session
then PW_TERM="env LANG=C xterm -fullscreen -bg black -fg white -e"
else PW_TERM="env LANG=C xterm -bg black -fg white -e"
fi
if check_gamescope_session
then PW_TERM="env LANG=C xterm -fullscreen -bg black -fg white -e"
else PW_TERM="env LANG=C xterm -bg black -fg white -e"
fi
pw_check_and_download_plugins
@ -315,18 +313,19 @@ fi
if ! check_flatpak ; then
if [[ -f "${PW_TMPFS_PATH}/portproton.lock" ]] ; then
print_warning "Found lock file: ${PW_TMPFS_PATH}/portproton.lock"
if [[ $START_FROM_STEAM != "1" ]]
if ! check_start_from_steam
then yad_question "${translations[A running PortProton session was detected.\\nDo you want to end the previous session?]}" || exit 0
fi
fi
touch "${PW_TMPFS_PATH}/portproton.lock"
rm_lock_file () {
echo "Removing the lock file..."
rm -fv "${PW_TMPFS_PATH}/portproton.lock" && echo "OK"
}
trap "rm_lock_file" EXIT
fi
rm_log_lock () {
rm -fv "${PW_TMPFS_PATH}"/*.log
rm -fv "${PW_TMPFS_PATH}/portproton.lock"
}
trap "rm_log_lock" EXIT
if check_flatpak ; then
try_remove_dir "${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}"
else pw_download_libs
@ -413,13 +412,13 @@ EOF
while read -r line
do
export portwine_exe="$PORT_WINE_PATH/data/prefixes/$PW_PREFIX_NAME/$line"
if [[ $START_FROM_STEAM == "1" ]]
if check_start_from_steam
then portwine_output_yad_shortcut --silent
else portwine_create_shortcut
fi
done < "$PORT_WINE_PATH/data/prefixes/$PW_PREFIX_NAME/.create_shortcut"
fi
if [[ $START_FROM_STEAM != "1" ]]
if ! check_start_from_steam
then yad_info "${translations[Unpack is DONE for prefix:]} <b>\"${PW_PREFIX_NAME}\"</b>."
fi
exit 0

View File

@ -1,6 +1,6 @@
#!/usr/bin/env bash
#Author: Castro-Fidel (linux-gaming.ru)
#SCRIPTS_NEXT_VERSION=2425
#SCRIPTS_NEXT_VERSION=2427
#SCRIPTS_STABLE_VERSION=2425
########################################################################
export AI_TOP_GAMES="PW_LGC PW_VKPLAY PW_EPIC PW_BATTLE_NET PW_WORLD_OF_SEA_BATTLE PW_RUSSIAN_FISHING PW_HO_YO_PLAY PW_FARLIGHT84 PW_WARFRAME PW_WGC PW_UBISOFT"
@ -42,6 +42,7 @@ export PW_USE_GALLIUM_NINE="0"
export PW_USE_GALLIUM_ZINK="0"
export PW_USE_WINED3D_VULKAN="0"
export PW_USE_SUPPLIED_DXVK_VKD3D="1"
export WINEUSERNAME="steamuser"
###DEFAULT_WINE###
export PW_WINE_USE="PROTON_LG"
export PW_PLUGINS_VER="_v20"
@ -49,8 +50,8 @@ export PW_FAKE_DLSS_VER="230506"
export PW_FAKE_DLSS_3_VER="0.9.1-plus"
export PW_GALLIUM_NINE_VER="0.10"
###WINE_AND_PROTON_LG###
export PW_PROTON_LG_VER="PROTON_LG_10-4"
export PW_WINE_LG_VER="WINE_LG_10-10-1"
export PW_PROTON_LG_VER="PROTON_LG_10-8"
export PW_WINE_LG_VER="WINE_LG_10-11"
export PW_WINE_FULLSCREEN_FSR="1"
export WINE_FULLSCREEN_FSR_MODE="ultra"
###DXVK_AND_VKD3D###
@ -58,9 +59,9 @@ export PW_VULKAN_USE="2"
export VKD3D_LIMIT_TESS_FACTORS="64"
export DXVK_LEGACY_VER="1.6.1"
export DXVK_STABLE_VER="1.10.3-28"
export DXVK_GIT_VER="2.6.1-255"
export DXVK_GIT_VER="2.6.1-368"
export VKD3D_STABLE_VER="1.1-2602"
export VKD3D_GIT_VER="1.1-4591"
export VKD3D_GIT_VER="1.1-4655"
###VKBASALT###
export PW_VKBASALT_EFFECTS="Curves:cas"
export PW_VKBASALT_FFX_CAS="0.50"