Commit 51d569b6 authored by Mikhail Tergoev's avatar Mikhail Tergoev

Scripts version 2047

parent 63beb66e
......@@ -7,6 +7,15 @@
* добавить проверку количества db файлов на один exe
* заниматься только развитием проекта за счет вашей подписки на https://boosty.to/portwine-linux.ru
-----------------------------------------
###Scripts version 2047###
* автоматическое отключение gamemode для системы Red Hat (исправляет долгую загрузку wine)
* обновлен PROTON_STEAM до версии 6.8-3 (cовместно с dxvk, vkd3d и nvapi)
* обновлен PROTON_GE (dxvk, vkd3d из 6.21-1 и nvapi до внрсии 0.5)
* добавлены библиотеки для начальной поддержки Battle Eye
* обновлен контейнер до актуального состояния steam runtime soldiers
* добавлена поддержка DLSS (тест)
* добавлена поддержка DXR v1.1
###Scripts version 2046###
* update DXVK and VKD3D in PROTON_GE
......
......@@ -36,9 +36,7 @@
#
# Supported values: True, False
# dxgi.nvapiHack = True
# dxgi.nvapiHack = False
# Override maximum amount of device memory and shared system memory
# reported to the application. This may fix texture streaming issues
......
......@@ -179,9 +179,9 @@ pw_mangohud_check () {
export RUN_MANGOHUD=""
if [ "${PW_MANGOHUD}" == "1" ] ; then
if [ "${PW_VULKAN_USE}" = "0" ] ; then
export RUN_MANGOHUD="mangohud --dlsym"
export RUN_MANGOHUD="${PW_WINELIB}/portable/bin/mangohud --dlsym"
else
export RUN_MANGOHUD="mangohud"
export RUN_MANGOHUD="${PW_WINELIB}/portable/bin/mangohud"
fi
else
export DISABLE_MANGOHUD=1
......@@ -200,9 +200,13 @@ pw_vkbasalt_check () {
fi
sed -ri "s/casSharpness .*/casSharpness = ${PW_VKBASALT_FFX_CAS}/g" "${PORT_WINE_PATH}/data/vkBasalt.conf"
export VKBASALT_CONFIG_FILE="${PORT_WINE_PATH}/data/vkBasalt.conf"
sed -i s/'> = 0.05;'/'> = 0.035;'/ "${PW_WINELIB}/runtime/local/share/reshade/shaders/FilmGrain2.fx"
sed -i s/'> = 0.65;'/'> = 0.4;'/ "${PW_WINELIB}/runtime/local/share/reshade/shaders/Curves.fx"
sed -i s/'> = 0.8;'/'> = 0.9;'/ "${PW_WINELIB}/runtime/local/share/reshade/shaders/Bloom.fx"
sed -i s/'> = 0.05;'/'> = 0.035;'/ "${PW_WINELIB}/pressure-vessel/reshade/shaders/FilmGrain2.fx"
sed -i s/'> = 0.65;'/'> = 0.4;'/ "${PW_WINELIB}/pressure-vessel/reshade/shaders/Curves.fx"
sed -i s/'> = 0.8;'/'> = 0.9;'/ "${PW_WINELIB}/pressure-vessel/reshade/shaders/Bloom.fx"
if [ ! -z "${VK_INSTANCE_LAYERS}" ]
then export VK_INSTANCE_LAYERS="VK_LAYER_VKBASALT_post_processing:${VK_INSTANCE_LAYERS}"
else export VK_INSTANCE_LAYERS="VK_LAYER_VKBASALT_post_processing"
fi
else
export DISABLE_VKBASALT=1
fi
......@@ -315,12 +319,6 @@ init_wine_ver () {
done
}
cabextract_fix () {
[ ! -f "${WINEDIR}/bin/cabextract" ] && try_copy_file "${PW_WINELIB}/runtime/bin/cabextract" "${WINEDIR}/bin/cabextract"
[ ! -f "${WINEDIR}/lib64/libmspack.so.0" ] && try_copy_file "${PW_WINELIB}/runtime/lib/x86_64-linux-gnu/libmspack.so.0" "${WINEDIR}/lib64/libmspack.so.0"
[ ! -f "${WINEDIR}/lib64/libmspack.so.0.1.0" ] && try_copy_file "${WINEDIR}/lib64/libmspack.so.0" "${WINEDIR}/lib64/libmspack.so.0.1.0"
}
sszen() {
zenity --progress --title="Settings..." --text="Updating parameters" --pulsate --auto-close --width=500 --height=90 --no-cancel
}
......@@ -349,8 +347,8 @@ pw_download_libs () {
do try_remove_dir "${PORT_WINE_TMP_PATH}/${RM_LIBS}"
done
fi
if [[ ! -e "${PW_WINELIB}/runtime/bin/yad" || ! -e "${PW_WINELIB}/runtime/lib/p7zip/7z" \
|| ! -e "${PW_WINELIB}/runtime/bin/vkcube" || ! -e "${PW_WINELIB}/runtime/bin/xterm" || \
if [[ ! -e "${PW_WINELIB}/runtime/files/bin/yad" || ! -e "${PW_WINELIB}/runtime/files/lib/p7zip/7z" \
|| ! -e "${PW_WINELIB}/runtime/files/bin/vkcube" || ! -e "${PW_WINELIB}/runtime/files/bin/xterm" || \
-e "${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}.tar.xz" ]] ; then
print_info "Download and install libraries..."
if try_download "https://github.com/Castro-Fidel/PortWINE/releases/download/libs${PW_LIBS_VER}/libs${PW_LIBS_VER}.tar.xz" "${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}.tar.xz" ; then
......@@ -365,15 +363,15 @@ pw_download_libs () {
zenity_error_download && pw_download_libs
fi
fi
export pw_yad="${PW_WINELIB}/runtime/bin/yad"
export pw_yad_new="${PW_WINELIB}/runtime/bin/yad_new"
export pw_zstd="${PW_WINELIB}/runtime/bin/zstd"
export pw_7z="${PW_WINELIB}/runtime/lib/p7zip/7z"
export pw_yad="${PW_WINELIB}/runtime/files/bin/yad"
export pw_yad_new="${PW_WINELIB}/runtime/files/bin/yad_new"
export pw_zstd="${PW_WINELIB}/runtime/files/bin/zstd"
export pw_7z="${PW_WINELIB}/runtime/files/lib/p7zip/7z"
if [ -x "`which xterm 2>/dev/null`" ]; then
export SYS_XTERM=`which xterm`
export PW_XTERM="${SYS_XTERM} -geometry 159x37 -e"
else
export PW_XTERM="${PW_WINELIB}/runtime/bin/xterm -geometry 159x37 -e"
export PW_XTERM="${PW_WINELIB}/runtime/files/bin/xterm -geometry 159x37 -e"
fi
}
......@@ -503,6 +501,7 @@ stop_portwine () {
chmod -R 755 "${WINEPREFIX}"/drive_c/users/steamuser/Temp/
rm -fr "${WINEPREFIX}"/drive_c/users/steamuser/Temp/*
fi
try_remove_dir "${PW_WINELIB}/var"
exit 0
}
open_changelog () {
......@@ -914,7 +913,7 @@ gui_vkBasalt () {
--field="AMD FidelityFX - Contrast Adaptive Sharpening":SCL "${VKBASALT_FFX_CAS_GUI}" \
1> "${PORT_WINE_TMP_PATH}/tmp_yad_cas_set" &
"${pw_yad_new}" --paned --key="$KEY_FX_GUI" --height="600" --title="vkBasalt" --center --borders=10 \
"${pw_yad_new}" --paned --key="$KEY_FX_GUI" --height="450" --title="vkBasalt" --center --borders=10 \
--separator=" " --window-icon="$PW_GUI_ICON_PATH/port_proton.png" \
--button="CANCEL":1 --button="DISABLE VKBASALT":180 --button="ENABLE VKBASALT":182
YAD_VKBASALT_STATUS="$?"
......
......@@ -5,9 +5,9 @@
#Rating=5
#####################examples###########################
##export PW_COMMENT_DB="blablabla"
export PW_WINE_USE=PROTON_GE
export PW_WINE_USE=PROTON_STEAM
export PW_VULKAN_USE=1
export PW_WINDOWS_VER=7 # Set windows version 10, 7 or XP
#export PW_WINDOWS_VER=7 # Set windows version 10, 7 or XP
export PW_DLL_INSTALL="vcrun2019 d3dcompiler_47" # Install DDL in port prefix (used winetricks)
export WINEDLLOVERRIDES="concrt140,msvcp140,msvcp140_1,msvcp140_2,d3dcompiler_47=n"
......@@ -34,20 +34,21 @@ export PW_VKBASALT_FFX_CAS="0.5"
##export PW_LOG=0 # Enable debug mode fo terminal
##export PW_GUI_DISABLED_CS=1 # 1 = disabled GUI
eve_fix () {
export EVE_SHADER_CASH="$WINEPREFIX/drive_c/Games/EVE Online/SharedCache"
if [[ ! -f "$EVE_SHADER_CASH/tq/bin64/launchdarkly_client.pyd" ]] ; then
sleep 30
while check_process evelauncher.exe && [[ ! -f "$EVE_SHADER_CASH/tq/bin64/launchdarkly_client.pyd" ]]
do sleep 1
done
fi
sleep 2
try_remove_file "$EVE_SHADER_CASH/tq/launchdarkly_client.pyd"
try_copy_file "$EVE_SHADER_CASH/tq/bin64/launchdarkly_client.pyd" "$EVE_SHADER_CASH/tq/"
chmod 444 "$EVE_SHADER_CASH/tq/launchdarkly_client.pyd"
}
# eve_fix () {
# export EVE_SHADER_CASH="$WINEPREFIX/drive_c/Games/EVE Online/SharedCache"
# if [[ ! -f "$EVE_SHADER_CASH/tq/bin64/launchdarkly_client.pyd" ]] ; then
# sleep 30
# while check_process evelauncher.exe && [[ ! -f "$EVE_SHADER_CASH/tq/bin64/launchdarkly_client.pyd" ]]
# do sleep 1
# done
# fi
# sleep 2
# try_remove_file "$EVE_SHADER_CASH/tq/launchdarkly_client.pyd"
# try_copy_file "$EVE_SHADER_CASH/tq/bin64/launchdarkly_client.pyd" "$EVE_SHADER_CASH/tq/"
# chmod 444 "$EVE_SHADER_CASH/tq/launchdarkly_client.pyd"
# }
add_in_start_portwine () {
eve_fix &
# eve_fix &
echo ""
}
......@@ -40,20 +40,23 @@ start_portwine () {
if [[ ! -z "${LD_LIBRARY_PATH}" ]] ; then
if [[ -z "`echo ${LD_LIBRARY_PATH} | grep "${WINEDIR}/lib64:${WINEDIR}/lib"`" ]] ; then
export LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib:${LD_LIBRARY_PATH}"
export LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib:${PW_WINELIB}/portable/lib/\$LIB:${LD_LIBRARY_PATH}"
fi
else
export LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib"
export LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib:${PW_WINELIB}/portable/lib/\$LIB"
fi
if [[ ! -z "${VK_LAYER_PATH}" ]]
then export VK_LAYER_PATH="${PW_WINELIB}/portable/share/vulkan/implicit_layer.d/:${VK_LAYER_PATH}"
else export VK_LAYER_PATH="${PW_WINELIB}/portable/share/vulkan/implicit_layer.d/"
fi
if [ ! -z ${PATH_TMP} ]
then export PATH="${PATH_TMP}"
else export PATH_TMP="${PATH}"
fi
if [ ! -z "${PATH}" ]
then export PATH="${WINEDIR}/bin:${PATH}"
else export PATH="${WINEDIR}/bin"
then export PATH="${WINEDIR}/bin:${PATH}:${PW_WINELIB}/portable/bin"
else export PATH="${WINEDIR}/bin:${PW_WINELIB}/portable/bin"
fi
if [ "${PW_USE_GSTREAMER}" = 1 ] ; then
if [ -d "${WINEDIR}/lib64/gstreamer-1.0" ] ; then
export GST_PLUGIN_SYSTEM_PATH_1_0="${WINEDIR}/lib64/gstreamer-1.0:${WINEDIR}/lib/gstreamer-1.0"
......@@ -76,36 +79,20 @@ start_portwine () {
fi
echo "RUNTIME is disabled"
else
declare -a container_args=()
ld_preload="$LD_PRELOAD"
for word in $ld_preload; do
if [ -n "$word" ]; then
container_args+=("--ld-preload=$word")
fi
done
export PW_AND_RUNTIME_LIBRARY_PATH="/overrides/lib/x86_64-linux-gnu/:/overrides/lib/x86_64-linux-gnu/aliases/:/overrides/lib/i386-linux-gnu/:/overrides/lib/i386-linux-gnu/aliases/:"
if [[ ! -z "${PW_SANDBOX_HOME_PATH}" && -d "${PW_SANDBOX_HOME_PATH}" ]]; then
export pw_runtime="${PW_WINELIB}/pressure-vessel/bin/pressure-vessel-unruntime \
if [[ ! -z "${PW_SANDBOX_HOME_PATH}" && -d "${PW_SANDBOX_HOME_PATH}" ]]; then
export pw_runtime="${PW_WINELIB}/run \
--unshare-home \
--home="${PW_SANDBOX_HOME_PATH}" \
--runtime=${PW_WINELIB}/runtime \
--env-if-host=LD_PRELOAD=$LD_PRELOAD "${container_args[@]}" \
--"
else
export pw_runtime="${PW_WINELIB}/pressure-vessel/bin/pressure-vessel-unruntime \
export pw_runtime="${PW_WINELIB}/run \
--share-home \
--runtime=${PW_WINELIB}/runtime \
--env-if-host=LD_PRELOAD=$LD_PRELOAD "${container_args[@]}" \
--"
fi
export PRESSURE_VESSEL_COPY_RUNTIME=0
export PRESSURE_VESSEL_VARIABLE_DIR="${PW_WINELIB}/runtime"
export PRESSURE_VESSEL_REMOVE_GAME_OVERLAY=0
# export PRESSURE_VESSEL_VARIABLE_DIR="${PW_WINELIB}/runtime"
export PRESSURE_VESSEL_REMOVE_GAME_OVERLAY=1
export PRESSURE_VESSEL_IMPORT_VULKAN_LAYERS=1
export PRESSURE_VESSEL_GC_RUNTIMES=0
export PRESSURE_VESSEL_GC_LEGACY_RUNTIMES=1
export PRESSURE_VESSEL_RUNTIME_BASE="${PW_WINELIB}"
export PRESSURE_VESSEL_PREFIX="${PW_WINELIB}/pressure-vessel"
unset PRESSURE_VESSEL_FILESYSTEMS_RO
unset PRESSURE_VESSEL_FILESYSTEMS_RW
......@@ -121,9 +108,9 @@ start_portwine () {
else export PRESSURE_VESSEL_FILESYSTEMS_RW="${PWRTMRW}"
fi
done
if [ ! -f "${PW_WINELIB}/runtime/etc/os-release" ]
then try_force_link_file "${PW_WINELIB}/runtime/lib/os-release" "${PW_WINELIB}/runtime/etc/os-release"
fi
# if [ ! -f "${PW_WINELIB}/runtime/etc/os-release" ]
# then try_force_link_file "${PW_WINELIB}/runtime/lib/os-release" "${PW_WINELIB}/runtime/etc/os-release"
# fi
echo "RUNTIME is enabled"
fi
......@@ -172,13 +159,14 @@ start_portwine () {
then
try_copy_file "${WINEDIR}/lib/wine/nvapi/nvapi.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
try_copy_file "${WINEDIR}/lib64/wine/nvapi/nvapi64.dll" "${WINEPREFIX}/drive_c/windows/system32/"
var_winedlloverride_update "nvapi,nvapi64=n;nvcuda=b"
var_winedlloverride_update "nvapi,nvapi64,nvml=n;nvcuda=b"
if [[ ! -f "${WINEPREFIX}/drive_c/windows/system32/nvngx.dll" || ! -f "${WINEPREFIX}/drive_c/windows/system32/_nvngx.dll" ]] ; then
try_copy_file `find /usr/* -type f -name "nvngx.dll" 2>/dev/null | awk '{print $1}'` "${WINEPREFIX}/drive_c/windows/system32/"
try_copy_file `find /usr/* -type f -name "_nvngx.dll" 2>/dev/null | awk '{print $1}'` "${WINEPREFIX}/drive_c/windows/system32/"
fi
export DXVK_NVAPIHACK=0
else
var_winedlloverride_update "nvapi,nvapi64="
var_winedlloverride_update "nvapi,nvapi64,nvml,nvcuda="
fi
if [[ ! -z "${PW_WINEDBG_DISABLE}" && "${PW_WINEDBG_DISABLE}" != 0 ]] ; then
var_winedlloverride_update "winedbg.exe="
......@@ -195,7 +183,7 @@ start_portwine () {
else export WINE_ALLOW_XIM="0"
fi
if [[ ! -z "${PW_DXR_ON}" && "${PW_DXR_ON}" != 0 ]] ; then
var_vkd3d_config_update dxr
var_vkd3d_config_update dxr11
fi
export optirun_on=""
export check_optimus_manager=
......@@ -227,13 +215,25 @@ start_portwine () {
export __GLX_VENDOR_LIBRARY_NAME=nvidia
check_vk_icd_file
fi
#try copy nvml.dll to prefix
if ! try_copy_file "${WINEDIR}"/lib/wine/fakedlls/nvml.dll "${WINEPREFIX}/drive_c/windows/syswow64/"
then try_copy_file "${WINEDIR}"/lib/wine/i386-windows/nvml.dll "${WINEPREFIX}/drive_c/windows/syswow64/"
fi
if ! try_copy_file "${WINEDIR}"/lib64/wine/fakedlls/nvml.dll "${WINEPREFIX}/drive_c/windows/system32/"
then try_copy_file "${WINEDIR}"/lib64/wine/x86_64-windows/nvml.dll "${WINEPREFIX}/drive_c/windows/system32/"
fi
else
export DRI_PRIME=1
if [[ -f "/usr/share/vulkan/icd.d/radeon_icd.x86_64.json" ]] ; then
export VK_ICD_FILENAMES="/usr/share/vulkan/icd.d/radeon_icd.x86_64.json:/usr/share/vulkan/icd.d/radeon_icd.i686.json"
elif [[ -f "/etc/vulkan/icd.d/radeon_icd.x86_64.json" ]] ; then
export VK_ICD_FILENAMES="/etc/vulkan/icd.d/radeon_icd.x86_64.json:/etc/vulkan/icd.d/radeon_icd.i686.json"
fi
fi
case "$PW_FORCE_USE_VSYNC" in # 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
"0")
export vblank_mode=0
export __GL_SYNC_TO_VBLANK=0 ;;
unset vblank_mode
unset __GL_SYNC_TO_VBLANK ;;
"1")
export vblank_mode=1
export __GL_SYNC_TO_VBLANK=1 ;;
......@@ -251,7 +251,7 @@ start_portwine () {
setxkbmap us,ru
fi
fi
if [[ -x "`which "gamemoderun" 2>/dev/null`" && "$PW_USE_GAMEMODE" = "1" ]] ; then
if [[ -x "`which "gamemoderun" 2>/dev/null`" && "$PW_USE_GAMEMODE" = "1" && -z "`cat /etc/os-release | grep -i "red hat"`" ]] ; then
export PW_GAMEMODERUN=1
echo "Gamemod will be launched."
else
......@@ -284,14 +284,14 @@ start_portwine () {
export PW_WINE_USE=PROTON_STEAM
init_wine_ver
check_dirs_and_files_in_pfx
${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" wineboot -i
${pw_runtime} env LD_LIBRARY_PATH="${LD_LIBRARY_PATH}" "${WINELOADER}" wineboot -i
wait_wineserver &&
export PW_WINE_USE="${OLD_PW_WINE_USE}"
init_wine_ver
echo "${PW_WINE_USE}" > "${WINEPREFIX}/.wine_ver"
elif [[ -z "`cat ${WINEPREFIX}/.wine_ver | grep ${PW_WINE_USE}`" ]] ; then
check_dirs_and_files_in_pfx
${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" wineboot -i
${pw_runtime} env LD_LIBRARY_PATH="${LD_LIBRARY_PATH}" "${WINELOADER}" wineboot -i
wait_wineserver &&
echo "${PW_WINE_USE}" > "${WINEPREFIX}/.wine_ver"
fi
......@@ -307,9 +307,16 @@ start_portwine () {
if [ ! -d "${WINEPREFIX}/drive_c/users/steamuser/My Documents" ]
then try_force_link_dir "${WINEPREFIX}/drive_c/users/steamuser/Documents" "${WINEPREFIX}/drive_c/users/steamuser/My Documents"
fi
var_winedlloverride_update "steam_api,steam_api64,steamclient,steamclient64=n;lsteamclient,GameOverlayRenderer,GameOverlayRenderer64,winemenubuilder.exe="
#try copy beclient.dll to prefix
if ! try_copy_file "${WINEDIR}"/lib/wine/fakedlls/beclient.dll "${WINEPREFIX}/drive_c/windows/syswow64/"
then try_copy_file "${WINEDIR}"/lib/wine/i386-windows/beclient.dll "${WINEPREFIX}/drive_c/windows/syswow64/"
fi
if ! try_copy_file "${WINEDIR}"/lib64/wine/fakedlls/beclient_x64.dll "${WINEPREFIX}/drive_c/windows/system32/"
then try_copy_file "${WINEDIR}"/lib64/wine/x86_64-windows/beclient_x64.dll "${WINEPREFIX}/drive_c/windows/system32/"
fi
var_winedlloverride_update "beclient,beclient_x64=b,n;steam_api,steam_api64,steamclient,steamclient64=n;lsteamclient,GameOverlayRenderer,GameOverlayRenderer64,winemenubuilder.exe="
# export TOTAL_VRAM=`"${PW_WINELIB}/runtime/bin/glxinfo" -B | grep Total | awk -F: '{print $2}' | awk '{print $1}'`
# export TOTAL_VRAM=`"${PW_WINELIB}/runtime/files/bin/glxinfo" -B | grep Total | awk -F: '{print $2}' | awk '{print $1}'`
# echo "TOTAL_VRAM=${TOTAL_VRAM}"
[[ "${PW_VULKAN_USE}" = "vkd3d" ]] && export PW_VULKAN_USE=1
......@@ -317,7 +324,13 @@ start_portwine () {
echo "Try copy dxvk_config file"
try_copy_file "${WINEDIR}/lib/wine/dxvk/dxvk_config.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
try_copy_file "${WINEDIR}/lib64/wine/dxvk/dxvk_config.dll" "${WINEPREFIX}/drive_c/windows/system32/"
echo "Try copy native VKD3D files"
try_copy_file "${WINEDIR}/lib/vkd3d/libvkd3d-shader-1.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
try_copy_file "${WINEDIR}/lib64/vkd3d/libvkd3d-shader-1.dll" "${WINEPREFIX}/drive_c/windows/system32/"
for wine_vkd3d_dll in d3d12 libvkd3d-proton-utils-3 ; do
try_copy_file "${WINEDIR}/lib/wine/vkd3d-proton/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
try_copy_file "${WINEDIR}/lib64/wine/vkd3d-proton/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/"
done
if [[ "${PW_VULKAN_USE}" = "0" || "${PW_VULKAN_USE}" = "1" ]] ; then
echo "Try copy native DXGI"
if ! try_copy_file "${WINEDIR}"/lib/wine/fakedlls/dxgi.dll "${WINEPREFIX}/drive_c/windows/syswow64/"
......@@ -330,7 +343,6 @@ start_portwine () {
if [ "${PW_VULKAN_USE}" = "0" ] ; then
echo "Use OpenGL"
export MESA_GLSL_CACHE_DIR="${PORT_WINE_TMP_PATH}"
export __GLX_VENDOR_LIBRARY_NAME=nvidia
export GL_YIELD="NOTHING"
for wine_build_dll in d3d11 d3d10 d3d10core d3d10_1 d3d9 ; do
if ! try_copy_file "${WINEDIR}/lib/wine/${wine_build_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
......@@ -350,13 +362,6 @@ start_portwine () {
try_copy_file "${WINEDIR}/lib64/wine/dxvk/${wine_dxvk_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/"
var_winedlloverride_update "${wine_dxvk_dll}=n"
done
echo "Try copy native VKD3D files"
try_copy_file "${WINEDIR}/lib/vkd3d/libvkd3d-shader-1.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
try_copy_file "${WINEDIR}/lib64/vkd3d/libvkd3d-shader-1.dll" "${WINEPREFIX}/drive_c/windows/system32/"
for wine_vkd3d_dll in d3d12 libvkd3d-proton-utils-3 ; do
try_copy_file "${WINEDIR}/lib/wine/vkd3d-proton/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
try_copy_file "${WINEDIR}/lib64/wine/vkd3d-proton/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/"
done
var_winedlloverride_update "d3d12=n;dxgi=b"
else
echo "Use DXVK only."
......@@ -412,10 +417,9 @@ start_portwine () {
if [ "${PW_WINE_VER}" != "PROTON_STEAM" ] ; then
export PW_WINE_VER_FROM_DB="${PW_WINE_USE}"
export PW_WINE_VER="PROTON_STEAM"
init_wine_ver &&
cabextract_fix
init_wine_ver
fi
${pw_runtime} xterm -e env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" \
${pw_runtime} xterm -e env PATH="${PATH}" LD_LIBRARY_PATH="${LD_LIBRARY_PATH}" \
"${PORT_WINE_TMP_PATH}/winetricks" -q -r ${PW_DLL_NEED_INSTALL}
if [ "${PW_WINE_VER_FROM_DB}" != "PROTON_STEAM" ] ; then
/bin/bash -c ${pw_full_command_line[*]} &
......@@ -427,11 +431,12 @@ start_portwine () {
if [[ ! -z "${PW_WINDOWS_VER}" && `echo "$PW_WINDOWS_VER" | sed 's/.*/\L&/'` == "xp" ]] ; then
export PW_WINDOWS_VER="xp64"
fi
${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" \
${pw_runtime} env PATH="${PATH}" LD_LIBRARY_PATH="${LD_LIBRARY_PATH}" \
"${WINELOADER}" winecfg -v `echo "win${PW_WINDOWS_VER}" | sed 's/.*/\L&/'`
wait_wineserver &&
echo "Set to win${PW_WINDOWS_VER}"
fi
for tmp_trash in `find ./ -type f -name "${WINEPREFIX}/drive_c/*.tmp" 2>/dev/null`; do rm -f ${tmp_trash} ; done
pw_stop_progress_bar &&
pw_tray_icon
pw_start_progress_bar_cs "Start ${portname}... Please wait..."
......@@ -452,19 +457,19 @@ pw_run () {
if [ "${PW_LOG}" == 1 ] ; then
export PW_LOG_TO_FILE="${PORT_WINE_PATH}/${portname}.log"
if [[ ! -z "${PW_GAMEMODERUN}" && "${PW_GAMEMODERUN}" != 0 ]] ; then
${optirun_on} gamemoderun ${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" \
${optirun_on} gamemoderun ${pw_runtime} env VK_LAYER_PATH="${VK_LAYER_PATH}" PATH="${PATH}" LD_LIBRARY_PATH="${LD_LIBRARY_PATH}" \
${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} &>>"${PW_LOG_TO_FILE}"
else
${optirun_on} ${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" \
${optirun_on} ${pw_runtime} env VK_LAYER_PATH="${VK_LAYER_PATH}" PATH="${PATH}" LD_LIBRARY_PATH="${LD_LIBRARY_PATH}" \
${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} &>>"${PW_LOG_TO_FILE}"
fi
else
[ "${PW_USE_TERMINAL}" != "1" ] && export PW_TERM=""
if [[ ! -z "${PW_GAMEMODERUN}" && "${PW_GAMEMODERUN}" != 0 ]] ; then
$PW_TERM ${optirun_on} gamemoderun ${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" \
$PW_TERM ${optirun_on} gamemoderun ${pw_runtime} env VK_LAYER_PATH="${VK_LAYER_PATH}" PATH="${PATH}" LD_LIBRARY_PATH="${LD_LIBRARY_PATH}" \
${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}
else
$PW_TERM ${optirun_on} ${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" \
$PW_TERM ${optirun_on} ${pw_runtime} env VK_LAYER_PATH="${VK_LAYER_PATH}" PATH="${PATH}" LD_LIBRARY_PATH="${LD_LIBRARY_PATH}" \
${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}
fi
fi
......@@ -513,6 +518,7 @@ fi
export urlg="https://portwine-linux.ru/portwine-faq/"
export PW_WINELIB="${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}"
try_remove_dir "${PW_WINELIB}/var"
export PW_GUI_ICON_PATH="${PORT_WINE_PATH}/data/img/gui"
export install_ver=`cat "${PORT_WINE_TMP_PATH}/${portname}_ver" | head -n 1`
export WINETRICKS_DOWNLOADER="curl"
......
......@@ -127,11 +127,11 @@ portwine_start_debug () {
echo "-----------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
echo "Graphic cards and drivers" >> "${PORT_WINE_PATH}/${portname}.log"
echo `lspci | grep -i vga` >> "${PORT_WINE_PATH}/${portname}.log"
"${PW_WINELIB}/runtime/bin/glxinfo" -B >> "${PORT_WINE_PATH}/${portname}.log"
"${PW_WINELIB}/portable/bin/glxinfo" -B >> "${PORT_WINE_PATH}/${portname}.log"
echo "----------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
echo "Vulkan info device name:" >> "${PORT_WINE_PATH}/${portname}.log"
"${PW_WINELIB}/runtime/bin/vulkaninfo" | grep deviceName >> "${PORT_WINE_PATH}/${portname}.log"
"${PW_WINELIB}/runtime/bin/vkcube" --c 50
"${PW_WINELIB}/runtime/files/bin/vulkaninfo" | grep deviceName >> "${PORT_WINE_PATH}/${portname}.log"
"${PW_WINELIB}/runtime/files/bin/vkcube" --c 50
if [ $? -eq 0 ]; then
echo "Vulkan cube test passed successfully" >> "${PORT_WINE_PATH}/${portname}.log"
else
......@@ -164,10 +164,12 @@ portwine_start_debug () {
portwine_launch &
sleep 1 && zenity --info --title "DEBUG" --text "${port_debug}" --no-wrap &> /dev/null && kill_portwine
sed -i '%/gstreamer-1.0/%d' "${PORT_WINE_PATH}/${portname}.log"
sed -i '/gstreamer-1.0/d' "${PORT_WINE_PATH}/${portname}.log"
sed -i '/winemenubuilder.exe/d' "${PORT_WINE_PATH}/${portname}.log"
sed -i '/nsiproxy/d' "${PORT_WINE_PATH}/${portname}.log"
sed -i '/.fx$/d' "${PORT_WINE_PATH}/${portname}.log"
sed -i '/HACK_does_openvr_work/d' "${PORT_WINE_PATH}/${portname}.log"
sed -i '/dlopen failed - libgamemode.so/d' "${PORT_WINE_PATH}/${portname}.log"
sed -i '/Uploading is disabled/d' "${PORT_WINE_PATH}/${portname}.log"
deb_text=$(cat "${PORT_WINE_PATH}/${portname}.log" | awk '! a[$0]++')
echo "$deb_text" > "${PORT_WINE_PATH}/${portname}.log"
"$pw_yad" --title="${portname}.log" --borders=10 --no-buttons --text-align=center \
......@@ -189,7 +191,7 @@ pw_winecmd () {
export PW_USE_TERMINAL=1
start_portwine
cd "${WINEPREFIX}/drive_c"
${pw_runtime} xterm -e env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" cmd
${pw_runtime} xterm -e env LD_LIBRARY_PATH="${LD_LIBRARY_PATH}" "${WINELOADER}" cmd
stop_portwine
}
......
#!/bin/bash
#Author: Castro-Fidel (PortWINE-Linux.ru)
#SCRIPTS_NEXT_VERSION=2046
#SCRIPTS_NEXT_VERSION=2047
#PORT_NEXT_VERSION=97
########################################################################
export PW_MANGOHUD=0
export PW_MANGOHUD=1
export MANGOHUD_CONFIG=font_size=24,position=top-left,toggle_hud=Shift_R+F12,no_display,resolution,wine,gpu_name,vulkan_driver,gpu_stats,vkbasalt
#export DXVK_HUD=fps,devinfo
#export ENABLE_VKBASALT=1
......@@ -25,7 +25,7 @@ export PW_MUST_HAVE_DLL="d3dx9_43 physx mfc42 vcrun2019 d3dcompiler_42 d3dcompil
export PW_WINEDBG_DISABLE=1
export PW_WINDOWS_VER="10"
export WINEARCH="win64"
export PW_LIBS_VER="_v17.2"
export PW_LIBS_VER="_v19.2"
export PORTWINE_URL="http://portwine-linux.ru/"
export GDK_BACKEND="x11"
export PW_USE_GSTREAMER="1"
......@@ -34,12 +34,12 @@ export WINE_WIN_START="start.exe /i /unix"
###DEFAULT_WINE###
export PW_WINE_USE=PROTON_STEAM
###WINE_PROTON_STEAM###
export PW_STEAM_VER="6.3-7"
export PW_STEAM_VER="6.3-8"
export PW_PROTON_STEAM_VER="PROTON_STEAM_${PW_STEAM_VER}"
export PW_MONO_VER="6.3.0"
export PW_MONO_VER="6.4.1"
export PW_GECKO_VER="2.47.2"
###WINE_PROTON_GE###
export PW_GE_VER="6.19-3"
export PW_GE_VER="6.19-4"
export PW_PROTON_GE_VER="PROTON_GE_${PW_GE_VER}"
export PW_MONO_GE_VER="6.4.0"
export PW_GECKO_GE_VER="2.47.2"
......
reshadeTexturePath = /usr/local/share/reshade/textures
reshadeIncludePath = /usr/local/share/reshade/
FilmGrain2 = /usr/local/share/reshade/shaders/FilmGrain2.fx
Curves = /usr/local/share/reshade/shaders/Curves.fx
FakeHDR = /usr/local/share/reshade/shaders/FakeHDR.fx
Colourfulness = /usr/local/share/reshade/shaders/Colourfulness.fx
Bloom = /usr/local/share/reshade/shaders/Bloom.fx
SMAA = /usr/local/share/reshade/shaders/SMAA.fx
ChromaticAberration = /usr/local/share/reshade/shaders/ChromaticAberration.fx
Denoise = /usr/local/share/reshade/shaders/Denoise.fx
Clarity = /usr/local/share/reshade/shaders/Clarity.fx
Emphasize = /usr/local/share/reshade/shaders/Emphasize.fx
FakeMotionBlur = /usr/local/share/reshade/shaders/FakeMotionBlur.fx
FilmicAnamorphSharpen = /usr/local/share/reshade/shaders/FilmicAnamorphSharpen.fx
FilmicPass = /usr/local/share/reshade/shaders/FilmicPass.fx
GaussianBlur = /usr/local/share/reshade/shaders/GaussianBlur.fx
Glitch = /usr/local/share/reshade/shaders/Glitch.fx
HighPassSharpen = /usr/local/share/reshade/shaders/HighPassSharpen.fx
HQ4X = /usr/local/share/reshade/shaders/HQ4X.fx
HSLShift = /usr/local/share/reshade/shaders/HSLShift.fx
Layer = /usr/local/share/reshade/shaders/Layer.fx
Levels = /usr/local/share/reshade/shaders/Levels.fx
LevelsPlus = /usr/local/share/reshade/shaders/LevelsPlus.fx
LiftGammaGain = /usr/local/share/reshade/shaders/LiftGammaGain.fx
LightDoF = /usr/local/share/reshade/shaders/LightDoF.fx
LumaSharpen = /usr/local/share/reshade/shaders/LumaSharpen.fx
LUT = /usr/local/share/reshade/shaders/LUT.fx
MagicBloom = /usr/local/share/reshade/shaders/MagicBloom.fx
Monochrome = /usr/local/share/reshade/shaders/Monochrome.fx
MultiLUT = /usr/local/share/reshade/shaders/MultiLUT.fx
MXAO = /usr/local/share/reshade/shaders/MXAO.fx
NightVision = /usr/local/share/reshade/shaders/NightVision.fx
Nostalgia = /usr/local/share/reshade/shaders/Nostalgia.fx
PerfectPerspective = /usr/local/share/reshade/shaders/PerfectPerspective.fx
PPFX_Bloom = /usr/local/share/reshade/shaders/PPFX_Bloom.fx
PPFX_Godrays = /usr/local/share/reshade/shaders/PPFX_Godrays.fx
Prism = /usr/local/share/reshade/shaders/Prism.fx
ReflectiveBumpMapping = /usr/local/share/reshade/shaders/ReflectiveBumpMapping.fx
Sepia = /usr/local/share/reshade/shaders/Sepia.fx
Splitscreen = /usr/local/share/reshade/shaders/Splitscreen.fx
StageDepth = /usr/local/share/reshade/shaders/StageDepth.fx
SurfaceBlur = /usr/local/share/reshade/shaders/SurfaceBlur.fx
Technicolor = /usr/local/share/reshade/shaders/Technicolor.fx
Technicolor2 = /usr/local/share/reshade/shaders/Technicolor2.fx
TiltShift = /usr/local/share/reshade/shaders/TiltShift.fx
Tonemap = /usr/local/share/reshade/shaders/Tonemap.fx
TriDither = /usr/local/share/reshade/shaders/TriDither.fx
UIDetect = /usr/local/share/reshade/shaders/UIDetect.fx
UIMask = /usr/local/share/reshade/shaders/UIMask.fx
Vibrance = /usr/local/share/reshade/shaders/Vibrance.fx
Vignette = /usr/local/share/reshade/shaders/Vignette.fx
AdaptiveSharpen = /usr/local/share/reshade/shaders/AdaptiveSharpen.fx
ColorMatrix = /usr/local/share/reshade/shaders/ColorMatrix.fx
Cartoon = /usr/local/share/reshade/shaders/Cartoon.fx
3DFX = /usr/local/share/reshade/shaders/3DFX.fx
Border = /usr/local/share/reshade/shaders/Border.fx
AspectRatio = /usr/local/share/reshade/shaders/AspectRatio.fx
reshadeTexturePath = /run/pressure-vessel/pv-from-host/reshade/textures
reshadeIncludePath = /run/pressure-vessel/pv-from-host/reshade
FilmGrain2 = /run/pressure-vessel/pv-from-host/reshade/shaders/FilmGrain2.fx
Curves = /run/pressure-vessel/pv-from-host/reshade/shaders/Curves.fx
FakeHDR = /run/pressure-vessel/pv-from-host/reshade/shaders/FakeHDR.fx
Colourfulness = /run/pressure-vessel/pv-from-host/reshade/shaders/Colourfulness.fx
Bloom = /run/pressure-vessel/pv-from-host/reshade/shaders/Bloom.fx
SMAA = /run/pressure-vessel/pv-from-host/reshade/shaders/SMAA.fx
ChromaticAberration = /run/pressure-vessel/pv-from-host/reshade/shaders/ChromaticAberration.fx
Denoise = /run/pressure-vessel/pv-from-host/reshade/shaders/Denoise.fx
Clarity = /run/pressure-vessel/pv-from-host/reshade/shaders/Clarity.fx
Emphasize = /run/pressure-vessel/pv-from-host/reshade/shaders/Emphasize.fx
FakeMotionBlur = /run/pressure-vessel/pv-from-host/reshade/shaders/FakeMotionBlur.fx
FilmicAnamorphSharpen = /run/pressure-vessel/pv-from-host/reshade/shaders/FilmicAnamorphSharpen.fx
FilmicPass = /run/pressure-vessel/pv-from-host/reshade/shaders/FilmicPass.fx
GaussianBlur = /run/pressure-vessel/pv-from-host/reshade/shaders/GaussianBlur.fx
Glitch = /run/pressure-vessel/pv-from-host/reshade/shaders/Glitch.fx
HighPassSharpen = /run/pressure-vessel/pv-from-host/reshade/shaders/HighPassSharpen.fx
HQ4X = /run/pressure-vessel/pv-from-host/reshade/shaders/HQ4X.fx
HSLShift = /run/pressure-vessel/pv-from-host/reshade/shaders/HSLShift.fx
Layer = /run/pressure-vessel/pv-from-host/reshade/shaders/Layer.fx
Levels = /run/pressure-vessel/pv-from-host/reshade/shaders/Levels.fx
LevelsPlus = /run/pressure-vessel/pv-from-host/reshade/shaders/LevelsPlus.fx
LiftGammaGain = /run/pressure-vessel/pv-from-host/reshade/shaders/LiftGammaGain.fx
LightDoF = /run/pressure-vessel/pv-from-host/reshade/shaders/LightDoF.fx
LumaSharpen = /run/pressure-vessel/pv-from-host/reshade/shaders/LumaSharpen.fx
LUT = /run/pressure-vessel/pv-from-host/reshade/shaders/LUT.fx
MagicBloom = /run/pressure-vessel/pv-from-host/reshade/shaders/MagicBloom.fx
Monochrome = /run/pressure-vessel/pv-from-host/reshade/shaders/Monochrome.fx
MultiLUT = /run/pressure-vessel/pv-from-host/reshade/shaders/MultiLUT.fx
MXAO = /run/pressure-vessel/pv-from-host/reshade/shaders/MXAO.fx
NightVision = /run/pressure-vessel/pv-from-host/reshade/shaders/NightVision.fx
Nostalgia = /run/pressure-vessel/pv-from-host/reshade/shaders/Nostalgia.fx
PerfectPerspective = /run/pressure-vessel/pv-from-host/reshade/shaders/PerfectPerspective.fx
PPFX_Bloom = /run/pressure-vessel/pv-from-host/reshade/shaders/PPFX_Bloom.fx
PPFX_Godrays = /run/pressure-vessel/pv-from-host/reshade/shaders/PPFX_Godrays.fx
Prism = /run/pressure-vessel/pv-from-host/reshade/shaders/Prism.fx
ReflectiveBumpMapping = /run/pressure-vessel/pv-from-host/reshade/shaders/ReflectiveBumpMapping.fx
Sepia = /run/pressure-vessel/pv-from-host/reshade/shaders/Sepia.fx
Splitscreen = /run/pressure-vessel/pv-from-host/reshade/shaders/Splitscreen.fx
StageDepth = /run/pressure-vessel/pv-from-host/reshade/shaders/StageDepth.fx
SurfaceBlur = /run/pressure-vessel/pv-from-host/reshade/shaders/SurfaceBlur.fx
Technicolor = /run/pressure-vessel/pv-from-host/reshade/shaders/Technicolor.fx
Technicolor2 = /run/pressure-vessel/pv-from-host/reshade/shaders/Technicolor2.fx
TiltShift = /run/pressure-vessel/pv-from-host/reshade/shaders/TiltShift.fx
Tonemap = /run/pressure-vessel/pv-from-host/reshade/shaders/Tonemap.fx
TriDither = /run/pressure-vessel/pv-from-host/reshade/shaders/TriDither.fx
UIDetect = /run/pressure-vessel/pv-from-host/reshade/shaders/UIDetect.fx
UIMask = /run/pressure-vessel/pv-from-host/reshade/shaders/UIMask.fx
Vibrance = /run/pressure-vessel/pv-from-host/reshade/shaders/Vibrance.fx
Vignette = /run/pressure-vessel/pv-from-host/reshade/shaders/Vignette.fx
AdaptiveSharpen = /run/pressure-vessel/pv-from-host/reshade/shaders/AdaptiveSharpen.fx
ColorMatrix = /run/pressure-vessel/pv-from-host/reshade/shaders/ColorMatrix.fx
Cartoon = /run/pressure-vessel/pv-from-host/reshade/shaders/Cartoon.fx
3DFX = /run/pressure-vessel/pv-from-host/reshade/shaders/3DFX.fx
Border = /run/pressure-vessel/pv-from-host/reshade/shaders/Border.fx
AspectRatio = /run/pressure-vessel/pv-from-host/reshade/shaders/AspectRatio.fx
casSharpness = 0.7
toggleKey = Home
......
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