From 51d569b6e674cdb2ca9b59533db76a2384ba151b Mon Sep 17 00:00:00 2001 From: castro-fidel Date: Sun, 14 Nov 2021 18:22:14 +0300 Subject: [PATCH] Scripts version 2047 --- data_from_portwine/changelog | 9 ++ data_from_portwine/dxvk.conf | 4 +- data_from_portwine/scripts/functions_helper | 37 +++--- data_from_portwine/scripts/portwine_db/eve | 33 +++--- data_from_portwine/scripts/runlib | 118 ++++++++++---------- data_from_portwine/scripts/start.sh | 14 ++- data_from_portwine/scripts/var | 12 +- data_from_portwine/vkBasalt.conf | 114 +++++++++---------- 8 files changed, 178 insertions(+), 163 deletions(-) diff --git a/data_from_portwine/changelog b/data_from_portwine/changelog index 01f3c22c..89d85abd 100755 --- a/data_from_portwine/changelog +++ b/data_from_portwine/changelog @@ -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 diff --git a/data_from_portwine/dxvk.conf b/data_from_portwine/dxvk.conf index 14ef5640..85d16617 100755 --- a/data_from_portwine/dxvk.conf +++ b/data_from_portwine/dxvk.conf @@ -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 diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index c1e72077..cf09b2cb 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -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="$?" diff --git a/data_from_portwine/scripts/portwine_db/eve b/data_from_portwine/scripts/portwine_db/eve index 0a7a9744..1cd19436 100755 --- a/data_from_portwine/scripts/portwine_db/eve +++ b/data_from_portwine/scripts/portwine_db/eve @@ -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 "" } diff --git a/data_from_portwine/scripts/runlib b/data_from_portwine/scripts/runlib index 2fa870cc..559136ae 100755 --- a/data_from_portwine/scripts/runlib +++ b/data_from_portwine/scripts/runlib @@ -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" diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index 5f963f9e..32f87ddb 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -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 } diff --git a/data_from_portwine/scripts/var b/data_from_portwine/scripts/var index 88c6bcc1..4a0dfbce 100755 --- a/data_from_portwine/scripts/var +++ b/data_from_portwine/scripts/var @@ -1,9 +1,9 @@ #!/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" diff --git a/data_from_portwine/vkBasalt.conf b/data_from_portwine/vkBasalt.conf index c3a905cc..fa74bffb 100755 --- a/data_from_portwine/vkBasalt.conf +++ b/data_from_portwine/vkBasalt.conf @@ -1,60 +1,60 @@ -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