From a09063c2844a61c105fb35a8782b45e0999bb430 Mon Sep 17 00:00:00 2001 From: castro-fidel Date: Sat, 16 Apr 2022 17:45:16 +0300 Subject: [PATCH] Scripts version 2100 --- data_from_portwine/changelog_eng | 15 ++ data_from_portwine/changelog_rus | 17 +- data_from_portwine/img/gui/wosb.png | Bin 0 -> 3263 bytes data_from_portwine/scripts/functions_helper | 132 +++++++------- data_from_portwine/scripts/lang | 5 + .../scripts/portwine_db/GameCenter | 38 ++++ .../scripts/portwine_db/Lineage2_NewRP | 43 +++++ data_from_portwine/scripts/portwine_db/SamSM | 47 +++++ .../scripts/portwine_db/Sheltered2 | 47 +++++ .../portwine_db/WorldOfSeaBattleClient | 42 +++++ .../scripts/portwine_db/death_stranding | 35 ++++ data_from_portwine/scripts/portwine_db/gta3 | 44 +++++ .../scripts/pw_autoinstall/PW_BATTLE_NET | 2 +- .../scripts/pw_autoinstall/PW_OSU | 2 +- .../scripts/pw_autoinstall/PW_WOSB | 37 ++++ data_from_portwine/scripts/runlib | 123 ++++++++----- data_from_portwine/scripts/start.sh | 19 +- data_from_portwine/scripts/var | 15 +- portwine_install_script/PortProton-97 | 162 ------------------ portwine_install_script/PortProton_1.0 | 12 +- 20 files changed, 541 insertions(+), 296 deletions(-) create mode 100644 data_from_portwine/img/gui/wosb.png create mode 100644 data_from_portwine/scripts/portwine_db/GameCenter create mode 100644 data_from_portwine/scripts/portwine_db/Lineage2_NewRP create mode 100644 data_from_portwine/scripts/portwine_db/SamSM create mode 100644 data_from_portwine/scripts/portwine_db/Sheltered2 create mode 100644 data_from_portwine/scripts/portwine_db/WorldOfSeaBattleClient create mode 100644 data_from_portwine/scripts/portwine_db/death_stranding create mode 100644 data_from_portwine/scripts/portwine_db/gta3 create mode 100644 data_from_portwine/scripts/pw_autoinstall/PW_WOSB delete mode 100755 portwine_install_script/PortProton-97 diff --git a/data_from_portwine/changelog_eng b/data_from_portwine/changelog_eng index 0ccce3b6..33f7074f 100644 --- a/data_from_portwine/changelog_eng +++ b/data_from_portwine/changelog_eng @@ -2,6 +2,21 @@ You can help us in the development of the project on the website: https://boosty ----------------------------------------- Changelog: +###Scripts version 2100### +* updated "libs_v27" (unification of library directories for different Linux OS) +* MANGOHUD works again in OPENGL mode +* added launcher World of Sea Battle (TEST) + +###Scripts version 2099### +* updated "PROTON_GE" to version 7-14 +* updated "libs_v26" (Steam Runtime Sniper container update) +* updated "plugins_v5" +* added check for the presence of the d3dadapter9 library in the system (required for GALLIUM_NINE to work on a larger number of Linux OS) +* faster creation of a new prefix +* default theme for wine is light (after creating a new one, or clearing the current prefix) +* added variable PW_USE_SHADER_CACHE to EDIT_DB to control shader caching (disable only if there are microfreezes in the game) +* removed STEAM_PP from AUTOINSTALL (because there is a native STEAM for Linux with its own wine-proton) + ###Scripts version 2098### * due to possible problems with some games, MANGOHUD is disabled by default (enabled in EDIT_DB -> MANGOHUD, or globally by adding export PW_MANGOHUD=1 to user.conf) diff --git a/data_from_portwine/changelog_rus b/data_from_portwine/changelog_rus index 571e141a..fe287dcd 100755 --- a/data_from_portwine/changelog_rus +++ b/data_from_portwine/changelog_rus @@ -2,6 +2,21 @@ ----------------------------------------- История изменений: +###Scripts version 2100### +* обновлен "libs_v27" (унификация каталогов библиотек под разные ОС Linux) +* MANGOHUD снова работает в режиме OPENGL +* добавлен лаунчер World of Sea Battle (ТЕСТ) + +###Scripts version 2099### +* обновлен "PROTON_GE" до версии 7-14 +* обновлен "libs_v26" (обновление контейнера Steam Runtime Sniper) +* обновлен "plugins_v5" +* добавлена проверка наличия библиотеки d3dadapter9 в системе (неоходимо для работы GALLIUM_NINE на большем кол-ве ОС Linux) +* ускорено создание нового префикса +* по умолчанию для wine используется тема light (после создания нового, или чистки текущего префикса) +* в EDIT_DB добавлена переменная PW_USE_SHADER_CACHE для управление кешированием шейдеров (отключать только при наличии микрофризов в игре) +* удален STEAM_PP из AUTOINSTALL (так как есть нативная версия STEAM для Linux со своим wine-proton) + ###Scripts version 2098### * из за возможных проблем с некоторыми играми по умолчанию MANGOHUD выключен (включается в EDIT_DB -> MANGOHUD, или глобально добавлением export PW_MANGOHUD=1 в user.conf) @@ -11,7 +26,7 @@ * добавлен выбор режима "GALLIUM_NINE" (поддержка нитивного DirectX9 на видеокарте с MESA драйвером) * в новый интерфейс для WINETRICKS добавлена вкладка settings * в EDIT_DB добавлена переменная PW_USE_AMDVLK_DRIVER (использовать драйвер AMDVLK вместо RADV на видеокартах от AMD) -* добавлено архивация ярлыков при создании образа префикса +* добавлена архивация ярлыков при создании образа префикса * добавлено востановление ярлыков после распаковки образа префикса (путь до .exe файла корректируется автоматически) * улучшена работа виртуального рабочего стола * explorer изменен на winefile (исправлено определение свободного дискового пространства) diff --git a/data_from_portwine/img/gui/wosb.png b/data_from_portwine/img/gui/wosb.png new file mode 100644 index 0000000000000000000000000000000000000000..24d4810221ac7e77f88076c79d6d9c9f13b32ecc GIT binary patch literal 3263 zcmV;w3_$aVP)CbleI0uh4*dLULv zt6gb@R@&9R@7{aA^Ysq|wo_*O&D@!L@7(h{zjMEHzWM!#l#&1dNGSmp?g2mo01!&y zGnbS%VhI64$Y+1|2e?E^Nu-oO2%!s!B><3x>*n+AF%b!&lmGzUEaG+~7T$lVxK9xP z07wLbGCes-F_ECE(`l+@Wl&gGN13Ahzo3O`D4|s9*(`RrcM9Tbnm@s zDJ3O@$XlRNGD4{txpIYEK6dP2YGR_D`+NuQ+`D(I$nB=`6PXbau3fl*Bb}X<$%%=- z=Zh8vbGh7eEp2U7B1*P*=S~>!?%s=+FaI*t*SB0xr~P_7zCy&~52l1DclrHq+lz{B zY|{-)28iZhSJ$Hc*I)n7`1|i4G(w?9@OYf5eEv7S<;$f+B$QH`OQ-SFTW|3z-Q9Z< zLqo4z`{08ejPq8sT0bcD`NH;s0>-|&WlJ><4gENO=~9{Eav^G(6pTqDnUs1c)T%CB zdd*v3-zO1OLMddENwfEjH?~h6Ir5uSZ|@ztrkVL{mT*d&b2i&KcWrH;ptzWYhlj<5 zciyR*yL9PCu`_4>Vd~N)x1`j}M57MH?RFZRzg64RgzV3@ZF|rh9NahN^92JQ&tQ?= zUP+@-E-V%h$t20AQY$=LxBkLvwPp+eyztsF>kUe!k;_rWSdAzy9-F^>`O6p#{;+>`Hru#&?}nPSYtMwcyB{_*4S;jZ#$rl| z-_MA{@iyz&y0tx}C|Yex%d>kPe>^`K2=odm+xX;Uttq7xx=zh}zBSz0`K?R+{Y|#r zyC2!LfB%c?SFcXT00ObTzORWyf+FWKpGtAN)p}1d8r^n066u*x)ji*P=9$Y5kLT*h zg$wtm0)cW+RhdgBsm0~0uvb?8j@`3s*QsgKJaXrb9Vu^F8AC#}(V-!mGn4s(F+UHI zbIeB~#o>yI3!i)9i92_8beywrt`I_4NmbRvwZXyF+VF5Aswx`kG&L+1IHf(X-el+@P`(68*c2uY;2-B1%05D38W}ola zKmXtdvG%*~=B8m71OOH-U;bO}c7v(w95|PmcpOsEXfx%UQ-{Mr7e-eW6c$24*Mo6N z#|dK~0E9>;0VgLH0{~D$C`ic=kpKWtr?W@6TpF4tM?x?+H>Y|F3+oow)!jUHDFCoV zix*#ZR923dx(<>M%xANpXS3Cm5F(|N5~Kt~B&wpY+WPuLj`K08C?F6)5(1-V&$dM- zCV)_?5kgGLm;nG#QeHl%mXst+(*y)SJ(mMw7^}~AcG?HepBJXCn`oLMG(60x!yzRh zAfyC=2wEn?IV>FdKq)bFU8t%`ib_hvjG}}j=YY8!6HfJo)+A(a{Gq#)!qzi#Imy3o93c``$VY86ZjXV%&Hv!UVRgF|tR~M0B zu*eWXs&+dVl+JJo0KLbKvB-rBkF#+2ue4~iTrDb!c^exONzOqC0l+zcs`mXZ8vX0J zxw$0{MXB^RG+cY~yWf3_8AkSl=bn4d1ZWacnxH7EPRPG)|K>NJZD?w8N-2rc<;sQv z0deZ(mrn>OHw#2$b~}|8%Mg!DOvst>@dpaW$6rbZgTPD^;(>ri4TU_0t^*PROi>_X znt?yM|NfJ0ci(-=Fbui0sR>Goi|O@9MBxDChG_yy$%MrM+~MfkxM2hM{r;>FLNdlk zsl&lfYnn^H(JS2Q_0H*(_V7$D2PgabEQN+KJ)kHTtIEo1SGwIxv)8U6swzbx2s)jB z#l_*q!oo&NDC8(EEuD{zjYVvVl8a4EE!Adb8cal>oHJfm7b$hQl=0K28!}T<^B$jX zwxYTk)2Wm%IX&%10HB;hiQnH-+T8qmUg!6NQc>~duR1$V`f6%oXTo6*t*`%Sb7|>4 zsaOn6L~2zO^y&Jar%s&s%br|LkpL#Q+XtLWmi$mN&DPA!j71P4C?T|%ka9B|KJwAk zt3;S)-s*G?-m!c4KN?alNnXEh7p7^t>+3lyD?8GzOLsnTyCpe$G5{rG572>*6Rm=Q^g&WE#bt(WjH84Oy2x)6aih;$jAsGgwXnqj;^Y8>mGRIz=0%}QUd3kc)eZ%0A&59 zP0)Ax^oZHt9}^IJS|NH-9Xqvfb%^EtI$^830t5+wj z77ODy(w)v)MA4OnTIc3h2*de!h0gmeI9q*OIBpNnx>C>D=@*s+zVXIyUyO zK0goY#*LT0uz&w!8`iCph)4*4K?q?|N^$fjKl$46S6=zkLbn^->(`&1nVWm+@1A-p zt8h*c@nZt8Ag!+lgMf*|Mo1)zqF(QS)8+bkoy+BZ^U$Hjd@fhU8RME^q%%`fPegiq z9hOzAOs%5gHMgo3Up{qeWhxdcP%IX36c^6`V+E%UAO0R{8q{=j1T>3f-xJ^YPH^SQ zl}sWcrSxM}3;;wo41D+SVfRc|S7$sJT$5>SeYI9q6IwXDGZl%{n7N$QGz?%4hfGdQ zfuo^;NWVYCCnvS}u`yqAW`^anSt<~L+ia5CY(k60xNpafsaZwY^W}Z}x;Adv!h{gW z7`vg07xX<4O36@fFGNR1{=}S_SyQlLMV1Ewe>^!fGHK0AY1jRJ!4(DVnx^DKA(Bia1hrTo5e~D|>@29YwZIx0 zkeMdUPfyeNNJQ$0!sc-Bs`mEL@oaYQ&i3{bJHPlvhC(3yMDmXb5JIjD48Z)%%x*G0 zy`0t5$SV%VwT~i^W3!{9X9Z%mz-C*%Y1y*9o=~XCFipr*R>m*KJ$20Niq#LI~{b>5;i?7MfdHh^M@q zpb+wQmER)pi7B`>kgxzMg!q&vWQ^T3tT)L^M7-q%DW#t@p&$|EXF2R!1mwr|nMf%m xAq40j1fvi)e#L@*WVfjd5pMv0mR(<1{|9v)*0Q0)2L=ED002ovPDHLkV1lByF`WPa literal 0 HcmV?d00001 diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper index ef468f06..b6fe59b0 100755 --- a/data_from_portwine/scripts/functions_helper +++ b/data_from_portwine/scripts/functions_helper @@ -168,6 +168,22 @@ var_vkd3d_config_update () { return 0 } +var_radv_perftest_config_update () { + if [ ! -z "${RADV_PERFTEST}" ] + then export RADV_PERFTEST="${1};${RADV_PERFTEST}" + else export RADV_PERFTEST="${1}" + fi + return 0 +} + +var_vk_istance_layers_config_update () { + if [ ! -z "${PW_VK_INSTANCE_LAYERS}" ] + then export PW_VK_INSTANCE_LAYERS="${1}:${PW_VK_INSTANCE_LAYERS}" + else export PW_VK_INSTANCE_LAYERS="${1}" + fi + return 0 +} + unpack_tar_xz () { set -o pipefail tar -Jxvf "$1" -C "$2" | sszen @@ -260,14 +276,12 @@ init_wine_ver () { fi if [[ -d "${WINEDIR}/files" && ! -d "${WINEDIR}/dist" ]] ; then - chmod -R 755 "${WINEDIR}" for clear_dist_files in `ls "${WINEDIR}" | sed -e "s/^files$//g" | sed -e "s/^version$//g"` ; do rm -fr "${WINEDIR}/$clear_dist_files" done mv -f "${WINEDIR}/files"/* "${WINEDIR}/" rm -fr "${WINEDIR}/files" elif [[ ! -d "${WINEDIR}/files" && -d "${WINEDIR}/dist" ]] ; then - chmod -R 755 "${WINEDIR}" for clear_dist_files in `ls "${WINEDIR}" | sed -e "s/^dist$//g" | sed -e "s/^version$//g"` ; do rm -fr "${WINEDIR}/$clear_dist_files" done @@ -314,30 +328,24 @@ init_wine_ver () { } pw_init_runtime () { - if [[ ! -z "`cat /etc/*-release | grep -i opensuse`" ]] \ - || [[ ! -z "`cat /etc/*-release | grep -i centos`" ]] \ - || [[ ! -z "`cat /etc/*-release | grep -i rosa`" ]] \ - || [[ ! -z "`cat /etc/*-release | grep -i altlinux`" ]] \ - || [[ ! -z "`cat /etc/*-release | grep -i astra`" ]] \ - || [[ ! -z "`cat /etc/*-release | grep -i redos`" ]] \ - || [[ ! -z "`cat /etc/*-release | grep -i fedora`" ]] \ - || [[ ! -z "`cat /etc/*-release | grep -i gentoo`" ]] ; then - if check_symlink "${PW_WINELIB}/portable/lib/lib64" ; then - rm -fr "${PW_WINELIB}/portable/lib/lib64" - fi - if [[ ! -d "${PW_WINELIB}/portable/lib/lib64" ]] ; then - mv -f "${PW_WINELIB}/portable/lib/lib" "${PW_WINELIB}/portable/lib/lib64" - fi - if [[ ! -d "${PW_WINELIB}/portable/lib/lib" ]] ; then - ln -s "${PW_WINELIB}/portable/lib/lib32" "${PW_WINELIB}/portable/lib/lib" - fi - fi + # PW_OS_LIB='opensuse|centos|rosa|altlinux|astra|redos|fedora|gentoo' + # if [[ ! -z "`cat /etc/*-release | grep -iE "${PW_OS_LIB}"`" ]] ; then + # if check_symlink "${PW_WINELIB}/portable/lib/lib64" ; then + # rm -fr "${PW_WINELIB}/portable/lib/lib64" + # fi + # if [[ ! -d "${PW_WINELIB}/portable/lib/lib64" ]] ; then + # mv -f "${PW_WINELIB}/portable/lib/lib" "${PW_WINELIB}/portable/lib/lib64" + # fi + # if [[ ! -d "${PW_WINELIB}/portable/lib/lib" ]] ; then + # ln -s "${PW_WINELIB}/portable/lib/lib32" "${PW_WINELIB}/portable/lib/lib" + # fi + # fi PW_PV_OVERRIDES="/usr/lib/pressure-vessel/overrides/lib" if [[ ! -z "${LD_LIBRARY_PATH}" ]] ; then - export PW_LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib:${PW_WINELIB}/portable/lib/\$LIB:${PW_PV_OVERRIDES}/x86_64-linux-gnu/aliases:${PW_PV_OVERRIDES}/i386-linux-gnu/aliases:${LD_LIBRARY_PATH}" + export PW_LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib:${PW_WINELIB}/portable/lib/lib64:${PW_WINELIB}/portable/lib/lib32:${PW_PV_OVERRIDES}/x86_64-linux-gnu/aliases:${PW_PV_OVERRIDES}/i386-linux-gnu/aliases:${LD_LIBRARY_PATH}" else - export PW_LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib:${PW_WINELIB}/portable/lib/\$LIB:${PW_PV_OVERRIDES}/x86_64-linux-gnu/aliases:${PW_PV_OVERRIDES}/i386-linux-gnu/aliases" + export PW_LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib:${PW_WINELIB}/portable/lib/lib64:${PW_WINELIB}/portable/lib/lib32:${PW_PV_OVERRIDES}/x86_64-linux-gnu/aliases:${PW_PV_OVERRIDES}/i386-linux-gnu/aliases" fi export PW_VK_LAYER_PATH="${PW_WINELIB}/portable/share/vulkan/implicit_layer.d/" @@ -363,43 +371,43 @@ pw_init_runtime () { var_winedlloverride_update "winegstreamer=" fi - if [ "${PW_USE_RUNTIME}" = 0 ] ; then - export pw_runtime="" - if [ "${PW_MANGOHUD}" = 1 ] ; then - [ -z `which mangohud` ] && export PW_MANGOHUD=0 - fi - echo "RUNTIME is disabled" + 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}" \ + ${PW_ADD_TO_ARGS_IN_RUNTIME} --" else - 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}" \ - ${PW_ADD_TO_ARGS_IN_RUNTIME} --" - else - export pw_runtime="${PW_WINELIB}/run \ - --share-home \ - ${PW_ADD_TO_ARGS_IN_RUNTIME} --" - fi - # 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_PREFIX="${PW_WINELIB}/pressure-vessel" - unset PRESSURE_VESSEL_FILESYSTEMS_RO PRESSURE_VESSEL_FILESYSTEMS_RW - for PWRTMRO in ${PW_RT_MOUNT_RO[*]} ; do - if [ ! -z "${PRESSURE_VESSEL_FILESYSTEMS_RO}" ] - then export PRESSURE_VESSEL_FILESYSTEMS_RO="${PRESSURE_VESSEL_FILESYSTEMS_RO}:${PWRTMRO}" - else export PRESSURE_VESSEL_FILESYSTEMS_RO="${PWRTMRO}" - fi - done - for PWRTMRW in ${PW_RT_MOUNT_RW[*]} ; do - if [ ! -z "${PRESSURE_VESSEL_FILESYSTEMS_RW}" ] - then export PRESSURE_VESSEL_FILESYSTEMS_RW="${PRESSURE_VESSEL_FILESYSTEMS_RW}:${PWRTMRW}" - else export PRESSURE_VESSEL_FILESYSTEMS_RW="${PWRTMRW}" - fi - done - echo "RUNTIME is enabled" + export pw_runtime="${PW_WINELIB}/run \ + --share-home \ + ${PW_ADD_TO_ARGS_IN_RUNTIME} --" fi + + export PRESSURE_VESSEL_GC_RUNTIMES=0 + export PRESSURE_VESSEL_COPY_RUNTIME=0 + export PRESSURE_VESSEL_GC_LEGACY_RUNTIMES=0 + export PRESSURE_VESSEL_REMOVE_GAME_OVERLAY=0 + export PRESSURE_VESSEL_IMPORT_VULKAN_LAYERS=0 + + unset PRESSURE_VESSEL_RUNTIME_ARCHIVE + export PRESSURE_VESSEL_RUNTIME=runtime + export PRESSURE_VESSEL_RUNTIME_BASE="${PW_WINELIB}" + export PRESSURE_VESSEL_VARIABLE_DIR="${PW_WINELIB}/var" + export PRESSURE_VESSEL_PREFIX="${PW_WINELIB}/pressure-vessel" + + unset PRESSURE_VESSEL_FILESYSTEMS_RO PRESSURE_VESSEL_FILESYSTEMS_RW + for PWRTMRO in ${PW_RT_MOUNT_RO[*]} ; do + if [ ! -z "${PRESSURE_VESSEL_FILESYSTEMS_RO}" ] + then export PRESSURE_VESSEL_FILESYSTEMS_RO="${PRESSURE_VESSEL_FILESYSTEMS_RO}:${PWRTMRO}" + else export PRESSURE_VESSEL_FILESYSTEMS_RO="${PWRTMRO}" + fi + done + for PWRTMRW in ${PW_RT_MOUNT_RW[*]} ; do + if [ ! -z "${PRESSURE_VESSEL_FILESYSTEMS_RW}" ] + then export PRESSURE_VESSEL_FILESYSTEMS_RW="${PRESSURE_VESSEL_FILESYSTEMS_RW}:${PWRTMRW}" + else export PRESSURE_VESSEL_FILESYSTEMS_RW="${PWRTMRW}" + fi + done + echo "RUNTIME is enabled" } pw_mangohud_check () { @@ -413,10 +421,7 @@ pw_mangohud_check () { then export PW_LD_PRELOAD="${PW_LD_PRELOAD}:${MANGOHUD_LIB_NAME}" else export PW_LD_PRELOAD="${MANGOHUD_LIB_NAME}" fi - if [[ ! -z "${PW_VK_INSTANCE_LAYERS}" ]] - then export PW_VK_INSTANCE_LAYERS="VK_LAYER_MANGOHUD_overlay:${PW_VK_INSTANCE_LAYERS}" - else export PW_VK_INSTANCE_LAYERS="VK_LAYER_MANGOHUD_overlay" - fi + var_vk_istance_layers_config_update "VK_LAYER_MANGOHUD_overlay64:VK_LAYER_MANGOHUD_overlay32" print_info "MANGOHUD is enabled" else export DISABLE_MANGOHUD=1 @@ -439,10 +444,7 @@ pw_vkbasalt_check () { 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 "${PW_VK_INSTANCE_LAYERS}" ]] - then export PW_VK_INSTANCE_LAYERS="VK_LAYER_VKBASALT_post_processing:${PW_VK_INSTANCE_LAYERS}" - else export PW_VK_INSTANCE_LAYERS="VK_LAYER_VKBASALT_post_processing" - fi + var_vk_istance_layers_config_update "VK_LAYER_VKBASALT_post_processing32:VK_LAYER_VKBASALT_post_processing64" print_info "vkBasalt is enabled" else export DISABLE_VKBASALT=1 diff --git a/data_from_portwine/scripts/lang b/data_from_portwine/scripts/lang index 0e6cf132..4ad6b944 100755 --- a/data_from_portwine/scripts/lang +++ b/data_from_portwine/scripts/lang @@ -89,6 +89,7 @@ then export PW_PRIME_RENDER_OFFLOAD_INFO='Включить дискретную видеокарту NVIDIA для ноутбуков с гибридной графикой (при поддержке установленого драйвера в ОС)' export PW_USE_WINDOWS_7_INFO='Изменить версию WINDOWS 10 на WINDOWS 7 в префиксе' export PW_USE_AMDVLK_DRIVER_INFO='Использовать драйвер AMDVLK вместо RADV на видеокартах от AMD' + export PW_USE_SHADER_CACHE_INFO='Использовать кеширование шейдеров средствами WINE (отключать только при наличии микрофризов в игре)' export PW_3DFX_INFO='Имитация старого графического ускорителя 3dfx (добавляет горизонтальные полосы)' export PW_AdaptiveSharpen_INFO='Увеличение резкости, можно использовать совместо с CAS' @@ -112,6 +113,8 @@ then export PW_WAYLAND_INFO="Внимание! Вы запускаете $portname в сессии Wayland, некоторые функции могут быть недоступны!\nРекомендуется перезапустить сессию в X11!" + export loc_find_d3dadapter9_error="не найден в системе.\nУстановите недостающий пакет: d3dadapter9" + elif [ "${update_loc}" = "ENG" ] then export PW_CHANGELOG_FILE="changelog_eng" @@ -170,4 +173,6 @@ then export loc_winereg="Run Registry Prefix Editor ${portname}" export loc_winetricks="Run winetricks to install additional libraries to the prefix ${portname}" export loc_edit_db="Edit database file for" + + export loc_find_d3dadapter9_error="not found in the system.\nInstall it and try again." fi diff --git a/data_from_portwine/scripts/portwine_db/GameCenter b/data_from_portwine/scripts/portwine_db/GameCenter new file mode 100644 index 00000000..66660490 --- /dev/null +++ b/data_from_portwine/scripts/portwine_db/GameCenter @@ -0,0 +1,38 @@ +#!/bin/bash +#Author: fff555 +#GameCenter.exe +#Rating=1-5 +#####################examples########################### +##export PW_COMMENT_DB="blablabla" +##export PW_WINDOWS_VER=10 # Set windows version 10, 7 or XP +##export PW_DLL_INSTALL="vcrun2017" # Install DDL in port prefix (used winetricks) +##export WINEDLLOVERRIDES="blabla=n,b" +##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options +export PW_WINE_USE=PROTON_STEAM_6.3-8C_PW2 +export PW_VULKAN_USE=1 +##export PW_USE_DXR10=1 +##export PW_DLSS_ON=1 +##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN +##export PW_USE_NVAPI_AND_DLSS=0 +##export PW_OLD_GL_STRING=1 +##export PW_HIDE_NVIDIA_GPU=1 +##export PW_FORCE_USE_VSYNC=0 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT +##export PW_VIRTUAL_DESKTOP=1 +##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue +##export ENABLE_VKBASALT=1 +##export PW_VKBASALT_EFFECTS="FakeHDR:cas" # Use Reshade in others games (dx9-12 to vulkan only) +##export PW_VKBASALT_FFX_CAS="0.75" # FidelityFX Contrast Adaptive Sharpening (min 0 - max 1) +##export PW_NO_FSYNC=1 # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. +##export PW_NO_ESYNC=0 # Do not use eventfd-based in-process synchronization primitives +##export PW_USE_GSTREAMER=1 # 0 - disabled use winegstreamer +##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games +##export PW_NO_WRITE_WATCH=1 # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). +##export PW_HEAP_DELAY_FREE=1 +##export PW_WINE_ALLOW_XIM=1 # Disable XIM support until libx11 >= 1.7 is widespread +##export WINEARCH=win32 # defaut = win64 +##export WINEPREFIX= +##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG +##export PW_USE_TERMINAL=1 # Force run in terminal +##export PW_GUI_DISABLED_CS=1 # 1 = disabled GUI +##export PATH_TO_GAME= +##add_in_start_portwine () { commands ; } diff --git a/data_from_portwine/scripts/portwine_db/Lineage2_NewRP b/data_from_portwine/scripts/portwine_db/Lineage2_NewRP new file mode 100644 index 00000000..e2c1bdd0 --- /dev/null +++ b/data_from_portwine/scripts/portwine_db/Lineage2_NewRP @@ -0,0 +1,43 @@ +#!/bin/bash +#Author: UserDiscord +#NewRP.exe +#Rating=5 +#####################examples########################### +##export PW_COMMENT_DB="blablabla" +##export PW_WINDOWS_VER=10 # Set windows version 10, 7 or XP +##export PW_DLL_INSTALL="vcrun2017" # Install DDL in port prefix (used winetricks) +##export WINEDLLOVERRIDES="blabla=n,b" +##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options +export PW_WINE_USE=PROTON_GE +export PW_VULKAN_USE=1 +export PW_USE_DXR10=0 +##export PW_DLSS_ON=1 +export PW_VULKAN_NO_ASYNC=0 +export PW_USE_NVAPI_AND_DLSS=0 +export PW_OLD_GL_STRING=0 +export PW_HIDE_NVIDIA_GPU=0 +export PW_FORCE_USE_VSYNC=0 +export PW_VIRTUAL_DESKTOP=0 +##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue +export ENABLE_VKBASALT=1 +export PW_VKBASALT_EFFECTS=cas:Curves:SMAA:LumaSharpen +export PW_VKBASALT_FFX_CAS=1 +export PW_NO_FSYNC=0 +export PW_NO_ESYNC=0 +export PW_USE_GSTREAMER=0 +##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games +export PW_NO_WRITE_WATCH=0 +export PW_HEAP_DELAY_FREE=0 +export PW_WINE_ALLOW_XIM=0 +##export WINEARCH=win32 # defaut = win64 +##export WINEPREFIX= +export PW_WINEDBG_DISABLE=1 +export PW_USE_TERMINAL=0 +export PW_GUI_DISABLED_CS=0 +##export PATH_TO_GAME= +##add_in_start_portwine () { commands ; } +export PW_USE_DXR11=0 +export PW_USE_GAMEMODE=1 +export PW_DX12_DISABLE=1 +export PW_USE_WINE_DXGI=0 +export PW_PRIME_RENDER_OFFLOAD=0 diff --git a/data_from_portwine/scripts/portwine_db/SamSM b/data_from_portwine/scripts/portwine_db/SamSM new file mode 100644 index 00000000..4f3d9fd3 --- /dev/null +++ b/data_from_portwine/scripts/portwine_db/SamSM @@ -0,0 +1,47 @@ +#!/usr/bin/env bash +#Author: igor +#Sam4.exe +#SamSM.exe +#Rating=1-5 +#####################examples########################### +##export PW_COMMENT_DB="blablabla" +export PW_WINDOWS_VER=10 +export PW_DLL_INSTALL="" +export WINEDLLOVERRIDES="vulkan-1=n" +export LAUNCH_PARAMETERS="+gfx_strApi Vulkan" +export PW_WINE_USE=PROTON_GE_7.1-2 +export PW_VULKAN_USE=1 +export PW_USE_DXR10=0 +##export PW_DLSS_ON=1 +export PW_VULKAN_NO_ASYNC=0 +export PW_USE_NVAPI_AND_DLSS=0 +export PW_OLD_GL_STRING=0 +export PW_HIDE_NVIDIA_GPU=0 +export PW_FORCE_USE_VSYNC=0 +export PW_VIRTUAL_DESKTOP=0 +##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue +export ENABLE_VKBASALT=0 +##export PW_VKBASALT_EFFECTS="FakeHDR:cas" # Use Reshade in others games (dx9-12 to vulkan only) +##export PW_VKBASALT_FFX_CAS="0.75" # FidelityFX Contrast Adaptive Sharpening (min 0 - max 1) +export PW_NO_FSYNC=0 +export PW_NO_ESYNC=1 +export PW_USE_GSTREAMER=1 +##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games +##export PW_NO_WRITE_WATCH=1 # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). +export PW_HEAP_DELAY_FREE=0 +export PW_WINE_ALLOW_XIM=0 +##export WINEARCH=win32 # defaut = win64 +##export WINEPREFIX= +export PW_WINEDBG_DISABLE=1 +export PW_USE_TERMINAL=0 +export PW_GUI_DISABLED_CS=0 +##export PATH_TO_GAME= +##add_in_start_portwine () { commands ; } +export PW_MANGOHUD=1 +export PW_MANGOHUD_USER_CONF=0 +export PW_USE_DXR11=0 +export PW_USE_GAMEMODE=0 +export PW_DX12_DISABLE=0 +export PW_PRIME_RENDER_OFFLOAD=0 +export PW_D3D_EXTRAS_DISABLE=0 +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 diff --git a/data_from_portwine/scripts/portwine_db/Sheltered2 b/data_from_portwine/scripts/portwine_db/Sheltered2 new file mode 100644 index 00000000..48e338b3 --- /dev/null +++ b/data_from_portwine/scripts/portwine_db/Sheltered2 @@ -0,0 +1,47 @@ +#!/usr/bin/env bash +#Author: astarso +#Sheltered2.exe +#Rating=1-5 +#####################examples########################### +##export PW_COMMENT_DB="blablabla" +export PW_WINDOWS_VER="10" +export PW_DLL_INSTALL="" +export WINEDLLOVERRIDES="" +export LAUNCH_PARAMETERS="" +export PW_WINE_USE="PROTON_GE_7-9" +export PW_VULKAN_USE="1" +export PW_USE_DXR10="0" +##export PW_DLSS_ON=1 +export PW_VULKAN_NO_ASYNC="0" +export PW_USE_NVAPI_AND_DLSS="0" +export PW_OLD_GL_STRING="0" +export PW_HIDE_NVIDIA_GPU="0" +export PW_FORCE_USE_VSYNC="0" +export PW_VIRTUAL_DESKTOP="0" +##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue +export ENABLE_VKBASALT="0" +##export PW_VKBASALT_EFFECTS="FakeHDR:cas" # Use Reshade in others games (dx9-12 to vulkan only) +##export PW_VKBASALT_FFX_CAS="0.75" # FidelityFX Contrast Adaptive Sharpening (min 0 - max 1) +export PW_NO_FSYNC="0" +export PW_NO_ESYNC="1" +export PW_USE_GSTREAMER="1" +##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games +##export PW_NO_WRITE_WATCH=1 # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). +export PW_HEAP_DELAY_FREE="0" +export PW_WINE_ALLOW_XIM="0" +##export WINEARCH=win32 # defaut = win64 +##export WINEPREFIX= +export PW_WINEDBG_DISABLE="1" +export PW_USE_TERMINAL="0" +export PW_GUI_DISABLED_CS="0" +##export PATH_TO_GAME= +##add_in_start_portwine () { commands ; } +export PW_PREFIX_NAME="DEFAULT" +export PW_MANGOHUD_USER_CONF="0" +export PW_USE_DXR11="0" +export PW_USE_GAMEMODE="1" +export PW_DX12_DISABLE="0" +export PW_PRIME_RENDER_OFFLOAD="0" +export PW_D3D_EXTRAS_DISABLE="0" +export PW_FIX_VIDEO_IN_GAME="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" diff --git a/data_from_portwine/scripts/portwine_db/WorldOfSeaBattleClient b/data_from_portwine/scripts/portwine_db/WorldOfSeaBattleClient new file mode 100644 index 00000000..506b007c --- /dev/null +++ b/data_from_portwine/scripts/portwine_db/WorldOfSeaBattleClient @@ -0,0 +1,42 @@ +#!/usr/bin/env bash +#Author: Cefeiko +#wos_client.exe +#WorldOfSeaBattleClient.exe +#Rating=1-5 +#####################examples########################### +export PW_COMMENT_DB="World of Sea Battle" +export PW_PREFIX_NAME="DOTNET" +export PW_WINDOWS_VER="10" +export PW_DLL_INSTALL="dotnet20sp2 dotnet48 faudio" +export WINEDLLOVERRIDES="quartz=b" +export LAUNCH_PARAMETERS="" +export PW_WINE_USE="PROTON_GE_7-14" +export PW_VULKAN_USE="1" +export PW_VULKAN_NO_ASYNC="0" +export PW_USE_NVAPI_AND_DLSS="0" +export PW_OLD_GL_STRING="0" +export PW_HIDE_NVIDIA_GPU="0" +export PW_FORCE_USE_VSYNC="0" +export PW_VIRTUAL_DESKTOP="0" +export ENABLE_VKBASALT="0" +export PW_VKBASALT_EFFECTS="cas:FilmGrain2:Curves:Colourfulness:GaussianBlur" +export PW_VKBASALT_FFX_CAS="0.50" +export PW_NO_FSYNC="0" +export PW_NO_ESYNC="1" +export PW_USE_GSTREAMER="0" +export PW_HEAP_DELAY_FREE="0" +export PW_WINE_ALLOW_XIM="0" +export PW_WINEDBG_DISABLE="1" +export PW_USE_TERMINAL="0" +export PW_GUI_DISABLED_CS="0" +export PW_MANGOHUD="0" +export PW_MANGOHUD_USER_CONF="0" +export PW_USE_DXR11="0" +export PW_USE_GAMEMODE="1" +export PW_DX12_DISABLE="0" +export PW_PRIME_RENDER_OFFLOAD="0" +export PW_D3D_EXTRAS_DISABLE="0" +export PW_FIX_VIDEO_IN_GAME="0" +export PW_USE_AMDVLK_DRIVER="1" +export PW_FORCE_LARGE_ADDRESS_AWARE="1" +export PW_USE_SHADER_CACHE="1" diff --git a/data_from_portwine/scripts/portwine_db/death_stranding b/data_from_portwine/scripts/portwine_db/death_stranding new file mode 100644 index 00000000..7d9ce173 --- /dev/null +++ b/data_from_portwine/scripts/portwine_db/death_stranding @@ -0,0 +1,35 @@ +#!/usr/bin/env bash +#Author: +#ds.exe +#Rating=5 +################################################ +export PW_VULKAN_USE="2" +export LAUNCH_PARAMETERS="" +export WINEDLLOVERRIDES="d3dcompiler_47,dxcompiler=n,b" +export PW_WINE_USE="PROTON_GE_7-9" +export PW_PREFIX_NAME="DEFAULT" +export PW_MANGOHUD_USER_CONF="0" +export ENABLE_VKBASALT="0" +export PW_NO_ESYNC="1" +export PW_NO_FSYNC="0" +export PW_USE_DXR10="0" +export PW_USE_DXR11="0" +export PW_VULKAN_NO_ASYNC="0" +export PW_USE_NVAPI_AND_DLSS="0" +export PW_OLD_GL_STRING="0" +export PW_HIDE_NVIDIA_GPU="0" +export PW_FORCE_USE_VSYNC="0" +export PW_VIRTUAL_DESKTOP="0" +export PW_WINEDBG_DISABLE="1" +export PW_USE_TERMINAL="0" +export PW_WINE_ALLOW_XIM="0" +export PW_HEAP_DELAY_FREE="0" +export PW_GUI_DISABLED_CS="0" +export PW_USE_GSTREAMER="1" +export PW_USE_GAMEMODE="1" +export PW_DX12_DISABLE="0" +export PW_PRIME_RENDER_OFFLOAD="0" +export PW_D3D_EXTRAS_DISABLE="0" +export PW_FIX_VIDEO_IN_GAME="1" +export PW_WINDOWS_VER="10" +export PW_DLL_INSTALL="" diff --git a/data_from_portwine/scripts/portwine_db/gta3 b/data_from_portwine/scripts/portwine_db/gta3 new file mode 100644 index 00000000..c6a437f1 --- /dev/null +++ b/data_from_portwine/scripts/portwine_db/gta3 @@ -0,0 +1,44 @@ +#!/usr/bin/env bash +#Author: norz3n +#gta3.exe +#Rating=1-5 +#####################examples########################### +##export PW_COMMENT_DB="blablabla" +export PW_WINDOWS_VER=XP # Set windows version 10, 7 or XP +##export PW_DLL_INSTALL="vcrun2017" # Install DDL in port prefix (used winetricks) +export WINEDLLOVERRIDES="d3d8,drvmgt,mss32=n,b" +##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options +export PW_WINE_USE=PROTON_GE_7.1-2 +export PW_VULKAN_USE=0 +export PW_USE_DXR10=0 +##export PW_DLSS_ON=1 +export PW_VULKAN_NO_ASYNC=0 +export PW_USE_NVAPI_AND_DLSS=0 +export PW_OLD_GL_STRING=0 +export PW_HIDE_NVIDIA_GPU=0 +export PW_FORCE_USE_VSYNC=0 +export PW_VIRTUAL_DESKTOP=1 +##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue +export ENABLE_VKBASALT=0 +##export PW_VKBASALT_EFFECTS="FakeHDR:cas" # Use Reshade in others games (dx9-12 to vulkan only) +##export PW_VKBASALT_FFX_CAS="0.75" # FidelityFX Contrast Adaptive Sharpening (min 0 - max 1) +export PW_NO_FSYNC=0 +export PW_NO_ESYNC=1 +export PW_USE_GSTREAMER=1 +##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games +export PW_NO_WRITE_WATCH=0 +export PW_HEAP_DELAY_FREE=0 +export PW_WINE_ALLOW_XIM=0 +##export WINEARCH=win32 # defaut = win64 +##export WINEPREFIX= +export PW_WINEDBG_DISABLE=1 +export PW_USE_TERMINAL=0 +export PW_GUI_DISABLED_CS=0 +##export PATH_TO_GAME= +##add_in_start_portwine () { commands ; } +export PW_MANGOHUD_USER_CONF=0 +export PW_USE_DXR11=0 +export PW_USE_GAMEMODE=1 +export PW_DX12_DISABLE=0 +export PW_PRIME_RENDER_OFFLOAD=0 +export PW_D3D_EXTRAS_DISABLE=0 diff --git a/data_from_portwine/scripts/pw_autoinstall/PW_BATTLE_NET b/data_from_portwine/scripts/pw_autoinstall/PW_BATTLE_NET index c1c3bd7b..bb97e24c 100755 --- a/data_from_portwine/scripts/pw_autoinstall/PW_BATTLE_NET +++ b/data_from_portwine/scripts/pw_autoinstall/PW_BATTLE_NET @@ -10,7 +10,7 @@ then pw_kill_autostart Battle.net.exe & pw_run "${PW_AUTOINSTALL_EXE}" portwine_exe=`find "$WINEPREFIX/drive_c/" -type f -name "Battle.net.exe"` - PW_STOP_PROGRESS + pw_stop_progress_bar portwine_create_shortcut try_remove_file "${PW_AUTOINSTALL_EXE}" fi diff --git a/data_from_portwine/scripts/pw_autoinstall/PW_OSU b/data_from_portwine/scripts/pw_autoinstall/PW_OSU index a746290e..bb0555cb 100755 --- a/data_from_portwine/scripts/pw_autoinstall/PW_OSU +++ b/data_from_portwine/scripts/pw_autoinstall/PW_OSU @@ -3,7 +3,7 @@ ######################################################################## export PW_PREFIX_NAME=DOTNET start_portwine -export PW_DLL_INSTALL="dotnet40" +export PW_DLL_INSTALL="dotnet48" mkdir -p "${WINEPREFIX}/drive_c/Program Files (x86)/OSU/" export PW_AUTOINSTALL_EXE="${WINEPREFIX}/drive_c/Program Files (x86)/OSU/osu!.exe" if try_download "https://m1.ppy.sh/r/osu!install.exe" "${PW_AUTOINSTALL_EXE}" diff --git a/data_from_portwine/scripts/pw_autoinstall/PW_WOSB b/data_from_portwine/scripts/pw_autoinstall/PW_WOSB new file mode 100644 index 00000000..9a82fc76 --- /dev/null +++ b/data_from_portwine/scripts/pw_autoinstall/PW_WOSB @@ -0,0 +1,37 @@ +#!/usr/bin/env bash +# Author: Cefeiko +######################################################################## +export PW_PREFIX_NAME="DOTNET" +export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/wos_client.exe" +export LAUNCH_PARAMETERS=("/VERYSILENT") +export PW_DLL_INSTALL="dotnet20sp2 dotnet48 faudio" +export PW_VULKAN_USE=1 + +if [ ! -d "${PORT_WINE_PATH}/data/dist/${PW_WINE_USE}" ] ; then + if try_download "https://github.com/Castro-Fidel/wine_builds/releases/download/${PW_WINE_USE}/${PW_WINE_USE}.tar.xz" \ + "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz" ; then + if unpack_tar_xz "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz" "${PORT_WINE_PATH}/data/dist/" ; then + try_remove_file "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz" + UNPACK_STATUS=0 + else + try_remove_file "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz" + try_remove_dir "${PORT_WINE_PATH}/data/dist/${PW_WINE_USE}" + fi + fi + [[ "${UNPACK_STATUS}" != 0 ]] && exit 1 +fi +start_portwine +if try_download "https://165311.selcdn.ru/wosb_installer/wos_client.exe" "${PW_AUTOINSTALL_EXE}" +then + pw_start_progress_bar_block "Installing World of Sea Battle. Please wait..." + + pw_kill_autostart WorldOfSeaBattleClient.exe & + pw_run "${PW_AUTOINSTALL_EXE}" + portwine_exe="$WINEPREFIX/drive_c/Games/World Of Sea Battle/WorldOfSeaBattleClient.exe" + try_remove_file "${PW_AUTOINSTALL_EXE}" + kill_portwine + pw_stop_progress_bar + export PORTWINE_CREATE_SHORTCUT_NAME="World of Sea Battle" + portwine_create_shortcut +fi +stop_portwine diff --git a/data_from_portwine/scripts/runlib b/data_from_portwine/scripts/runlib index 56f5a06b..5f217b55 100755 --- a/data_from_portwine/scripts/runlib +++ b/data_from_portwine/scripts/runlib @@ -153,10 +153,12 @@ start_portwine () { fi [[ ! -z "${PW_MANGOHUD_USER_CONF}" && "${PW_MANGOHUD_USER_CONF}" != 0 ]] && unset MANGOHUD_CONFIG - if [[ ! -z "${PW_USE_DXR11}" && "${PW_USE_DXR11}" != 0 ]] - then var_vkd3d_config_update dxr11 - elif [[ ! -z "${PW_USE_DXR10}" && "${PW_USE_DXR10}" != 0 ]] - then var_vkd3d_config_update dxr + if [[ ! -z "${PW_USE_DXR11}" && "${PW_USE_DXR11}" != 0 ]] ; then + var_vkd3d_config_update dxr11 + var_radv_perftest_config_update rt + elif [[ ! -z "${PW_USE_DXR10}" && "${PW_USE_DXR10}" != 0 ]] ; then + var_vkd3d_config_update dxr + var_radv_perftest_config_update rt fi export optirun_on="" export check_optimus_manager= @@ -204,19 +206,12 @@ start_portwine () { setxkbmap us,ru fi fi - if [[ -x "`which "gamemoderun" 2>/dev/null`" && "$PW_USE_GAMEMODE" = "1" ]] && \ - [[ -z "`cat /etc/os-release | grep -i "red hat"`" ]] && \ - [[ -z "`cat /etc/os-release | grep -i "centos"`" ]] ; then - export PW_GAMEMODERUN=1 - if [[ ! -z "${PW_LD_PRELOAD}" ]] ; then - export PW_LD_PRELOAD="$PW_LD_PRELOAD:libgamemodeauto.so.0" - else - export PW_LD_PRELOAD="libgamemodeauto.so.0" - fi + if [[ -x "`which "gamemoderun" 2>/dev/null`" ]] && [[ "$PW_USE_GAMEMODE" = "1" ]] ; then + export GAMEMODERUN=1 PW_GAMEMODERUN_SLR="gamemoderun" echo "Gamemod will be launched." else - export PW_GAMEMODERUN=0 + export GAMEMODERUN=0 echo "Gamemod is not installed or disabled in vars script or db file: PW_USE_GAMEMODE=$PW_USE_GAMEMODE" fi pw_other_fixes @@ -251,9 +246,9 @@ start_portwine () { then pw_clear_pfx check_dirs_and_files_in_pfx - # if [[ -d "${WINEDIR}/share/default_pfx/" ]] ; then - # cp -frL "${WINEDIR}/share/default_pfx/"* "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/" - # fi + if [[ -d "${PW_PLUGINS_PATH}/default_pfx/" ]] ; then + cp -frL "${PW_PLUGINS_PATH}/default_pfx/"* "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/" + fi ${pw_runtime} env LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" "${WINELOADER}" wineboot -i &>>"${PORT_WINE_TMP_PATH}/update_pfx_log" wait_wineserver && echo "${PW_WINE_USE}" > "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/.wine_ver" @@ -290,13 +285,7 @@ start_portwine () { if [[ "${PW_D3D_EXTRAS_DISABLE}" != 1 ]] ; then var_winedlloverride_update "${d3d_extras_from_plugins}=n,b" fi - 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" - fi done - if [[ -z "`grep d3dx9 "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log"`" ]] ; then - echo "d3dx9" >> "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" - fi var_winedlloverride_update "steam_api,steam_api64,steamclient,steamclient64=n;lsteamclient,winemenubuilder.exe=" # export TOTAL_VRAM=`"${PW_WINELIB}/runtime/files/bin/glxinfo" -B | grep Total | awk -F: '{print $2}' | awk '{print $1}'` @@ -314,7 +303,7 @@ start_portwine () { then try_force_link_file "${WINEDIR}"/lib64/wine/x86_64-windows/dxgi.dll "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/dxgi.dll" fi echo "Try link wine d3d filese..." - for wine_build_dll in d3d11 d3d10 d3d10core d3d10_1 d3d9 ; do + for wine_build_dll in d3d11 d3d10 d3d10core d3d10_1 d3d9 dxgi ; do if ! try_force_link_file "${WINEDIR}/lib/wine/${wine_build_dll}.dll" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/${wine_build_dll}.dll" then try_force_link_file "${WINEDIR}/lib/wine/i386-windows/${wine_build_dll}.dll" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/${wine_build_dll}.dll" fi @@ -323,32 +312,51 @@ start_portwine () { fi done var_winedlloverride_update "d3d11,d3d10,d3d10core,d3d10_1,d3d9,dxgi=b;d3d12=" - elif [[ "${PW_VULKAN_USE}" == 3 ]] ; then + elif [[ "${PW_VULKAN_USE}" == "3" ]] ; then echo "Use GALLIUM-NINE (Native DX9 on MESA drivers)" echo "Try link wine DXGI..." export PW_GALLIUM_NINE_VER="0.8" export PW_GALLIUM_NINE_PATH="${PW_PLUGINS_PATH}/gallium_nine_v.${PW_GALLIUM_NINE_VER}" try_force_link_file "${PW_GALLIUM_NINE_PATH}/lib32/d3d9-nine.dll.so" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/d3d9.dll" try_force_link_file "${PW_GALLIUM_NINE_PATH}/lib64/d3d9-nine.dll.so" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/d3d9.dll" - var_winedlloverride_update "d3d9=n;d3d10,d3d11,dxvk_config,vulkan-1,winevulkan=" - export D3D_MODULE_PATH="${PW_GALLIUM_NINE_PATH}/lib32:${PW_GALLIUM_NINE_PATH}/lib64" + var_winedlloverride_update "d3d9=n;wined3d=b;d3d10,d3d11,dxvk_config,vulkan-1,winevulkan=" + unset FIND_D3D_MODULE D3D_MODULE_PATH + FIND_D3D_MODULE=`dirname $(find /usr/ -maxdepth 4 -type f -name "d3dadapter9.so.*") 2>/dev/null` + if [[ ! -z "$FIND_D3D_MODULE" ]] ; then + old_IFS=$IFS + IFS=$'\n' + for D3D_MP in $FIND_D3D_MODULE ; do + if [[ ! -z "$D3D_MODULE_PATH" ]] + then export D3D_MODULE_PATH="$D3D_MODULE_PATH:/run/host${D3D_MP}" + else export D3D_MODULE_PATH="/run/host${D3D_MP}" + fi + done + IFS=$old_IFS + print_info "D3D_MODULE_PATH=${D3D_MODULE_PATH}" + else + pw_stop_progress_bar + zenity_error "d3dadapter9.so.1.0.0 - ${loc_find_d3dadapter9_error}" + stop_portwine + fi + export LIBGL_ALWAYS_SOFTWARE=true export PW_DX12_DISABLE=1 export ENABLE_VKBASALT=0 export PW_MANGOHUD=0 export WINE_FULLSCREEN_FSR=0 + export __GLX_VENDOR_LIBRARY_NAME=mesa else echo "Use VKD3D-PROTON and DXVK (DX 9-12 to vulkan)" - if [[ ! -z "${PW_USE_AMDVLK_DRIVER}" && "${PW_USE_AMDVLK_DRIVER}" != 0 ]] - then export AMD_VULKAN_ICD=AMDVLK - else export AMD_VULKAN_ICD=RADV + if [[ ! -z "${PW_USE_AMDVLK_DRIVER}" && "${PW_USE_AMDVLK_DRIVER}" != 0 ]] ; then + export AMD_VULKAN_ICD=AMDVLK + print_info "Try to use AMDVLK driver (only with MESA)" + else + export AMD_VULKAN_ICD=RADV + print_info "Try to use RADV driver (only with MESA)" fi export VKD3D_FEATURE_LEVEL="12_0" - create_new_dir "${PORT_WINE_TMP_PATH}/dxvk_cache" - export DXVK_STATE_CACHE_PATH="${PORT_WINE_TMP_PATH}"/dxvk_cache - export DXVK_STATE_CACHE=1 export __GL_DXVK_OPTIMIZATIONS=1 - export CP_DXVK_FILES="d3d11 d3d10 d3d10core d3d10_1 d3d9 dxgi dxvk_config" + export CP_DXVK_FILES="d3d11 d3d10 d3d10core d3d10_1 d3d9 dxgi dxvk_config openvr_api_dxvk" echo "Try link native DXVK files..." for wine_dxvk_dll in ${CP_DXVK_FILES} ; do try_force_link_file "${WINEDIR}/lib/wine/dxvk/${wine_dxvk_dll}.dll" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/${wine_dxvk_dll}.dll" @@ -379,15 +387,38 @@ start_portwine () { else var_winedlloverride_update "d3d12,libvkd3d-proton-utils-3,libvkd3d-shader-1=n" fi - create_new_dir "${PORT_WINE_TMP_PATH}/gl_shader_cache" - export __GL_SHADER_DISK_CACHE_PATH="${PORT_WINE_TMP_PATH}/gl_shader_cache" - export __GL_SHADER_DISK_CACHE=1 - export __GL_SHADER_DISK_CACHE_SIZE=1000000000 - #run_winetricks_from_db - if [ ! -z "${PW_MUST_HAVE_DLL}" ] - then export PW_DLL_INSTALL="${PW_MUST_HAVE_DLL} ${PW_DLL_INSTALL}" + if [[ ! -d "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/vrclient/bin" ]] ; then + create_new_dir "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/vrclient/bin" + if ! try_force_link_file "${WINEDIR}"/lib/wine/fakedlls/vrclient.dll "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/vrclient/bin/vrclient.dll" + then try_force_link_file "${WINEDIR}"/lib/wine/i386-windows/vrclient.dll "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/vrclient/bin/vrclient.dll" + fi + if ! try_force_link_file "${WINEDIR}"/lib64/wine/fakedlls/vrclient_x64.dll "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/vrclient/bin/vrclient_x64.dll" + then try_force_link_file "${WINEDIR}"/lib64/wine/x86_64-windows/vrclient_x64.dll "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/vrclient/bin/vrclient_x64.dll" + fi fi - if [ ! -z "${PW_DLL_INSTALL}" ]; then + + if [[ "${PW_USE_SHADER_CACHE}" == 1 ]] ; then + create_new_dir "${PORT_WINE_TMP_PATH}/gl_shader_cache" + export __GL_SHADER_DISK_CACHE_PATH="${PORT_WINE_TMP_PATH}/gl_shader_cache" + export __GL_SHADER_DISK_CACHE=1 + export __GL_SHADER_DISK_CACHE_SIZE=1000000000 + create_new_dir "${PORT_WINE_TMP_PATH}/dxvk_cache" + export DXVK_STATE_CACHE_PATH="${PORT_WINE_TMP_PATH}"/dxvk_cache + export DXVK_STATE_CACHE=1 + create_new_dir "${PORT_WINE_TMP_PATH}/vkd3d_cache" + export VKD3D_SHADER_CACHE_PATH="${PORT_WINE_TMP_PATH}/vkd3d_cache" + else + export __GL_SHADER_DISK_CACHE=0 + export DXVK_STATE_CACHE=0 + export VKD3D_SHADER_CACHE_PATH=0 + export RADV_DEBUG=nocache + fi + + #run_winetricks_from_db + 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)} }' `" + fi + if [[ ! -z "${PW_DLL_INSTALL}" ]] ; then export PW_DLL_NEED_INSTALL="" export USE_WT_FROM_DB=0 if [ ! -e "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" ] ; then @@ -403,20 +434,19 @@ start_portwine () { sed -i '/vcrun2017/d' "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" fi grep "${need_install_dll_to_pfx}" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" - if [ "$?" == "1" ] ; then - if [ -z "${PW_DLL_NEED_INSTALL}" ] + if [[ "$?" == "1" ]] ; then + if [[ -z "${PW_DLL_NEED_INSTALL}" ]] then export PW_DLL_NEED_INSTALL="${need_install_dll_to_pfx}" else export PW_DLL_NEED_INSTALL="${need_install_dll_to_pfx} ${PW_DLL_NEED_INSTALL}" fi export USE_WT_FROM_DB=1 fi done - if [ "${USE_WT_FROM_DB}" == "1" ] ; then + if [[ "${USE_WT_FROM_DB}" == "1" ]] ; then update_winetricks echo "START WINETRICKS..." >> "${PORT_WINE_TMP_PATH}/update_pfx_log" echo "Try to install DLL in prefix: ${PW_DLL_NEED_INSTALL}" >> "${PORT_WINE_TMP_PATH}/update_pfx_log" print_info "Try to install DLL in prefix: ${PW_DLL_NEED_INSTALL}" - chmod -R 775 "${HOME}/.cache/winetricks" ${pw_runtime} env PATH="${PATH}" LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" \ "${PORT_WINE_TMP_PATH}/winetricks" -q -r -f ${PW_DLL_NEED_INSTALL} &>>"${PORT_WINE_TMP_PATH}/update_pfx_log" wait_wineserver @@ -499,7 +529,6 @@ export PORT_WINE_TMP_PATH="${PORT_WINE_PATH}/data/tmp" rm -f "${PORT_WINE_TMP_PATH}"/*.tar.* if [[ -d "${PORT_WINE_PATH}/data/dist" ]] ; then - chmod -R 755 "${PORT_WINE_PATH}/data/dist" orig_IFS="$IFS" IFS=$'\n' for dist_dir in $(ls -1 "${PORT_WINE_PATH}/data/dist/") ; do diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index 86c4cd28..3dabebe5 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -137,9 +137,15 @@ portwine_start_debug () { echo "!!!gamemod not found!!!" >> "${PORT_WINE_PATH}/${portname}.log" fi echo "-------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" + if [[ "${PW_D3D_EXTRAS_DISABLE}" == 1 ]] + then echo "D3D_EXTRAS - disable" >> "${PORT_WINE_PATH}/${portname}.log" + else echo "D3D_EXTRAS - enable" >> "${PORT_WINE_PATH}/${portname}.log" + fi + echo + echo "------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "winetricks.log:" >> "${PORT_WINE_PATH}/${portname}.log" cat "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" >> "${PORT_WINE_PATH}/${portname}.log" - echo "------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" + echo "-----------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" if [ ! -z "${PORTWINE_DB_FILE}" ]; then echo "Use ${PORTWINE_DB_FILE} db file:" >> "${PORT_WINE_PATH}/${portname}.log" cat "${PORTWINE_DB_FILE}" | sed '/##/d' >> "${PORT_WINE_PATH}/${portname}.log" @@ -147,11 +153,11 @@ portwine_start_debug () { echo "Use ${PORT_SCRIPTS_PATH}/portwine_db/default db file:" >> "${PORT_WINE_PATH}/${portname}.log" cat "${PORT_SCRIPTS_PATH}/portwine_db/default" | sed '/##/d' >> "${PORT_WINE_PATH}/${portname}.log" fi - echo "-----------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" + echo "----------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" if [ -f "${USER_CONF}" ]; then cat "${USER_CONF}" | sed '/bash/d' >> "${PORT_WINE_PATH}/${portname}.log" fi - echo "----------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" + echo "---------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" export DXVK_HUD="full" @@ -343,6 +349,7 @@ pw_create_prefix_backup () { unset PW_SANDBOX_HOME_PATH export PW_ADD_TO_ARGS_IN_RUNTIME="--xterm" pw_init_runtime + chmod -R u+w "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}" ${pw_runtime} env PATH="${PATH}" LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" mksquashfs "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}" "${PW_PREFIX_TO_BACKUP}/${PW_PREFIX_NAME}.ppack.part" -comp zstd & sleep 15 while true ; do @@ -369,7 +376,7 @@ pw_edit_db () { PW_VULKAN_NO_ASYNC PW_USE_NVAPI_AND_DLSS PW_OLD_GL_STRING PW_HIDE_NVIDIA_GPU PW_FORCE_USE_VSYNC PW_VIRTUAL_DESKTOP \ PW_WINEDBG_DISABLE PW_USE_TERMINAL PW_WINE_ALLOW_XIM PW_HEAP_DELAY_FREE PW_GUI_DISABLED_CS PW_USE_GSTREAMER \ PW_USE_GAMEMODE PW_DX12_DISABLE PW_PRIME_RENDER_OFFLOAD PW_D3D_EXTRAS_DISABLE PW_FIX_VIDEO_IN_GAME PW_USE_AMDVLK_DRIVER \ - PW_FORCE_LARGE_ADDRESS_AWARE + PW_FORCE_LARGE_ADDRESS_AWARE PW_USE_SHADER_CACHE if [ "$?" == 0 ] ; then /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 @@ -613,7 +620,6 @@ else --field=" Epic Games Launcher"!"$PW_GUI_ICON_PATH/epicgames.png"!"":"FBTN" '@bash -c "button_click PW_EPIC"' \ --field=" GoG Galaxy Launcher"!"$PW_GUI_ICON_PATH/gog.png"!"":"FBTN" '@bash -c "button_click PW_GOG"' \ --field=" Ubisoft Game Launcher"!"$PW_GUI_ICON_PATH/ubc.png"!"":"FBTN" '@bash -c "button_click PW_UBC"' \ - --field=" Steam Client Launcher"!"$PW_GUI_ICON_PATH/steam.png"!"":"FBTN" '@bash -c "button_click PW_STEAM"' \ --field=" EVE Online Launcher"!"$PW_GUI_ICON_PATH/eve.png"!"":"FBTN" '@bash -c "button_click PW_EVE"' \ --field=" Origin Launcher"!"$PW_GUI_ICON_PATH/origin.png"!"":"FBTN" '@bash -c "button_click PW_ORIGIN"' \ --field=" Bethesda.net Launcher"!"$PW_GUI_ICON_PATH/bethesda.png"!"":"FBTN" '@bash -c "button_click PW_BETHESDA"' \ @@ -623,8 +629,11 @@ else --field=" Ankama Launcher"!"$PW_GUI_ICON_PATH/ankama.png"!"":"FBTN" '@bash -c "button_click PW_ANKAMA"' \ --field=" League of Legends"!"$PW_GUI_ICON_PATH/lol.png"!"":"FBTN" '@bash -c "button_click PW_LOL"' \ --field=" Gameforge Client"!"$PW_GUI_ICON_PATH/gameforge.png"!"":"FBTN" '@bash -c "button_click PW_GAMEFORGE"' \ + --field=" World of Sea Battle (BETA)"!"$PW_GUI_ICON_PATH/wosb.png"!"":"FBTN" '@bash -c "button_click PW_WOSB"' \ --field=" ITCH.IO"!"$PW_GUI_ICON_PATH/itch.png"!"":"FBTN" '@bash -c "button_click PW_ITCH"' & + # --field=" Steam Client Launcher"!"$PW_GUI_ICON_PATH/steam.png"!"":"FBTN" '@bash -c "button_click PW_STEAM"' + "${pw_yad_new}" --key=$KEY --notebook --borders=5 --width=1000 --height=235 --no-buttons --auto-close --center \ --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "${portname}-${install_ver} (${scripts_install_ver})" \ --tab-pos=bottom --tab="AUTOINSTALL"!""!"" --tab="EMULATORS"!""!"" --tab=" WINE SETTINGS"!""!"" --tab=" PORPROTON SETTINGS"!""!"" diff --git a/data_from_portwine/scripts/var b/data_from_portwine/scripts/var index a6d97f0e..6e347f78 100755 --- a/data_from_portwine/scripts/var +++ b/data_from_portwine/scripts/var @@ -1,16 +1,14 @@ #!/usr/bin/env bash #Author: Castro-Fidel (PortWINE-Linux.ru) -#SCRIPTS_NEXT_VERSION=2097 -#PORT_NEXT_VERSION=97 +#SCRIPTS_NEXT_VERSION=2099 ######################################################################## export PW_MANGOHUD=0 -export MANGOHUD_CONFIG=cpu_stats,cpu_temp,cpu_mhz,cpu_color=2e97cb,cpu_text=CPU,gpu_stats,gpu_temp,gpu_core_clock,gpu_mem_clock,vulkan_driver,gpu_name,gpu_color=2e9762,gpu_text=GPU,vram,vram_color=ad64c1,ram,ram_color=c26693,io_color=a491d3,frame_timing=1,frametime_color=00ff00,time,arch,wine,wine_color=eb5b5b,engine_color=eb5b5b,background_alpha=0.2,font_size=24,background_color=020202,text_color=ffffff,toggle_hud=Shift_R+F12,resolution,vkbasalt,gamemode +export MANGOHUD_CONFIG=cpu_stats,cpu_temp,cpu_mhz,cpu_color=2e97cb,cpu_text=CPU,gpu_stats,gpu_temp,gpu_core_clock,gpu_mem_clock,vulkan_driver,gpu_name,gpu_color=2e9762,gpu_text=GPU,vram,vram_color=ad64c1,ram,ram_color=c26693,io_color=a491d3,frame_timing=1,frametime_color=00ff00,time,arch,wine,wine_color=eb5b5b,engine_color=eb5b5b,background_alpha=0.2,font_size=24,background_color=020202,text_color=ffffff,toggle_hud=Shift_R+F12,resolution,vkbasalt #export DXVK_HUD=compiler #export GALLIUM_HUD=fps #export ENABLE_VKBASALT=1 #export PW_VIRTUAL_DESKTOP=1 #export PW_XKBD_RU_HACK=1 -export PW_USE_RUNTIME=1 # 0 - disabled; 1 - enabled export PW_RT_MOUNT_RO=("") export PW_RT_MOUNT_RW=("/media" "/mnt" "/run/media/${USER}" "${PORT_WINE_PATH}") #export PW_SANDBOX_HOME_PATH="${PORT_WINE_PATH}" @@ -23,22 +21,23 @@ export PW_USE_TERMINAL=0 export PW_WINEDBG_DISABLE=1 export PW_WINDOWS_VER="10" export WINEARCH="win64" -export PW_LIBS_VER="_v25" +export PW_LIBS_VER="_v27" export PORTWINE_URL="http://portwine-linux.ru/" export GDK_BACKEND="x11" export PW_USE_GSTREAMER="1" export PW_PREFIX_NAME="DEFAULT" export WINE_WIN_START="start.exe /i /unix" +export PW_USE_SHADER_CACHE=1 export STAGING_SHARED_MEMORY=1 export PW_FORCE_LARGE_ADDRESS_AWARE=1 ###DEFAULT_WINE### export PW_WINE_USE=PROTON_GE -export PW_PLUGINS_VER="_v4" +export PW_PLUGINS_VER="_v5" ###WINE_PROTON_STEAM### export PW_STEAM_VER="7.0-1B" export PW_PROTON_STEAM_VER="PROTON_STEAM_${PW_STEAM_VER}" ###WINE_PROTON_GE### -export PW_GE_VER="7-9" +export PW_GE_VER="7-14" export PW_PROTON_GE_VER="PROTON_GE_${PW_GE_VER}" export WINE_FULLSCREEN_FSR="1" export WINE_FULLSCREEN_FSR_STRENGTH="2" @@ -50,7 +49,7 @@ pw_install_dll_in_prefix () { case $PW_PREFIX_NAME in DEFAULT) export PW_MUST_HAVE_DLL="physx mfc42 vcrun2019" ;; - DOTNET) export PW_MUST_HAVE_DLL="physx mfc42 vcrun2019 dotnet20sp2 dotnet48" ;; + DOTNET) export PW_MUST_HAVE_DLL="physx mfc42 vcrun2019 dotnet20sp2 dotnet48 faudio" ;; *) export PW_MUST_HAVE_DLL="" ;; esac } diff --git a/portwine_install_script/PortProton-97 b/portwine_install_script/PortProton-97 deleted file mode 100755 index 42a71abf..00000000 --- a/portwine_install_script/PortProton-97 +++ /dev/null @@ -1,162 +0,0 @@ -#!/usr/bin/env bash -# Author: Castro-Fidel (PortWINE-Linux.ru) -# License MIT -######################################################################## -unset PW_AUTOPLAY PW_SET_LANG PW_SILENT_INSTALL -export portname="PortProton" -export port_ver=1.0 -######################################################################## -[[ -z "${LANG}" ]] && export LANG=C -deflink="${HOME}/PortWINE/${portname}" -[[ $(id -u) -eq 0 ]] && echo "Do not run the script from the superuser!" && zenity --error --text "Do not run the script from the superuser!" 2> /dev/null && exit 1 -if [[ "$(dirname "`readlink -f "$0"`")" == "/usr/bin" ]] ; then - [[ -z "${XDG_DATA_HOME}" ]] && export XDG_DATA_HOME="$HOME/.local/share" - if [[ -f "${XDG_DATA_HOME}/PortWINE/PortProton/data/scripts/start.sh" ]] ; then - /usr/bin/env bash "${XDG_DATA_HOME}/PortWINE/PortProton/data/scripts/start.sh" "$@" - exit 0 - else - if [[ ! -z "`locale | grep "LANG=ru_RU.UTF-8"`" ]] ; then - PW_SET_LANG="Russian" - else - PW_SET_LANG="English" - fi - export PW_SILENT_INSTALL="1" - export PW_AUTOPLAY=1 - deflink="${XDG_DATA_HOME}/PortWINE/${portname}" - fi -fi -######################################################################## -export INSTALLING_PORT=1 -export PROGS_INST="" -export vexit=0 -######################################################################## -for PROGS in "wget" "curl" "tar" "awk" "zenity" "cabextract" "pidof" ; do - if [ ! -x "`which "${PROGS}" 2>/dev/null`" ] ; then - PROGS_INST="${PROGS_INST} ${PROGS}" && vexit=1 - fi -done -if [ "${vexit}" -eq "1" ] ; then - echo "You will need to install: ${PROGS_INST}, and restart the script" - exit 1 -fi -######################################################################## -cd "$(dirname "`readlink -f "$0"`")" -links="$(pwd)" -######################################################################## -if [ "$1" = "-rus" ] ; then - PW_SET_LANG="Russian" - export PW_SILENT_INSTALL="1" -elif [ "$1" = "-eng" ] ; then - PW_SET_LANG="English" - export PW_SILENT_INSTALL="1" -elif [ -z "${PW_SET_LANG}" ] ; then - PW_SET_LANG=`zenity --title "Install $portname" --text "Select the installation language" --list --radiolist \ ---column="Set:" --column "Language:" \ - TRUE "Russian" \ - FALSE "English" ` 2> /dev/null - if [ $? -eq 1 ] ; then exit 1 ; fi - case $PW_SET_LANG in - "Russian") - INFO_TEXT="Вы запустили установщик PortWINE ${portname} версии ${port_ver}. \n\nЭто не коммерческий продукт и развивается исключительно за идею и Ваши пожертвования. \nВсе права сторонего програмного обеспечения принадлежат их владельцам! \nПродолжая установку вы автоматически соглашаетесь с данными условиями." > /dev/null 2>&1 ;; - "English") - INFO_TEXT="You run the installer PortWINE ${portname} v. ${port_ver}. \n\nThis is not a commercial product and developed exclusively for the idea and donate. \nAll rights to third-party software belong to their respective owners! \nContinuing the installation of you agree to these terms." > /dev/null 2>&1 ;; - esac - `zenity --info --title "INFO" --text "$INFO_TEXT" --no-wrap ` 2> /dev/null - if [ $? -eq 1 ] ; then echo "error" && exit 1 ; fi -fi -######################################################################## -if [ "${PW_SILENT_INSTALL}" = "1" ] ; then - echo "${portname} is installed in ${deflink}" - D_PATH="${deflink}" -else - case $PW_SET_LANG in - "Russian") - inst1=`zenity --title "Install ${portname}" --text "Выберите путь для установки (обновления) порта,\nили оставьте его по умолчанию." --list --radiolist --width=350 --height=220 \ - --column="Выбор" --column "Путь:" \ - TRUE "${deflink}" \ - FALSE "Другой путь..." ` 2> /dev/null - if [ $? -eq 1 ] ; then exit 1 ; fi - case $inst1 in - "${deflink}") - D_PATH="${deflink}" ;; - "Другой путь...") - D_PATH=`zenity --file-selection --directory --title="Выберите путь..." ` - D_PATH="${D_PATH}/${portname}" ;; - esac ;; - "English") - inst1=`zenity --title "Install ${portname}" --text "Select the installation path (update) port,\nor leave it in default." --list --radiolist --width=350 --height=220 \ - --column="Set..." --column "Path:" \ - TRUE "${deflink}" \ - FALSE "Other path..." ` 2> /dev/null - if [ $? -eq 1 ];then exit 1; fi - case $inst1 in - "${deflink}") - D_PATH="${deflink}" ;; - "Other path...") - D_PATH=`zenity --file-selection --directory --title="Select the path..." ` - D_PATH="${D_PATH}/${portname}" ;; - esac ;; - esac - if [ $? -eq 1 ] ; then echo "error" && exit 1 ; fi -fi -######################################################################## -case $PW_SET_LANG in - "Russian") - progress_bar() { - zenity --progress --title="Установка..." --text="Настройка ${portname}" --pulsate --auto-close --auto-kill --width=450 > /dev/null 2>&1 - } ;; - "English") - progress_bar() { - zenity --progress --title="Install..." --text="Install ${portname}" --pulsate --auto-close --auto-kill --width=450 > /dev/null 2>&1 - } ;; -esac -######################################################################## -export PORT_WINE_PATH="${D_PATH}" -if [ ! -d "${PORT_WINE_PATH}" ] ; then - mkdir -p "$PORT_WINE_PATH" -else - rm -fr "${PORT_WINE_PATH}/data/tmp" - rm -f "${PORT_WINE_PATH}/data/scripts/"* > /dev/null 2>&1 -fi -######################################################################## -mkdir -p "${PORT_WINE_PATH}/data/tmp" -echo "${port_ver}" > "${PORT_WINE_PATH}/data/tmp/${portname}_ver" -case $PW_SET_LANG in - "Russian") echo "RUS" > "${PORT_WINE_PATH}/data/tmp/${portname}_loc" ;; - "English") echo "ENG" > "${PORT_WINE_PATH}/data/tmp/${portname}_loc" ;; -esac -######################################################################## -export PORT_WINE_TMP_PATH="${PORT_WINE_PATH}/data/tmp" -cd "${PORT_WINE_PATH}" -try_download_scripts () { - wget -O "${PORT_WINE_TMP_PATH}/PortWINE-master.tar.gz" -nd -c --read-timeout 300 \ - --retry-connrefused --timeout 15 --tries 3 \ - --user-agent="Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" \ - "https://github.com/Castro-Fidel/PortWINE/archive/refs/heads/master.tar.gz" - if [ "$?" = "0" ] ; then - tar -xvzf "${PORT_WINE_TMP_PATH}/PortWINE-master.tar.gz" -C "${PORT_WINE_TMP_PATH}" - if [ "$?" = "0" ] ; then - [ ! -d "${PORT_WINE_PATH}/data/" ] && mkdir "${PORT_WINE_PATH}/data/" - cp -fr "${PORT_WINE_TMP_PATH}/PortWINE-master/data_from_portwine/"* "${PORT_WINE_PATH}/data/" - rm -f "${PORT_WINE_TMP_PATH}/PortWINE-master.tar.gz" - rm -fr "${PORT_WINE_TMP_PATH}/PortWINE-master/" - export scripts_current_ver=`cat "${PORT_WINE_PATH}/data/scripts/var" | grep SCRIPTS_NEXT_VERSION | awk -F "=" '{print $2}'` - echo "${scripts_current_ver}" > "${PORT_WINE_TMP_PATH}/scripts_ver" - else - rm -f "${PORT_WINE_TMP_PATH}/PortWINE-master.tar.gz" - try_download_scripts - fi - else - try_download_scripts - fi -} -if [ "${PW_SILENT_INSTALL}" = "1" ] & [ ! -f "/usr/bin/portproton" ] ; then - try_download_scripts -else - try_download_scripts | progress_bar -fi -chmod 755 -R "${PORT_WINE_PATH}" -######################################################################## -cd "${PORT_WINE_PATH}/data/scripts" -/usr/bin/env bash "${PORT_WINE_PATH}/data/scripts/setup.sh" && exit 0 -################################ARCH_BIN################################ diff --git a/portwine_install_script/PortProton_1.0 b/portwine_install_script/PortProton_1.0 index 42a71abf..42b7d464 100644 --- a/portwine_install_script/PortProton_1.0 +++ b/portwine_install_script/PortProton_1.0 @@ -6,16 +6,16 @@ unset PW_AUTOPLAY PW_SET_LANG PW_SILENT_INSTALL export portname="PortProton" export port_ver=1.0 ######################################################################## -[[ -z "${LANG}" ]] && export LANG=C +[ -z "${LANG}" ] && export LANG=C deflink="${HOME}/PortWINE/${portname}" -[[ $(id -u) -eq 0 ]] && echo "Do not run the script from the superuser!" && zenity --error --text "Do not run the script from the superuser!" 2> /dev/null && exit 1 -if [[ "$(dirname "`readlink -f "$0"`")" == "/usr/bin" ]] ; then - [[ -z "${XDG_DATA_HOME}" ]] && export XDG_DATA_HOME="$HOME/.local/share" - if [[ -f "${XDG_DATA_HOME}/PortWINE/PortProton/data/scripts/start.sh" ]] ; then +[ $(id -u) -eq 0 ] && echo "Do not run the script from the superuser!" && zenity --error --text "Do not run the script from the superuser!" 2> /dev/null && exit 1 +if [ "$(dirname "`readlink -f "$0"`")" == "/usr/bin" ] ; then + [ -z "${XDG_DATA_HOME}" ] && export XDG_DATA_HOME="$HOME/.local/share" + if [ -f "${XDG_DATA_HOME}/PortWINE/PortProton/data/scripts/start.sh" ] ; then /usr/bin/env bash "${XDG_DATA_HOME}/PortWINE/PortProton/data/scripts/start.sh" "$@" exit 0 else - if [[ ! -z "`locale | grep "LANG=ru_RU.UTF-8"`" ]] ; then + if [ ! -z "`locale | grep "LANG=ru_RU.UTF-8"`" ] ; then PW_SET_LANG="Russian" else PW_SET_LANG="English"