From d2f1a2987201f7eb6a5aecf8d698ad6ba961638d Mon Sep 17 00:00:00 2001 From: castro-fidel Date: Fri, 15 Oct 2021 16:29:07 +0300 Subject: [PATCH] ###Scripts version 2019### --- data_from_portwine/changelog | 12 +- data_from_portwine/img/gui/lol.png | Bin 0 -> 2492 bytes data_from_portwine/scripts/functions_helper | 102 +++++++++++++---- data_from_portwine/scripts/portwine_db/ACIII | 2 +- data_from_portwine/scripts/portwine_db/Anno4 | 41 +++++++ .../scripts/portwine_db/AnomalyLauncher | 2 +- data_from_portwine/scripts/portwine_db/Arthur | 2 +- .../scripts/portwine_db/Battle.net_Launcher | 2 +- .../scripts/portwine_db/Biomutant | 2 +- .../scripts/portwine_db/Control_DX11 | 2 +- .../scripts/portwine_db/Control_DX12 | 2 +- .../scripts/portwine_db/Cyberpunk2077 | 2 +- .../scripts/portwine_db/DOOM Eternal | 2 +- .../scripts/portwine_db/DaysGone | 2 +- .../scripts/portwine_db/Diablo_II | 2 +- data_from_portwine/scripts/portwine_db/FL64 | 2 +- .../scripts/portwine_db/Far Cry 1 | 2 +- .../scripts/portwine_db/FarLoneSails | 2 +- .../scripts/portwine_db/Far_Cry_3_d3d11 | 2 +- .../scripts/portwine_db/Far_Cry_3_d3d9 | 2 +- .../scripts/portwine_db/Far_Cry_4 | 2 +- .../scripts/portwine_db/HITMAN3 | 2 +- data_from_portwine/scripts/portwine_db/Hades | 2 +- data_from_portwine/scripts/portwine_db/LOF2 | 2 +- .../scripts/portwine_db/League of Legends | 27 +++-- .../scripts/portwine_db/LostEmber | 2 +- .../scripts/portwine_db/MassEffect | 2 +- .../scripts/portwine_db/MassEffect2 | 2 +- .../scripts/portwine_db/MikuMikuDance | 2 +- .../portwine_db/Need_For_Speed_The_Run | 2 +- data_from_portwine/scripts/portwine_db/NovaRO | 2 +- data_from_portwine/scripts/portwine_db/Origin | 2 +- data_from_portwine/scripts/portwine_db/SR2_pc | 2 +- data_from_portwine/scripts/portwine_db/Sam3 | 2 +- .../scripts/portwine_db/Sirus Launcher | 2 +- .../scripts/portwine_db/StarCraft | 2 +- data_from_portwine/scripts/portwine_db/Suite | 2 +- .../scripts/portwine_db/Torchlight | 2 +- .../scripts/portwine_db/UNDERTALE | 2 +- .../scripts/portwine_db/UbisoftConnect | 2 +- .../scripts/portwine_db/WarGame3 | 2 +- .../scripts/portwine_db/alanwake | 2 +- .../scripts/portwine_db/arizona-starter | 2 +- .../scripts/portwine_db/default | 3 +- .../scripts/portwine_db/dontstarve | 2 +- .../scripts/portwine_db/fc3_blooddragon_d3d11 | 2 +- data_from_portwine/scripts/portwine_db/ghost | 2 +- data_from_portwine/scripts/portwine_db/iw3sp | 2 +- data_from_portwine/scripts/portwine_db/iw4sp | 2 +- .../scripts/portwine_db/risen-1 | 2 +- .../scripts/portwine_db/s1_sp64_ship | 2 +- data_from_portwine/scripts/portwine_db/setup | 2 +- .../scripts/portwine_db/sprally2 | 2 +- data_from_portwine/scripts/portwine_db/trine | 2 +- data_from_portwine/scripts/portwine_db/wgc | 2 +- .../scripts/portwine_db/witcher3 | 2 +- .../scripts/portwine_db/wotblitz | 2 +- .../scripts/pw_autoinstall/PW_LOL | 38 ++++++ data_from_portwine/scripts/runlib | 108 ++++++++++-------- data_from_portwine/scripts/start.sh | 24 ++-- data_from_portwine/scripts/var | 2 +- 61 files changed, 316 insertions(+), 143 deletions(-) create mode 100644 data_from_portwine/img/gui/lol.png create mode 100644 data_from_portwine/scripts/portwine_db/Anno4 create mode 100644 data_from_portwine/scripts/pw_autoinstall/PW_LOL diff --git a/data_from_portwine/changelog b/data_from_portwine/changelog index de61b22..8bddb5d 100755 --- a/data_from_portwine/changelog +++ b/data_from_portwine/changelog @@ -1,11 +1,21 @@ История изменений и дальнейшие планы: ----------------------------------------- В планах: +* добавить inxi в runtime и его вывод с аргументом -G в log +* добавить cs_block при запуске порта * добавить проверку количества db файлов на один exe -* добавить GUI для выбора версии WINE из интернета * добавить комментарии описывающие функционал скриптов и db файлов * заниматься только развитием проекта за счет вашей подписки на https://boosty.to/portwine-linux.ru ----------------------------------------- +###Scripts version 2019### +* добавлена автоустановка League of Legends (Ура=) +* добавлена поддержка DLSS (требуется включение в EDIT_DB параметра PW_USE_NVAPI_AND_DLSS) +* добавлена функция автоматического удаления старых версий контейнеров (libs_vXX) +* значительная переработка условий в скриптах +* убрана задержка при перезапуске порта +* добавлен GUI для выбора версии PROTON_GE c github +PS: За помощь в создании автоустановки LoL, отдельное спасибо Dezert1r! + ###Scripts version 2018### * обновлен PROTON_GE до версии 6.19-2 включая DXVK и VKD3D * добавлено разделение версий MONO и GECKO для разных версий PROTON diff --git a/data_from_portwine/img/gui/lol.png b/data_from_portwine/img/gui/lol.png new file mode 100644 index 0000000000000000000000000000000000000000..c501326c840a77ef4a9edd331f88c3dbb0d7f34d GIT binary patch literal 2492 zcmV;t2}AaYP)O5NVyp7mA26j=W47F+{u&lH9;hZgR=%=HA@b?|t68fBb&A`PD+F|G8$? z?0wGO`>gN!uC@2t2Y$~Y07p-aQ`zxV{3q^X?8^JN{$pP%xQ==B(hcVi96M17tJP|P z@gz+Wv{>tUuGH&w+h{ajNN=zoKQJ~!Umxr^XA}SWV!}n?B%8fi-sx7T+c!79{z)(Z zHfW*GSx3`{0UdMv(1H3n7p>dz{#BKGKk|k1^TEJ+(%B;jAz`fPU$T}*9@!J$vSn9I zeV0q1zX7~{_g^}#lC*d^Gf1f!@jft-j2ZYMy8@nPhUwfJJhTQyTKX76G zu?ODT|4;WHDc$qHp|{zI(T9L7EL;@<-0*8q>Z}0;kR}%GI1DZ5J>$7%V)Tof)(&oY z@}WN&nmrjZ{`lhrjg*O(PhkordP;*xk^+z@MZ;=d8c(?CtH)Sz^$35k?!4mU$VZo! zOZhv1Z!tm{^=g%%F?9ymmMhi`-MaN37cKnO_Gu^(hhO>RqRanmKLHMxE%R_oS$g_BOtwTYSEoL{A4>~S z=Kll$@cb0qc-=O}Ub=nADEW}&`ZsrvYXFW#92$O|;S*!`-FfqdOHUo0%4~h29gemA zifiBQF?}*Z^$tO*P{|~IY}mT}II*bzZS{BL;CRd*55cl?OJ?V9Pb?EBw~eS}=Nahp zkMY3Xoh!?E@5+C;du8v(?mv!nQdP9UPcu|oikVkOXw6L_#zPx}SP+r_mtKGGAwGT6 zhFrPmT@1WKI=~gck_8sveRo_vRNVEe7A*us5T(#YsEjvhHdAcWqB=84+={RX?foQj zR^fj>cj>e>9Qv;ocYffa9^e{lyK=xSrU+bd`Np2igFl}|L?NoJh(c?NRu0V|#c>3c z`owh~$$Ini1lsKzc(0_*)C1o?$aU{onH8IEhV(3e5C3RXd5&DTet9|b{EL;&2L%y@ z6-^Qahy%*?$ao6JHCPR3)p1Y|)#b73sC2a=48JxFx@wx1wgIZ2-3)p$Q2A>k|GwYwdC^-k>4Pc9B~rhIu0sq(rVSQg$$|^ zgIEOBt|=(w%pE|t--88&d;!8noiK<28uJW%<6TQ@jUb*Id-YV@-{YW^Mj4IP8m}iq zqte1pg)s5(YYh^=jmQMQ!91~H|gLen5gEN;fZ zjeO?tP^yz`+Ua;~=5wgsS7_znYR#sLh41|0NSvZ}C3KwwBL_wR9@{@QQ#n3biLP3g zb^vIs(d3IBxh%{~%pj>@?&wK$QX|m@WgN72x~O;1#-KY6D91%P4mYn8q}kxX9YVA9X`X1*bg)L3(BzN*jl5H7b(Le`f2RsejL@SDbeZE%W?nfH+%b&H4R2`{U!CTmjecxCU8 z|MZ?GH|2BAZHJ!v8RHFD5;SNe0%431!HU6;J=`=$W2Q!_sKJ8Ygi57JWU}9>PZi&S3!F!%uyn3kjy06`lFaPp~!>nAjf;gyAa5Sz; zNK-{IuZfd7X|qK+pHR*!vN?yK6;tfZ(_fk+yLbf$Pn=E?Q9oNV2x6dM!084MtFFtc zO^{44z+c^d{aY3czc9|x=29YZ1W5)%jHEHC6{aJF(O`^Fk1VHshfKyrX-KOUZ?s8y zwdKX(*CLDj^!`JzsQ{jaq&oyXruz?4an(ofDFBQA`s=%YiXRLbrAn5xC87i@Hf_&u zml)c2fp!mzZ4b2LX|){AMrnN52KA%+Qm8~=&1 | \ - sed -u 's/.* \([0-9]\+%\)\ \+\([0-9,.]\+.\) \(.*\)/\1\n#Downloading at \1\/, \2\/s, ETA \3/; s/^20[0-9][0-9].*/#Done./' | \ + wget -c -t 5 -T 2 "$1" --output-document="$2" 2>&1 | \ + tr '\r' '\n' | sed -u 's/.* \([0-9]\+%\)\ \+\([0-9,.]\+.\) \(.*\)/\1\n#Downloading at \1\/, \2\/s, ETA \3/; s/^20[0-9][0-9].*/#Done./' | \ zenity --progress --percentage=0 --title="Download $(basename $1)" --text=Starting... --auto-close --auto-kill --width=500 --height=90 [ "${PIPESTATUS[0]}" != 0 ] && print_error "failed to download $1. Scipping." && return 1 || return 0 } @@ -159,7 +158,7 @@ pw_mangohud_check () { } pw_vkbasalt_check () { - if [ ! -z "${ENABLE_VKBASALT}" ] && [ "${ENABLE_VKBASALT}" == 1 ] ; then + if [[ ! -z "${ENABLE_VKBASALT}" && "${ENABLE_VKBASALT}" == 1 ]] ; then if [ -z "${PW_VKBASALT_EFFECTS}" ] ; then export PW_VKBASALT_EFFECTS="FakeHDR:cas" fi @@ -252,13 +251,20 @@ init_wine_ver () { else export PATH="${WINEDIR}/bin" fi - if [ -d "${WINEDIR}/files" ] ; then + 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 + mv -f "${WINEDIR}/dist"/* "${WINEDIR}/" + rm -fr "${WINEDIR}/dist" elif [ -f "${WINEDIR}/proton_dist.tar" ] ; then unpack_tar "${WINEDIR}/proton_dist.tar" "${WINEDIR}/" for clear_dist_files in `ls "${WINEDIR}" | sed -e "s/^bin$//g" | sed -e "s/^lib$//g" | sed -e "s/^lib64$//g" | sed -e "s/^share$//g" | sed -e "s/^version$//g"` ; do @@ -277,7 +283,7 @@ init_wine_ver () { if [ ! -d "${WINEDIR}/share/wine/${mono_gecko_chk}" ] ; then try_remove_dir "${WINEDIR}/share/wine/${mono_gecko_chk}" try_force_link_dir "${PORT_WINE_TMP_PATH}/${mono_gecko_chk}" "${WINEDIR}"/share/wine/ - elif [ -d "${WINEDIR}/share/wine/${mono_gecko_chk}" ] && [ ! `check_symlink "${WINEDIR}/share/wine/${mono_gecko_chk}"` ] ; then + elif ! check_symlink "${WINEDIR}/share/wine/${mono_gecko_chk}" && [[ -d "${WINEDIR}/share/wine/${mono_gecko_chk}" ]] ; then cp -fr "${WINEDIR}/share/wine/${mono_gecko_chk}" "${PORT_WINE_TMP_PATH}" rm -fr "${WINEDIR}/share/wine/${mono_gecko_chk}" try_force_link_dir "${PORT_WINE_TMP_PATH}/${mono_gecko_chk}" "${WINEDIR}"/share/wine/ @@ -314,9 +320,14 @@ pw_stop_progress_bar () { } pw_download_libs () { - 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" ] || \ - [ -e "${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}.tar.xz" ] ; then + if [ ! -z "`ls ${PORT_WINE_TMP_PATH} | grep libs_v | grep -v libs${PW_LIBS_VER}`" ] ; then + for RM_LIBS in `ls ${PORT_WINE_TMP_PATH} | grep libs_v | grep -v libs${PW_LIBS_VER}` + 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" || \ + -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 if unpack_tar_xz "${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}.tar.xz" "${PORT_WINE_TMP_PATH}/" ; then @@ -404,7 +415,7 @@ update_winetricks () { print_info "Version winetricks on server: ${W_TRX_EXT_VER}" W_TRX_INT_VER="$(cat "${PORT_WINE_TMP_PATH}/winetricks" | grep -i 'WINETRICKS_VERSION=' | sed 's/WINETRICKS_VERSION=//')" print_info "Version winetricks in port: ${W_TRX_INT_VER}" - if [ ! -f "${PORT_WINE_TMP_PATH}/winetricks" ] && [ ! -z "$W_TRX_EXT_VER" ] || [ "$W_TRX_INT_VER" != "$W_TRX_EXT_VER" ] && [ ! -z "$W_TRX_EXT_VER" ]; then + if [[ ! -f "${PORT_WINE_TMP_PATH}/winetricks" && ! -z "$W_TRX_EXT_VER" ]] || [[ "$W_TRX_INT_VER" != "$W_TRX_EXT_VER" && ! -z "$W_TRX_EXT_VER" ]]; then if try_download "${W_TRX_URL}" "${PORT_WINE_TMP_PATH}/winetricks_new" ; then mv -f "${PORT_WINE_TMP_PATH}/winetricks_new" "${PORT_WINE_TMP_PATH}/winetricks" W_TRX_INT_VER="$(cat "${PORT_WINE_TMP_PATH}/winetricks" | grep -i 'WINETRICKS_VERSION=' | sed 's/WINETRICKS_VERSION=//')" && print_info "Winetricks version in port has been updated (${W_TRX_INT_VER})" @@ -461,6 +472,7 @@ stop_portwine () { if [ ! -z "`ls "${WINEPREFIX}"/drive_c/ | grep -m 1 ".tmp"`" ] ; then rm -f "${WINEPREFIX}"/drive_c/*.tmp fi + exit 0 } pw_tray_icon () { @@ -475,6 +487,7 @@ pw_tray_icon () { then kill -s SIGUSR1 "`pgrep -a yad_new | grep "\-\-notification" | awk '{print $1}'`" fi kill -9 `pgrep -a start.sh | awk '/PortWINE/ && /PortProton/' | awk '{print $1}'` + exit 0 } export -f tray_icon_click_exit @@ -518,7 +531,7 @@ pw_port_update () { export port_current_ver=`cat "${PORT_WINE_TMP_PATH}/curent_var_ver" | grep PORT_NEXT_VERSION | awk -F "=" '{print $2}'` print_info "Port version in github = ${port_current_ver}" print_info "Port version local = ${port_install_ver}" - if [ ! -z "${port_current_ver}" ] && [ "${port_current_ver}" -gt "${port_install_ver}" ] ; then + if [[ ! -z "${port_current_ver}" && "${port_current_ver}" -gt "${port_install_ver}" ]] ; then xsd=`zenity --title "${port_upd1}" --text "${port_upd2}" --list --radiolist --height=240 --column="${inst_set}" --column "${port_upd3}" \ TRUE "${port_upd4}" \ FALSE "${port_upd5}" \ @@ -575,7 +588,7 @@ pw_port_update () { export scripts_current_ver=`cat "${PORT_WINE_TMP_PATH}/curent_var_ver" | grep SCRIPTS_NEXT_VERSION | awk -F "=" '{print $2}'` print_info "Scripts version in github = ${scripts_current_ver}" print_info "Scripts version local = ${scripts_install_ver}" - if [ ! -z "${scripts_current_ver}" ] && [ "${scripts_current_ver}" -gt "${scripts_install_ver}" ] ; then + if [[ ! -z "${scripts_current_ver}" && "${scripts_current_ver}" -gt "${scripts_install_ver}" ]] ; then xcsd=`zenity --title "${scripts_upd1}" --text "${scripts_upd2}" --list --radiolist --height=240 --column="${inst_set}" --column "${scripts_upd3}" \ TRUE "${scripts_upd4}" \ FALSE "${scripts_upd5}" \ @@ -617,7 +630,7 @@ pw_kill_autostart () { else sleep 10 while true ; do - if [ -z "`ps aux | grep -m 1 "$1" | grep -v grep | awk '{print $2}'`" ] && [ ! -z "`pgrep wrap | head -n 1`" ]; then + if [[ -z "`ps aux | grep -m 1 "$1" | grep -v grep | awk '{print $2}'`" && ! -z "`pgrep wrap | head -n 1`" ]] ; then echo -e "PID "$1" not found" sleep 1 else @@ -662,7 +675,7 @@ pw_gui_for_edit_db () { --columns=4 --form --separator=" " --borders=10 --center ${ADD_CHK_BOX_EDIT_DB} \ --button="CANCEL":1 --button="OPEN DB FILE":150 --button="SAVE CHANGES":0 ` YAD_STATUS="$?" - if [ "$YAD_STATUS" == "1" ] || [ "$YAD_STATUS" == "252" ] ; then exit 0 + if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then exit 0 elif [ "$YAD_STATUS" == "150" ] ; then xdg-open "${PORTWINE_DB_FILE}" & exit 0 @@ -681,9 +694,9 @@ pw_gui_for_edit_db () { } edit_db_field_read $@ edit_db_from_gui $@ - PW_DB_TMP=`cat "${PORTWINE_DB_FILE}"` - echo "${PW_DB_TMP}" | awk '! a[$0]++' > "${PORTWINE_DB_FILE}" - unset PW_DB_TMP + # PW_DB_TMP=`cat "${PORTWINE_DB_FILE}"` + # echo "${PW_DB_TMP}" | awk '! a[$0]++' > "${PORTWINE_DB_FILE}" + # unset PW_DB_TMP return 0 } @@ -734,3 +747,48 @@ pw_check_and_download_wine () { fi fi } + +gui_proton_downloader () { + set -o pipefail + export PROTON_GE_GIT=($(curl -s "https://api.github.com/repos/GloriousEggroll/proton-ge-custom/releases" | grep "browser_download_url.*\.tar\.gz" | cut -d \" -f 4)) + [ "${PIPESTATUS[0]}" != 0 ] && exit 1 + try_remove_file "${PORT_WINE_TMP_PATH}/tmp_proton_ge_git" + for PGEGIT in ${PROTON_GE_GIT[@]} ; do + echo ${PGEGIT} | awk -F/ '{print $NF}' | sed 's/.tar.gz//' >> "${PORT_WINE_TMP_PATH}/tmp_proton_ge_git" + done + sed -i '/Proton-6.5-GE-2/,$d' "${PORT_WINE_TMP_PATH}/tmp_proton_ge_git" + sed -i '/github-action/d' "${PORT_WINE_TMP_PATH}/tmp_proton_ge_git" + for INSTALLING_VERSION_IN_DIST in `ls "${PORT_WINE_PATH}/data/dist/"` ; do + sed -i "/${INSTALLING_VERSION_IN_DIST}/Id" "${PORT_WINE_TMP_PATH}/tmp_proton_ge_git" + done + VERSION_PROTON_GIT=`yad --list --cheklist --separator="" --listen --width=400 --height=600 --center --borders=15 \ + --column "Select WINE for download:" --title "Download..." < "${PORT_WINE_TMP_PATH}/tmp_proton_ge_git"` + if [ "${PIPESTATUS[0]}" != 0 ]; then + /bin/bash -c ${pw_full_command_line[*]} & + exit 0 + fi + try_remove_file "${PORT_WINE_TMP_PATH}/tmp_proton_ge_git" + + for PGEGIT2 in ${PROTON_GE_GIT[@]} ; do + if [ ! -z `echo ${PGEGIT2} | grep "$VERSION_PROTON_GIT"` ] ; then + export URL_VERSION_PROTON_GIT="${PGEGIT2}" + fi + done + + print_info "Download and install ${VERSION_PROTON_GIT}..." + if try_download "${URL_VERSION_PROTON_GIT}" "${PORT_WINE_PATH}/data/tmp/${VERSION_PROTON_GIT}.tar.gz" ; then + if unpack_tar_gz "${PORT_WINE_PATH}/data/tmp/${VERSION_PROTON_GIT}.tar.gz" "${PORT_WINE_PATH}/data/dist/" ; then + try_remove_file "${PORT_WINE_PATH}/data/tmp/${VERSION_PROTON_GIT}.tar.gz" + else + try_remove_file "${PORT_WINE_PATH}/data/tmp/${VERSION_PROTON_GIT}.tar.gz" + try_remove_dir "${PORT_WINE_PATH}/data/dist/${VERSION_PROTON_GIT}" + + zenity_error_download && gui_proton_downloader + fi + else + zenity_error_download && gui_proton_downloader + fi + /bin/bash -c ${pw_full_command_line[*]} & + exit 0 +} +export -f gui_proton_downloader diff --git a/data_from_portwine/scripts/portwine_db/ACIII b/data_from_portwine/scripts/portwine_db/ACIII index 35bb5cf..fa729d9 100755 --- a/data_from_portwine/scripts/portwine_db/ACIII +++ b/data_from_portwine/scripts/portwine_db/ACIII @@ -17,7 +17,7 @@ export WINEDLLOVERRIDES="xinput1_3,d3dcompiler_43=n,b" ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -##export PW_USE_NVAPI=0 +##export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=0 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/Anno4 b/data_from_portwine/scripts/portwine_db/Anno4 new file mode 100644 index 0000000..a11ef62 --- /dev/null +++ b/data_from_portwine/scripts/portwine_db/Anno4 @@ -0,0 +1,41 @@ +#!/bin/bash +#Author: xuser +#Anno4.exe +#Rating=1-5 +#####################examples########################### +export PW_COMMENT_DB="If after the first launch you see a black screen,\njust restart the game." +##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=dxvk +##export PW_DXR_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="cas" # Use Reshade in others games (dx9-12 to vulkan only) +export PW_VKBASALT_FFX_CAS="0.6" # 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 () { + if [ -d "${WINEPREFIX}/drive_c/users/steamuser/AppData/Roaming/Ubisoft/Anno1404/Config/" ] ; then + sed -i 's/0<\/DirectXVersion>/9<\/DirectXVersion>/' "${WINEPREFIX}/drive_c/users/steamuser/AppData/Roaming/Ubisoft/Anno1404/Config/Engine.ini" + fi +} diff --git a/data_from_portwine/scripts/portwine_db/AnomalyLauncher b/data_from_portwine/scripts/portwine_db/AnomalyLauncher index 123ed85..23336d0 100644 --- a/data_from_portwine/scripts/portwine_db/AnomalyLauncher +++ b/data_from_portwine/scripts/portwine_db/AnomalyLauncher @@ -12,7 +12,7 @@ export PW_WINE_USE=proton_ge export PW_VULKAN_USE=dxvk export PW_DXR_ON=0 export PW_VULKAN_NO_ASYNC=0 -export PW_USE_NVAPI=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 diff --git a/data_from_portwine/scripts/portwine_db/Arthur b/data_from_portwine/scripts/portwine_db/Arthur index b57effd..a12dea7 100755 --- a/data_from_portwine/scripts/portwine_db/Arthur +++ b/data_from_portwine/scripts/portwine_db/Arthur @@ -15,7 +15,7 @@ export PW_VULKAN_USE=dxvk ##export PW_VKD3D_VER=2.2 ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=0 +##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 diff --git a/data_from_portwine/scripts/portwine_db/Battle.net_Launcher b/data_from_portwine/scripts/portwine_db/Battle.net_Launcher index 8e46a11..178922b 100755 --- a/data_from_portwine/scripts/portwine_db/Battle.net_Launcher +++ b/data_from_portwine/scripts/portwine_db/Battle.net_Launcher @@ -12,7 +12,7 @@ export LAUNCH_PARAMETERS="" export WINEDLLOVERRIDES="locationapi=" export PW_DLL_INSTALL="vcrun2019 d3dx11_42 d3dx11_43" export PW_WINDOWS_VER=10 -export PW_USE_NVAPI=0 +export PW_USE_NVAPI_AND_DLSS=0 add_in_start_portwine () { rm -fr "${PORT_WINE_PATH}/data/pfx/drive_c/ProgramData/Agent/data" diff --git a/data_from_portwine/scripts/portwine_db/Biomutant b/data_from_portwine/scripts/portwine_db/Biomutant index 5cda9fe..a17178a 100755 --- a/data_from_portwine/scripts/portwine_db/Biomutant +++ b/data_from_portwine/scripts/portwine_db/Biomutant @@ -12,7 +12,7 @@ export PW_DLL_INSTALL="vcrun2019" # Install DDL in port prefix (us ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=0 +##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 diff --git a/data_from_portwine/scripts/portwine_db/Control_DX11 b/data_from_portwine/scripts/portwine_db/Control_DX11 index 3193429..135e849 100755 --- a/data_from_portwine/scripts/portwine_db/Control_DX11 +++ b/data_from_portwine/scripts/portwine_db/Control_DX11 @@ -17,7 +17,7 @@ export PW_DLL_INSTALL="physx" ##export PW_VULKAN_USE=dxvk # dxvk, vkd3d or 0 for OpenGL ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=0 +##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 diff --git a/data_from_portwine/scripts/portwine_db/Control_DX12 b/data_from_portwine/scripts/portwine_db/Control_DX12 index e58e1f9..44fe36e 100755 --- a/data_from_portwine/scripts/portwine_db/Control_DX12 +++ b/data_from_portwine/scripts/portwine_db/Control_DX12 @@ -17,7 +17,7 @@ export WINEDLLOVERRIDES="d3d12,d3d_rmdwin10_f,renderer_rmdwin10_f,app_rmdwin10_f ##export PW_VULKAN_USE=dxvk # dxvk, vkd3d or 0 for OpenGL ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=0 +##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 diff --git a/data_from_portwine/scripts/portwine_db/Cyberpunk2077 b/data_from_portwine/scripts/portwine_db/Cyberpunk2077 index b7adf52..77860e6 100755 --- a/data_from_portwine/scripts/portwine_db/Cyberpunk2077 +++ b/data_from_portwine/scripts/portwine_db/Cyberpunk2077 @@ -13,7 +13,7 @@ export WINEDLLOVERRIDES="Crash*,REDEngineErrorReporter.exe=" ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -##export PW_USE_NVAPI=0 +##export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=1 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/DOOM Eternal b/data_from_portwine/scripts/portwine_db/DOOM Eternal index a78d386..237039c 100755 --- a/data_from_portwine/scripts/portwine_db/DOOM Eternal +++ b/data_from_portwine/scripts/portwine_db/DOOM Eternal @@ -11,7 +11,7 @@ export PW_NO_ESYNC=1 # Do not use eventfd-based in-process synchronizatio #export PW_VULKAN_NO_ASYNC=1 #export PW_USE_TERMINAL=1 #export PW_OLD_GL_STRING=0 -#export PW_USE_NVAPI=0 +#export PW_USE_NVAPI_AND_DLSS=0 #export PW_VKD3D_FEATURE_LEVEL=0 #export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/DaysGone b/data_from_portwine/scripts/portwine_db/DaysGone index aa241e9..9984fad 100755 --- a/data_from_portwine/scripts/portwine_db/DaysGone +++ b/data_from_portwine/scripts/portwine_db/DaysGone @@ -12,7 +12,7 @@ export PW_DLL_INSTALL="vcrun2019" # Install DDL in port prefix (us ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=0 +##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 diff --git a/data_from_portwine/scripts/portwine_db/Diablo_II b/data_from_portwine/scripts/portwine_db/Diablo_II index d0ab927..74e35fb 100755 --- a/data_from_portwine/scripts/portwine_db/Diablo_II +++ b/data_from_portwine/scripts/portwine_db/Diablo_II @@ -14,7 +14,7 @@ export PW_VULKAN_USE=0 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -##export PW_USE_NVAPI=0 +##export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=0 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/FL64 b/data_from_portwine/scripts/portwine_db/FL64 index efeede3..36f8609 100755 --- a/data_from_portwine/scripts/portwine_db/FL64 +++ b/data_from_portwine/scripts/portwine_db/FL64 @@ -15,7 +15,7 @@ export WINEDLLOVERRIDES="FLEngine,FLEngine_x64=n" ##export PW_VKD3D_VER=2.2 ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=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=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT diff --git a/data_from_portwine/scripts/portwine_db/Far Cry 1 b/data_from_portwine/scripts/portwine_db/Far Cry 1 index 3159b09..6bfcba4 100755 --- a/data_from_portwine/scripts/portwine_db/Far Cry 1 +++ b/data_from_portwine/scripts/portwine_db/Far Cry 1 @@ -11,7 +11,7 @@ export PW_NO_ESYNC=1 # Do not use eventfd-based in-process synchronizatio export PW_DXVK_ASYNC=0 #export PW_USE_TERMINAL=0 export PW_OLD_GL_STRING=1 -#export PW_USE_NVAPI=0 +#export PW_USE_NVAPI_AND_DLSS=0 #export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 #export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT diff --git a/data_from_portwine/scripts/portwine_db/FarLoneSails b/data_from_portwine/scripts/portwine_db/FarLoneSails index a0530e0..bb2f718 100755 --- a/data_from_portwine/scripts/portwine_db/FarLoneSails +++ b/data_from_portwine/scripts/portwine_db/FarLoneSails @@ -14,7 +14,7 @@ ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -##export PW_USE_NVAPI=0 +##export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=0 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/Far_Cry_3_d3d11 b/data_from_portwine/scripts/portwine_db/Far_Cry_3_d3d11 index a93fc76..880c430 100755 --- a/data_from_portwine/scripts/portwine_db/Far_Cry_3_d3d11 +++ b/data_from_portwine/scripts/portwine_db/Far_Cry_3_d3d11 @@ -15,7 +15,7 @@ export PW_DLL_INSTALL="d3dx11_42 d3dx11_43" ##export PW_VULKAN_USE=dxvk # dxvk, vkd3d or 0 for OpenGL ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=0 +##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 diff --git a/data_from_portwine/scripts/portwine_db/Far_Cry_3_d3d9 b/data_from_portwine/scripts/portwine_db/Far_Cry_3_d3d9 index a8553f3..0693086 100755 --- a/data_from_portwine/scripts/portwine_db/Far_Cry_3_d3d9 +++ b/data_from_portwine/scripts/portwine_db/Far_Cry_3_d3d9 @@ -15,7 +15,7 @@ export PW_VULKAN_USE=0 ##export PW_VULKAN_USE=dxvk # dxvk, vkd3d or 0 for OpenGL ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=0 +##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 diff --git a/data_from_portwine/scripts/portwine_db/Far_Cry_4 b/data_from_portwine/scripts/portwine_db/Far_Cry_4 index 6a1feb2..b222749 100755 --- a/data_from_portwine/scripts/portwine_db/Far_Cry_4 +++ b/data_from_portwine/scripts/portwine_db/Far_Cry_4 @@ -13,7 +13,7 @@ export PW_DLL_INSTALL="d3dcompiler_43 d3dcompiler_47" # Install DD ##export PW_VULKAN_USE=dxvk # dxvk, vkd3d or 0 for OpenGL ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=0 +##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 diff --git a/data_from_portwine/scripts/portwine_db/HITMAN3 b/data_from_portwine/scripts/portwine_db/HITMAN3 index d024eda..f0feb38 100755 --- a/data_from_portwine/scripts/portwine_db/HITMAN3 +++ b/data_from_portwine/scripts/portwine_db/HITMAN3 @@ -7,4 +7,4 @@ export PW_VULKAN_USE=vkd3d export LAUNCH_PARAMETERS="" export PW_DXGI_FROM_DXVK=1 #export MANGOHUD=1 -#export PW_USE_NVAPI=0 # for nvidia gpu +#export PW_USE_NVAPI_AND_DLSS=0 # for nvidia gpu diff --git a/data_from_portwine/scripts/portwine_db/Hades b/data_from_portwine/scripts/portwine_db/Hades index e5c6bce..affc327 100755 --- a/data_from_portwine/scripts/portwine_db/Hades +++ b/data_from_portwine/scripts/portwine_db/Hades @@ -12,7 +12,7 @@ export PW_VULKAN_USE=dxvk #dxvk or vkd3d #export PW_VULKAN_NO_ASYNC=1 #export PW_USE_TERMINAL=0 #export PW_OLD_GL_STRING=0 -#export PW_USE_NVAPI=0 +#export PW_USE_NVAPI_AND_DLSS=0 #export PW_VKD3D_FEATURE_LEVEL=0 #export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/LOF2 b/data_from_portwine/scripts/portwine_db/LOF2 index 64c6cdf..475f6a3 100755 --- a/data_from_portwine/scripts/portwine_db/LOF2 +++ b/data_from_portwine/scripts/portwine_db/LOF2 @@ -14,7 +14,7 @@ export PW_VULKAN_USE=dxvk ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -##export PW_USE_NVAPI=0 +##export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=0 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/League of Legends b/data_from_portwine/scripts/portwine_db/League of Legends index 9251109..b827cb8 100755 --- a/data_from_portwine/scripts/portwine_db/League of Legends +++ b/data_from_portwine/scripts/portwine_db/League of Legends @@ -3,19 +3,24 @@ #LeagueClient.exe #RiotClientServices.exe #Install League of Legends ru.exe +#Install League of Legends nu.exe #Install League of Legends euw.exe +#live.na.exe #Rating=1-5 #####################examples########################### -export PW_COMMENT_DB="Check openssl in your system!" +export TEXT_OPSSL="" +[[ -z `which openssl` ]] && export TEXT_OPSSL="Install openssl in your system!!!\n" +export PW_COMMENT_DB="${TEXT_OPSSL}Dwnload and start League of Legend can take a long time" ##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=("--launch-product=league_of_legends" "--launch-patchline=live") # Additional launch options -export PW_WINE_USE=PROTON_GE +export PW_WINE_USE=WINE_LOL_GE_6.16-2 export PW_VULKAN_USE=dxvk +export PW_MUST_HAVE_DLL="" ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=0 +##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 @@ -39,12 +44,13 @@ export PW_GECKO_VER="2.47.2" ##export PW_GUI_DISABLED_CS=1 # 1 = disabled GUI check_port_for_lol () { + pw_start_progress_bar_block "Download and start League of Legend. Please wait. It can take a long time!" process=LeagueClientUx.exe - uxpid=$(timeout 2m /bin/bash -c "until pidof ${process}; do sleep 1; done") - if [ ! -n $uxpid ]; then - echo "Could not find process ${process}" - exit 1 - fi + while [[ -z `pidof ${process}` ]] ; do + echo "PID ${process} not found" + sleep 1 + done + uxpid=`pidof ${process}` echo "LeagueClientUx pid: ${uxpid}" port=$(xargs -0 < /proc/${uxpid}/cmdline | sed -n 's/.*--app-port=\([[:digit:]]*\).*/\1/p') if [ ! -n $port ]; then @@ -53,11 +59,12 @@ check_port_for_lol () { fi echo "Waiting for port ${port}" kill -STOP ${uxpid} - timeout 5m /bin/bash -c " - until openssl s_client -connect :${port} <<< Q > /dev/null 2>&1; do + timeout 200m /bin/bash -c " + until openssl s_client -connect :${port} <<< Q > /dev/null 2>&1 ; do sleep 1 done" kill -CONT ${uxpid} + pw_stop_progress_bar } add_in_start_portwine () { diff --git a/data_from_portwine/scripts/portwine_db/LostEmber b/data_from_portwine/scripts/portwine_db/LostEmber index b304bed..5ccb2e8 100755 --- a/data_from_portwine/scripts/portwine_db/LostEmber +++ b/data_from_portwine/scripts/portwine_db/LostEmber @@ -15,7 +15,7 @@ ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -export PW_USE_NVAPI=0 +export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=0 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/MassEffect b/data_from_portwine/scripts/portwine_db/MassEffect index 56aafaa..ca8dc5f 100755 --- a/data_from_portwine/scripts/portwine_db/MassEffect +++ b/data_from_portwine/scripts/portwine_db/MassEffect @@ -12,7 +12,7 @@ export PW_DLL_INSTALL="physx d3dx9" # Install DDL in port prefi ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -##export PW_USE_NVAPI=0 +##export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=0 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/MassEffect2 b/data_from_portwine/scripts/portwine_db/MassEffect2 index 3d35033..455f605 100755 --- a/data_from_portwine/scripts/portwine_db/MassEffect2 +++ b/data_from_portwine/scripts/portwine_db/MassEffect2 @@ -12,7 +12,7 @@ export PW_DLL_INSTALL="physx d3dx9" # Install DDL in port prefi ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -##export PW_USE_NVAPI=0 +##export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=0 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/MikuMikuDance b/data_from_portwine/scripts/portwine_db/MikuMikuDance index 276cd86..26ad6c9 100755 --- a/data_from_portwine/scripts/portwine_db/MikuMikuDance +++ b/data_from_portwine/scripts/portwine_db/MikuMikuDance @@ -11,7 +11,7 @@ ##export PW_VULKAN_USE=dxvk # dxvk, vkd3d or 0 for OpenGL ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=0 +##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 diff --git a/data_from_portwine/scripts/portwine_db/Need_For_Speed_The_Run b/data_from_portwine/scripts/portwine_db/Need_For_Speed_The_Run index 98fc336..74eeea5 100755 --- a/data_from_portwine/scripts/portwine_db/Need_For_Speed_The_Run +++ b/data_from_portwine/scripts/portwine_db/Need_For_Speed_The_Run @@ -15,7 +15,7 @@ ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -##export PW_USE_NVAPI=0 +##export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=0 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/NovaRO b/data_from_portwine/scripts/portwine_db/NovaRO index 3860bd1..65c7f0c 100755 --- a/data_from_portwine/scripts/portwine_db/NovaRO +++ b/data_from_portwine/scripts/portwine_db/NovaRO @@ -17,7 +17,7 @@ export PW_DLL_INSTALL="d3dcompiler_42 d3dcompiler_43 d3dx9" ##export PW_VKD3D_VER=2.2 ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=0 +##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 diff --git a/data_from_portwine/scripts/portwine_db/Origin b/data_from_portwine/scripts/portwine_db/Origin index 0266ee0..e58bbdb 100755 --- a/data_from_portwine/scripts/portwine_db/Origin +++ b/data_from_portwine/scripts/portwine_db/Origin @@ -15,7 +15,7 @@ export PW_DLL_INSTALL="vcrun2010 vcrun2012 vcrun2017 d3dcompiler_43 d3dcompiler_ ##export PW_VKD3D_VER=2.2 ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -export PW_USE_NVAPI=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=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT diff --git a/data_from_portwine/scripts/portwine_db/SR2_pc b/data_from_portwine/scripts/portwine_db/SR2_pc index 7ba2849..0b75d7c 100755 --- a/data_from_portwine/scripts/portwine_db/SR2_pc +++ b/data_from_portwine/scripts/portwine_db/SR2_pc @@ -10,7 +10,7 @@ ##export PW_VULKAN_USE=dxvk # dxvk, vkd3d or 0 for OpenGL ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=0 +##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 diff --git a/data_from_portwine/scripts/portwine_db/Sam3 b/data_from_portwine/scripts/portwine_db/Sam3 index 8b1379d..a72716d 100755 --- a/data_from_portwine/scripts/portwine_db/Sam3 +++ b/data_from_portwine/scripts/portwine_db/Sam3 @@ -16,7 +16,7 @@ export PULSE_LATENCY_MSEC=150 ##export PW_VKD3D_VER=2.2 ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=0 +##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 diff --git a/data_from_portwine/scripts/portwine_db/Sirus Launcher b/data_from_portwine/scripts/portwine_db/Sirus Launcher index b4ebfba..53f270a 100755 --- a/data_from_portwine/scripts/portwine_db/Sirus Launcher +++ b/data_from_portwine/scripts/portwine_db/Sirus Launcher @@ -15,7 +15,7 @@ export PW_WINDOWS_VER=7 # Set windows version 10, 7 or XP ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -##export PW_USE_NVAPI=0 +##export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=0 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/StarCraft b/data_from_portwine/scripts/portwine_db/StarCraft index 6bc538f..552c189 100755 --- a/data_from_portwine/scripts/portwine_db/StarCraft +++ b/data_from_portwine/scripts/portwine_db/StarCraft @@ -15,7 +15,7 @@ ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -##export PW_USE_NVAPI=0 +##export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=0 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/Suite b/data_from_portwine/scripts/portwine_db/Suite index cd61090..b39dedb 100755 --- a/data_from_portwine/scripts/portwine_db/Suite +++ b/data_from_portwine/scripts/portwine_db/Suite @@ -12,7 +12,7 @@ export PW_DLL_INSTALL="corefonts" # Install DDL in port prefix (used wine ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -##export PW_USE_NVAPI=0 +##export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=0 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/Torchlight b/data_from_portwine/scripts/portwine_db/Torchlight index 9d38c7d..c90f916 100755 --- a/data_from_portwine/scripts/portwine_db/Torchlight +++ b/data_from_portwine/scripts/portwine_db/Torchlight @@ -18,7 +18,7 @@ export PW_VKBASALT_FFX_CAS="1" ##export PW_VULKAN_USE=vkd3d # dxvk, vkd3d or 0 for OpenGL ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=0 +##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 diff --git a/data_from_portwine/scripts/portwine_db/UNDERTALE b/data_from_portwine/scripts/portwine_db/UNDERTALE index edccefc..d9c6f16 100644 --- a/data_from_portwine/scripts/portwine_db/UNDERTALE +++ b/data_from_portwine/scripts/portwine_db/UNDERTALE @@ -15,7 +15,7 @@ export PW_VULKAN_USE=dxvk ##export PW_VULKAN_USE=vkd3d # dxvk, vkd3d or 0 for OpenGL ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=0 +##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 diff --git a/data_from_portwine/scripts/portwine_db/UbisoftConnect b/data_from_portwine/scripts/portwine_db/UbisoftConnect index 041ce6f..0c8df1a 100755 --- a/data_from_portwine/scripts/portwine_db/UbisoftConnect +++ b/data_from_portwine/scripts/portwine_db/UbisoftConnect @@ -16,7 +16,7 @@ ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -##export PW_USE_NVAPI=0 +##export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=0 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/WarGame3 b/data_from_portwine/scripts/portwine_db/WarGame3 index 2ec4941..fab7cce 100755 --- a/data_from_portwine/scripts/portwine_db/WarGame3 +++ b/data_from_portwine/scripts/portwine_db/WarGame3 @@ -15,7 +15,7 @@ ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -##export PW_USE_NVAPI=0 +##export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=0 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/alanwake b/data_from_portwine/scripts/portwine_db/alanwake index f6ce648..67bf26c 100755 --- a/data_from_portwine/scripts/portwine_db/alanwake +++ b/data_from_portwine/scripts/portwine_db/alanwake @@ -13,7 +13,7 @@ export PW_DLL_INSTALL="d3dx9 d3dcompiler_43" # Install DDL in port prefix ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -##export PW_USE_NVAPI=0 +##export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=0 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/arizona-starter b/data_from_portwine/scripts/portwine_db/arizona-starter index d91a051..3d13758 100755 --- a/data_from_portwine/scripts/portwine_db/arizona-starter +++ b/data_from_portwine/scripts/portwine_db/arizona-starter @@ -14,7 +14,7 @@ ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -##export PW_USE_NVAPI=0 +##export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=0 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/default b/data_from_portwine/scripts/portwine_db/default index c468879..0333868 100755 --- a/data_from_portwine/scripts/portwine_db/default +++ b/data_from_portwine/scripts/portwine_db/default @@ -13,8 +13,9 @@ ##export PW_WINE_USE=PROTON_GE # PROTON_STEAM or PROTON_GE ##export PW_VULKAN_USE=vkd3d # dxvk, vkd3d or 0 for OpenGL ##export PW_DXR_ON=1 +##export PW_DLSS_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=0 +##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 diff --git a/data_from_portwine/scripts/portwine_db/dontstarve b/data_from_portwine/scripts/portwine_db/dontstarve index bac5f99..232856a 100755 --- a/data_from_portwine/scripts/portwine_db/dontstarve +++ b/data_from_portwine/scripts/portwine_db/dontstarve @@ -15,7 +15,7 @@ export PW_DLL_INSTALL="d3dx9 d3dcompiler_43" # Install DDL in port prefix ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -##export PW_USE_NVAPI=0 +##export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=0 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/fc3_blooddragon_d3d11 b/data_from_portwine/scripts/portwine_db/fc3_blooddragon_d3d11 index 1c44a5e..d21e849 100644 --- a/data_from_portwine/scripts/portwine_db/fc3_blooddragon_d3d11 +++ b/data_from_portwine/scripts/portwine_db/fc3_blooddragon_d3d11 @@ -12,7 +12,7 @@ export PW_WINE_USE=PROTON_GE export PW_VULKAN_USE=dxvk export PW_DXR_ON=0 export PW_VULKAN_NO_ASYNC=0 -export PW_USE_NVAPI=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 diff --git a/data_from_portwine/scripts/portwine_db/ghost b/data_from_portwine/scripts/portwine_db/ghost index 16748f9..2e33b9c 100644 --- a/data_from_portwine/scripts/portwine_db/ghost +++ b/data_from_portwine/scripts/portwine_db/ghost @@ -14,7 +14,7 @@ export PW_WINE_USE=proton_ge ##export PW_VULKAN_USE=dxvk # dxvk, vkd3d or 0 for OpenGL ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=0 +##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 diff --git a/data_from_portwine/scripts/portwine_db/iw3sp b/data_from_portwine/scripts/portwine_db/iw3sp index a6049f9..54f6531 100755 --- a/data_from_portwine/scripts/portwine_db/iw3sp +++ b/data_from_portwine/scripts/portwine_db/iw3sp @@ -20,7 +20,7 @@ ##export PW_DXVK_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -##export PW_USE_NVAPI=0 +##export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=0 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/iw4sp b/data_from_portwine/scripts/portwine_db/iw4sp index 99b36eb..125c307 100755 --- a/data_from_portwine/scripts/portwine_db/iw4sp +++ b/data_from_portwine/scripts/portwine_db/iw4sp @@ -20,7 +20,7 @@ ##export PW_VKD3D_VER=2.2 ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=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=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT diff --git a/data_from_portwine/scripts/portwine_db/risen-1 b/data_from_portwine/scripts/portwine_db/risen-1 index 574a66d..c1cd930 100755 --- a/data_from_portwine/scripts/portwine_db/risen-1 +++ b/data_from_portwine/scripts/portwine_db/risen-1 @@ -12,7 +12,7 @@ export PW_DLL_INSTALL="physx d3dx9" # Install DDL in port prefix (used wi ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -##export PW_USE_NVAPI=0 +##export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=0 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/s1_sp64_ship b/data_from_portwine/scripts/portwine_db/s1_sp64_ship index 85b5c60..2c95117 100755 --- a/data_from_portwine/scripts/portwine_db/s1_sp64_ship +++ b/data_from_portwine/scripts/portwine_db/s1_sp64_ship @@ -20,7 +20,7 @@ ##export PW_DXVK_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -##export PW_USE_NVAPI=0 +##export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=0 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/setup b/data_from_portwine/scripts/portwine_db/setup index ceec3bc..1e2a7d8 100755 --- a/data_from_portwine/scripts/portwine_db/setup +++ b/data_from_portwine/scripts/portwine_db/setup @@ -16,7 +16,7 @@ export PW_NO_ESYNC=1 # Do not use eventfd-based in-process synchronizatio #export PW_VULKAN_NO_ASYNC=1 #export PW_USE_TERMINAL=0 #export PW_OLD_GL_STRING=0 -#export PW_USE_NVAPI=0 +#export PW_USE_NVAPI_AND_DLSS=0 #export PW_VKD3D_FEATURE_LEVEL=0 export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/portwine_db/sprally2 b/data_from_portwine/scripts/portwine_db/sprally2 index 5d0d461..0ebbb18 100644 --- a/data_from_portwine/scripts/portwine_db/sprally2 +++ b/data_from_portwine/scripts/portwine_db/sprally2 @@ -16,7 +16,7 @@ export PW_OLD_GL_STRING=1 ##export PW_VULKAN_USE=vkd3d # dxvk, vkd3d or 0 for OpenGL ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=0 +##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 diff --git a/data_from_portwine/scripts/portwine_db/trine b/data_from_portwine/scripts/portwine_db/trine index 819fbdb..3d2c7b4 100755 --- a/data_from_portwine/scripts/portwine_db/trine +++ b/data_from_portwine/scripts/portwine_db/trine @@ -11,7 +11,7 @@ export PW_DLL_INSTALL="physx" # Install DDL in port prefix (used w ##export PW_VULKAN_USE=dxvk # dxvk, vkd3d or 0 for OpenGL ##export PW_DXR_ON=1 ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN -##export PW_USE_NVAPI=0 +##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 diff --git a/data_from_portwine/scripts/portwine_db/wgc b/data_from_portwine/scripts/portwine_db/wgc index c25160f..9096f55 100755 --- a/data_from_portwine/scripts/portwine_db/wgc +++ b/data_from_portwine/scripts/portwine_db/wgc @@ -9,7 +9,7 @@ export PW_COMMENT_DB="Wargaming Game Center" export LAUNCH_PARAMETERS="--disable-gpu" # Additional launch options #export PW_USE_TERMINAL=1 export PW_WINDOWS_VER=10 # Set windows version 10, 7 or XP -#export PW_USE_NVAPI=0 +#export PW_USE_NVAPI_AND_DLSS=0 export WINEDLLOVERRIDES="ucrtbase,xaudio2_7,xaudio2_8=n,b" export PW_DLL_INSTALL="lucida vcrun2019" # Install DDL in port prefix (used winetricks) ##export PW_GUI_DISABLED_CS=1 diff --git a/data_from_portwine/scripts/portwine_db/witcher3 b/data_from_portwine/scripts/portwine_db/witcher3 index de0e61e..407a46a 100755 --- a/data_from_portwine/scripts/portwine_db/witcher3 +++ b/data_from_portwine/scripts/portwine_db/witcher3 @@ -33,5 +33,5 @@ export PW_WINEDBG_DISABLE=0 export PW_USE_TERMINAL=0 ##ADD_IN_START_PORTWINE () { commands ; } export PW_WINE_USE=PROTON_GE -export PW_USE_NVAPI=0 +export PW_USE_NVAPI_AND_DLSS=0 export PW_GUI_DISABLED_CS=0 diff --git a/data_from_portwine/scripts/portwine_db/wotblitz b/data_from_portwine/scripts/portwine_db/wotblitz index cfbd888..add44ab 100755 --- a/data_from_portwine/scripts/portwine_db/wotblitz +++ b/data_from_portwine/scripts/portwine_db/wotblitz @@ -15,7 +15,7 @@ export PW_DLL_INSTALL="vcrun2013 vcrun2017 dotnet472" ##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN ##export PW_USE_TERMINAL=0 # Force run in terminal ##export PW_OLD_GL_STRING=0 -##export PW_USE_NVAPI=0 +##export PW_USE_NVAPI_AND_DLSS=0 ##export PW_VKD3D_FEATURE_LEVEL=0 ##export PW_NO_WRITE_WATCH=0 # 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_HIDE_NVIDIA_GPU=0 diff --git a/data_from_portwine/scripts/pw_autoinstall/PW_LOL b/data_from_portwine/scripts/pw_autoinstall/PW_LOL new file mode 100644 index 0000000..f4c7e56 --- /dev/null +++ b/data_from_portwine/scripts/pw_autoinstall/PW_LOL @@ -0,0 +1,38 @@ +#!/bin/bash +# Author: Castro-Fidel (PortWINE-Linux.ru) +######################################################################## +export LAUNCH_PARAMETERS=("/q" ) +export PW_AUTOINSTALL_EXE="${WINEPREFIX}/drive_c/live.na.exe" +export LAUNCH_PARAMETERS=("--launch-product=league_of_legends" "--launch-patchline=live") +export VERSION_WINE_FOR_LOL="WINE_LOL_GE_6.16-2" +export PW_MUST_HAVE_DLL="" +if [ ! -d "${PORT_WINE_PATH}/data/dist/${VERSION_WINE_FOR_LOL}" ] ; then + if try_download "https://github.com/Castro-Fidel/wine_builds/releases/download/WINE_LOL_GE_6.16-2/${VERSION_WINE_FOR_LOL}.tar.xz" \ + "${PORT_WINE_PATH}/data/tmp/${VERSION_WINE_FOR_LOL}.tar.xz" ; then + if unpack_tar_xz "${PORT_WINE_PATH}/data/tmp/${VERSION_WINE_FOR_LOL}.tar.xz" "${PORT_WINE_PATH}/data/dist/" ; then + try_remove_file "${PORT_WINE_PATH}/data/tmp/${VERSION_WINE_FOR_LOL}.tar.xz" + UNPACK_STATUS=0 + else + try_remove_file "${PORT_WINE_PATH}/data/tmp/${VERSION_WINE_FOR_LOL}.tar.xz" + try_remove_dir "${PORT_WINE_PATH}/data/dist/${VERSION_WINE_FOR_LOL}" + fi + fi + [[ "${UNPACK_STATUS}" != 0 ]] && exit 1 +fi +export PW_WINE_USE=WINE_LOL_GE_6.16-2 +export PW_VULKAN_USE=dxvk +start_portwine +if try_download "https://lol.secure.dyn.riotcdn.net/channels/public/x/installer/current/live.na.exe" "${PW_AUTOINSTALL_EXE}" +then + pw_start_progress_bar_block "Installing League of Legends. Please wait..." + zenity --info --width=500 --text "You must click the install button without changing the settings!" + pw_kill_autostart RiotClientServices.exe & + pw_run "${PW_AUTOINSTALL_EXE}" + portwine_exe="$WINEPREFIX/drive_c/Riot Games/Riot Client/RiotClientServices.exe" + try_remove_file "${PW_AUTOINSTALL_EXE}" + kill_portwine + pw_stop_progress_bar + export PORTWINE_CREATE_SHORTCUT_NAME="League of Legend" + portwine_create_shortcut +fi +stop_portwine diff --git a/data_from_portwine/scripts/runlib b/data_from_portwine/scripts/runlib index ef12043..ff22a3e 100755 --- a/data_from_portwine/scripts/runlib +++ b/data_from_portwine/scripts/runlib @@ -10,8 +10,12 @@ echo ' █────████─█─█───█───█─█──███─█──█─███ ' -[ $(id -u) = 0 ] && echo "Do not run this script as root!" && zenity --error --text "Do not run this script as root!" && exit 1 -if [ "${s_install}" != "1" ] && [ ! -x "`which "zenity" 2>/dev/null`" ];then +if [ $(id -u) = 0 ] ; then + echo "Do not run this script as root!" + zenity --error --text "Do not run this script as root!" + exit 1 +fi +if [[ "${s_install}" != "1" && ! -x "`which "zenity" 2>/dev/null`" ]] ; then echo "You will need to install: zenity, and restart the port." xdg-open "http://portwine-linux.ru/portwine-faq/" > /dev/null 2>&1 & exit 0 fi @@ -38,7 +42,7 @@ start_portwine () { if [ "${PW_USE_GSTREAMER}" = 1 ] ; then export GST_PLUGIN_SYSTEM_PATH_1_0="${WINEDIR}/lib64/gstreamer-1.0:${WINEDIR}/lib/gstreamer-1.0" - export GST_DEBUG="WARNING:0" + export GST_DEBUG="*:0" export WINE_GST_REGISTRY_DIR="${PORT_WINE_TMP_PATH}" export MEDIACONV_AUDIO_DUMP_FILE="${PORT_WINE_TMP_PATH}"/audio.foz export MEDIACONV_AUDIO_TRANSCODED_FILE="${PORT_WINE_TMP_PATH}"/transcoded_audio.foz @@ -55,7 +59,7 @@ start_portwine () { echo "RUNTIME is disabled" else 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 + if [[ ! -z "${PW_SANDBOX_HOME_PATH}" && -d "${PW_SANDBOX_HOME_PATH}" ]]; then export pw_runtime="${PW_WINELIB}/pressure-vessel/bin/pressure-vessel-unruntime \ --unshare-home \ --home="${PW_SANDBOX_HOME_PATH}" \ @@ -91,10 +95,13 @@ start_portwine () { 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 [ ! -d "${PW_WINELIB}/runtime/share/nvidia" ] + then create_new_dir "${PW_WINELIB}/runtime/share/nvidia" + fi echo "RUNTIME is enabled" fi - if [ ! -z "${PW_LOG}" ] && [ "${PW_LOG}" != 0 ] ; then + if [[ ! -z "${PW_LOG}" && "${PW_LOG}" != 0 ]] ; then export WINEDEBUG="fixme-all,err+loaddll,err+dll,err+file,err+reg" export DXVK_LOG_LEVEL="info" export VKD3D_DEBUG="warn" @@ -109,33 +116,33 @@ start_portwine () { #default wine-mono override for FNA games export WINE_MONO_OVERRIDES="Microsoft.Xna.Framework.*,Gac=n" - if [ ! -z "${PW_NO_ESYNC}" ] && [ "${PW_NO_ESYNC}" != 0 ] + if [[ ! -z "${PW_NO_ESYNC}" && "${PW_NO_ESYNC}" != 0 ]] then export WINEESYNC="0" else export WINEESYNC="1" fi - if [ ! -z "${PW_NO_FSYNC}" ] && [ "${PW_NO_FSYNC}" != 0 ] ; then + if [[ ! -z "${PW_NO_FSYNC}" && "${PW_NO_FSYNC}" != 0 ]] ; then export WINEFSYNC="0" export WINEFSYNC_FUTEX2="0" else export WINEFSYNC="1" export WINEFSYNC_FUTEX2="1" fi - if [ ! -z "${PW_FORCE_LARGE_ADDRESS_AWARE}" ] && [ "${PW_FORCE_LARGE_ADDRESS_AWARE}" != 0 ] + if [[ ! -z "${PW_FORCE_LARGE_ADDRESS_AWARE}" && "${PW_FORCE_LARGE_ADDRESS_AWARE}" != 0 ]] then export WINE_LARGE_ADDRESS_AWARE="1" else export WINE_LARGE_ADDRESS_AWARE="0" fi - if [ ! -z "${PW_OLD_GL_STRING}" ] && [ "${PW_OLD_GL_STRING}" != 0 ] ; then + if [[ ! -z "${PW_OLD_GL_STRING}" && "${PW_OLD_GL_STRING}" != 0 ]] ; then export MESA_EXTENSION_MAX_YEAR="2003" #mesa override export __GL_ExtensionStringVersion="17700" #nvidia override fi - if [ ! -z "${PW_NO_WRITE_WATCH}" ] && [ "${PW_NO_WRITE_WATCH}" != 0 ] ; then + if [[ ! -z "${PW_NO_WRITE_WATCH}" && "${PW_NO_WRITE_WATCH}" != 0 ]] ; then export WINE_DISABLE_WRITE_WATCH="1" fi - if [ ! -z "${PW_VULKAN_NO_ASYNC}" ] && [ "${PW_VULKAN_NO_ASYNC}" != 0 ] ; then + if [[ ! -z "${PW_VULKAN_NO_ASYNC}" && "${PW_VULKAN_NO_ASYNC}" != 0 ]] ; then export RADV_DEBUG="llvm" var_vkd3d_config_update single_queue fi - if [ ! -z "${PW_USE_NVAPI}" ] && [ "${PW_USE_NVAPI}" == 1 ] && [ -d "${WINEDIR}/lib/wine/nvapi/" ] + if [[ ! -z "${PW_USE_NVAPI_AND_DLSS_AND_DLSS}" && "${PW_USE_NVAPI_AND_DLSS_AND_DLSS}" == 1 && -d "${WINEDIR}/lib/wine/nvapi/" ]] then if [ "${WINEARCH}" != "win32" ] ; then try_copy_file "${WINEDIR}/lib/wine/nvapi/nvapi.dll" "${WINEPREFIX}/drive_c/windows/syswow64/" @@ -144,24 +151,28 @@ start_portwine () { try_copy_file "${WINEDIR}/lib/wine/nvapi/nvapi.dll" "${WINEPREFIX}/drive_c/windows/system32/" fi var_winedlloverride_update "nvapi,nvapi64=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 else var_winedlloverride_update "nvapi,nvapi64=" fi - if [ ! -z "${PW_WINEDBG_DISABLE}" ] && [ "${PW_WINEDBG_DISABLE}" != 0 ] ; then + if [[ ! -z "${PW_WINEDBG_DISABLE}" && "${PW_WINEDBG_DISABLE}" != 0 ]] ; then var_winedlloverride_update "winedbg.exe=" fi - if [ ! -z "${PW_HIDE_NVIDIA_GPU}" ] && [ "${PW_HIDE_NVIDIA_GPU}" != 0 ] ; then + if [[ ! -z "${PW_HIDE_NVIDIA_GPU}" && "${PW_HIDE_NVIDIA_GPU}" != 0 ]] ; then export WINE_HIDE_NVIDIA_GPU="1" fi - if [ ! -z "${PW_HEAP_DELAY_FREE}" ] && [ "${PW_HEAP_DELAY_FREE}" != 0 ] + if [[ ! -z "${PW_HEAP_DELAY_FREE}" && "${PW_HEAP_DELAY_FREE}" != 0 ]] then export WINE_HEAP_DELAY_FREE="1" else export WINE_HEAP_DELAY_FREE="0" fi - if [ ! -z "${PW_WINE_ALLOW_XIM}" ] && [ "${PW_WINE_ALLOW_XIM}" != 0 ] + if [[ ! -z "${PW_WINE_ALLOW_XIM}" && "${PW_WINE_ALLOW_XIM}" != 0 ]] then export WINE_ALLOW_XIM="1" else export WINE_ALLOW_XIM="0" fi - if [ ! -z "${PW_DXR_ON}" ] && [ "${PW_DXR_ON}" != 0 ] ; then + if [[ ! -z "${PW_DXR_ON}" && "${PW_DXR_ON}" != 0 ]] ; then var_vkd3d_config_update dxr fi export optirun_on="" @@ -170,7 +181,7 @@ start_portwine () { if [ -x "`which optimus-manager 2>/dev/null`" ]; then export check_optimus_manager=`optimus-manager --status | grep Current | cut -f 2 -d':' | sed -e 's/^[[:space:]]*//'` fi - if [ ! -z "${PW_NVIDIA}" ] && [ "${check_optimus_manager}" != "intel" ]; then + if [[ ! -z "${PW_NVIDIA}" && "${check_optimus_manager}" != "intel" ]]; then if [ "${check_optimus_manager}" = "nvidia" ]; then export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json elif [ -x "`which primusrun 2>/dev/null`" ]; then @@ -205,13 +216,13 @@ start_portwine () { killall xneur export int_xneur=1 fi - if [ ! -z "${PW_XKBD_RU_HACK}" ] && [ "${PW_XKBD_RU_HACK}" == 1 ]; then + if [[ ! -z "${PW_XKBD_RU_HACK}" && "${PW_XKBD_RU_HACK}" == 1 ]] ; then export PW_XKBD="$(setxkbmap -query | grep -w ru | awk '{print($2)}')" if [ ! -z ${PW_XKBD} ]; then 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" ]] ; then export PW_GAMEMODERUN=1 echo "Gamemod will be launched." else @@ -219,9 +230,7 @@ start_portwine () { echo "Gamemod is not installed or disabled in vars script: PW_USE_GAMEMODE=$PW_USE_GAMEMODE" fi #init_pfx - if [ ! -d "${WINEPREFIX}" ] || [ ! -d "${WINEPREFIX}"/drive_c/windows ] || \ - [ ! -d "${WINEPREFIX}/dosdevices" ] || [ ! -f "${WINEPREFIX}"/userdef.reg ] || \ - [ ! -f "${WINEPREFIX}"/system.reg ] || [ ! -f "${WINEPREFIX}"/user.reg ] + if [[ ! -d "${WINEPREFIX}" || ! -d "${WINEPREFIX}"/drive_c/windows || ! -d "${WINEPREFIX}/dosdevices" || ! -f "${WINEPREFIX}"/userdef.reg || ! -f "${WINEPREFIX}"/system.reg || ! -f "${WINEPREFIX}"/user.reg ]] then pw_clear_pfx create_new_dir "${WINEPREFIX}" @@ -278,6 +287,7 @@ start_portwine () { try_copy_file "${WINEDIR}/lib/wine/dxvk/dxvk_config.dll" "${WINEPREFIX}/drive_c/windows/system32/" fi 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" @@ -296,8 +306,8 @@ start_portwine () { fi done var_winedlloverride_update "d3d11,d3d10,d3d10core,d3d10_1,d3d9,dxgi=b;d3d12=" - echo "Use OpenGL" elif [ "${PW_VULKAN_USE}" = "vkd3d" ] ; then + echo "Use VKD3D-PROTON only (DX12 to vulkan)" echo "Try copy native VKD3D files" for wine_vkd3d_dll in d3d12 libvkd3d-proton-utils-3 ; do if [ "${WINEARCH}" != "win32" ] ; then @@ -306,22 +316,17 @@ start_portwine () { else try_copy_file "${WINEDIR}/lib/wine/vkd3d-proton/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/" fi - var_winedlloverride_update "${wine_vkd3d_dll}=n" - 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 done - var_winedlloverride_update "dxgi=b" + var_winedlloverride_update "d3d12=n;dxgi=b" if [ "${WINEARCH}" != "win32" ] ; then 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/" else try_copy_file "${WINEDIR}/lib64/vkd3d/libvkd3d-shader-1.dll" "${WINEPREFIX}/drive_c/windows/system32/" fi - echo "Use VKD3D-PROTON only (DX12 to vulkan)" else export CP_DXVK_FILES="d3d11 d3d10 d3d10core d3d10_1 d3d9 dxgi" + echo "Use DXVK" echo "Try copy native DXVK files" for wine_dxvk_dll in ${CP_DXVK_FILES} ; do if [ "${WINEARCH}" != "win32" ] ; then @@ -332,13 +337,15 @@ start_portwine () { fi var_winedlloverride_update "${wine_dxvk_dll}=n" done - 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 - var_winedlloverride_update "d3d12,libvkd3d-proton-utils-3=" - echo "Use DXVK" fi + 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 + 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 pw_other_fixes #run_winetricks_from_db update_winetricks @@ -353,7 +360,7 @@ start_portwine () { touch "${WINEPREFIX}/winetricks.log" fi for need_install_dll_to_pfx in ${PW_DLL_INSTALL} ; do - if [ "${need_install_dll_to_pfx}" == "vcrun2015" ] || [ "${need_install_dll_to_pfx}" == "vcrun2017" ] ; then + if [[ "${need_install_dll_to_pfx}" == "vcrun2015" || "${need_install_dll_to_pfx}" == "vcrun2017" ]] ; then need_install_dll_to_pfx="vcrun2019" sed -i '/vcrun2015/d' "${WINEPREFIX}/winetricks.log" sed -i '/vcrun2017/d' "${WINEPREFIX}/winetricks.log" @@ -380,7 +387,8 @@ start_portwine () { init_wine_ver cabextract_fix fi - ${pw_runtime} xterm -e env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${PORT_WINE_TMP_PATH}/winetricks" -q -f ${PW_DLL_NEED_INSTALL} + ${pw_runtime} xterm -e env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" \ + "${PORT_WINE_TMP_PATH}/winetricks" -q -f ${PW_DLL_NEED_INSTALL} if [ "${PW_WINE_VER_FROM_DB}" != "PROTON_STEAM" ] ; then /bin/bash -c ${pw_full_command_line[*]} & exit 0 @@ -389,14 +397,15 @@ start_portwine () { pw_start_progress_bar_cs "Start ${portname}... Please wait..." fi if [[ -z `cat "${WINEPREFIX}/system.reg" | grep "Windows $PW_WINDOWS_VER"` ]] ; then - if [ ! -z "${PW_WINDOWS_VER}" ] && [ `echo "$PW_WINDOWS_VER" | sed 's/.*/\L&/'` == "xp" ] ; then + if [[ ! -z "${PW_WINDOWS_VER}" && `echo "$PW_WINDOWS_VER" | sed 's/.*/\L&/'` == "xp" ]] ; then if [ "${WINEARCH}" != "win32" ] ; then export PW_WINDOWS_VER="xp64" else export PW_WINDOWS_VER="xp" fi fi - ${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" winecfg -v `echo "win${PW_WINDOWS_VER}" | sed 's/.*/\L&/'` + ${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" \ + "${WINELOADER}" winecfg -v `echo "win${PW_WINDOWS_VER}" | sed 's/.*/\L&/'` echo "Set to win${PW_WINDOWS_VER}" wait_wineserver fi @@ -417,14 +426,16 @@ pw_run () { print_var "WINEDIR" "WINEARCH" "WINEPREFIX" "WINEDLLOVERRIDES" "PATH_TO_GAME" "PW_WINE_USE" "PW_VULKAN_USE" "VKD3D_CONFIG" "LD_LIBRARY_PATH" "PATH" 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}" ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} &>>"${PW_LOG_TO_FILE}" + 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}" \ + ${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}" ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} &>>"${PW_LOG_TO_FILE}" + ${optirun_on} ${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_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 + 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}" \ ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} else @@ -435,9 +446,14 @@ pw_run () { } ###MAIN### -[ $(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 [ $(id -u) -eq 0 ] ; then + 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 +fi unset MANGOHUD MANGOHUD_DLSYM PW_NO_ESYNC PW_NO_FSYNC PW_VULKAN_USE WINEDLLOVERRIDES PW_NO_WRITE_WATCH PW_GUI_DISABLED_CS unset PW_CHECK_AUTOINSTAL PW_VKBASALT_EFFECTS PW_VKBASALT_FFX_CAS PORTWINE_DB PORTWINE_DB_FILE PW_DISABLED_CREAT_DB PW_YAD_SET +unset CHK_SYMLINK_FILE export portname=PortProton cd "$(dirname "`readlink -f "$0"`")" && export PORT_SCRIPTS_PATH="$(pwd)" diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh index e5c86ab..5384177 100755 --- a/data_from_portwine/scripts/start.sh +++ b/data_from_portwine/scripts/start.sh @@ -11,12 +11,12 @@ portwine_launch () { start_portwine PORTWINE_MSI=`basename "${portwine_exe}" | grep .msi` PORTWINE_BAT=`basename "${portwine_exe}" | grep .bat` - if [ ! -z "${PW_VIRTUAL_DESKTOP}" ] && [ "${PW_VIRTUAL_DESKTOP}" == "1" ] ; then + if [[ ! -z "${PW_VIRTUAL_DESKTOP}" && "${PW_VIRTUAL_DESKTOP}" == "1" ]] ; then pw_screen_resolution=`xrandr --current | grep "*" | awk '{print $1;}' | head -1` pw_run explorer "/desktop=portwine,${pw_screen_resolution}" "$portwine_exe" elif [ ! -z "${PORTWINE_MSI}" ]; then pw_run msiexec /i "$portwine_exe" - elif [ ! -z "${PORTWINE_BAT}" ] || [ ! -z "${portwine_exe}" ]; then + elif [[ ! -z "${PORTWINE_BAT}" || ! -z "${portwine_exe}" ]] ; then pw_run ${WINE_WIN_START} "$portwine_exe" else pw_run explorer @@ -200,9 +200,9 @@ pw_winetricks () { } pw_edit_db () { - pw_gui_for_edit_db ENABLE_VKBASALT PW_NO_ESYNC PW_NO_FSYNC PW_DXR_ON PW_VULKAN_NO_ASYNC PW_USE_NVAPI \ + pw_gui_for_edit_db ENABLE_VKBASALT PW_NO_ESYNC PW_NO_FSYNC PW_DXR_ON 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_NO_WRITE_WATCH PW_GUI_DISABLED_CS PW_USE_GSTREAMER + PW_WINE_ALLOW_XIM PW_HEAP_DELAY_FREE PW_NO_WRITE_WATCH PW_GUI_DISABLED_CS PW_USE_GSTREAMER if [ "$?" == 0 ] ; then /bin/bash -c ${pw_full_command_line[*]} & exit 0 @@ -239,7 +239,7 @@ done if [ ! -z "${PORTWINE_DB_FILE}" ] ; then export YAD_EDIT_DB="--button=EDIT DB!!${loc_edit_db} ${PORTWINE_DB}:118" [ -z "${PW_COMMENT_DB}" ] && PW_COMMENT_DB="PortWINE database file for "\"${PORTWINE_DB}"\" was found." - if [ -z "${PW_VULKAN_USE}" ] || [ -z "${PW_WINE_USE}" ] ; then + if [[ -z "${PW_VULKAN_USE}" || -z "${PW_WINE_USE}" ]] ; then unset PW_GUI_DISABLED_CS [ -z "${PW_VULKAN_USE}" ] && export PW_VULKAN_USE=dxvk [ -z "${PW_WINE_USE}" ] && export PW_WINE_USE=PROTON_STEAM @@ -262,9 +262,9 @@ else unset PW_GUI_DISABLED_CS fi if [ ! -z "${portwine_exe}" ]; then - if [ -z "${PW_GUI_DISABLED_CS}" ] || [ "${PW_GUI_DISABLED_CS}" = 0 ] ; then + if [[ -z "${PW_GUI_DISABLED_CS}" || "${PW_GUI_DISABLED_CS}" = 0 ]] ; then OUTPUT_START=$("${pw_yad}" --text-align=center --text "$PW_COMMENT_DB" --wrap-width=150 --borders=15 --form --center \ - --title "$portname" --image "$PW_GUI_ICON_PATH/port_proton.png" --separator=";" \ + --title "${portname}-${install_ver} (${scripts_install_ver})" --image "$PW_GUI_ICON_PATH/port_proton.png" --separator=";" \ --window-icon="$PW_GUI_ICON_PATH/port_proton.png" \ --field="Run with :CB" "${PW_DEFAULT_VULKAN_USE}" \ --field="Run with :CB" "${PW_DEFAULT_WINE_USE}" \ @@ -274,7 +274,7 @@ if [ ! -z "${portwine_exe}" ]; then --button='DEBUG'!!"${loc_debug}":102 \ --button='LAUNCH'!!"${loc_launch}":106 ) export PW_YAD_SET="$?" - if [ "$PW_YAD_SET" == "1" ] || [ "$PW_YAD_SET" == "252" ] ; then exit 0 ; fi + if [[ "$PW_YAD_SET" == "1" || "$PW_YAD_SET" == "252" ]] ; then exit 0 ; fi export VULKAN_MOD=`echo "${OUTPUT_START}" | grep \;\; | awk -F";" '{print $1}' | awk '{print $1}'` export PW_WINE_VER=`echo "${OUTPUT_START}" | grep \;\; | awk -F";" '{print $2}' | awk '{print $1}'` elif [ ! -z "${PORTWINE_DB_FILE}" ]; then @@ -347,6 +347,7 @@ else --field=" OSU"!"$PW_GUI_ICON_PATH/osu.png":"BTN" '@bash -c "button_click PW_OSU"' \ --field=" Glyph Client"!"$PW_GUI_ICON_PATH/glyph.png":"BTN" '@bash -c "button_click PW_GLYPH"' \ --field=" Ankama Launcher"!"$PW_GUI_ICON_PATH/ankama.png":"BTN" '@bash -c "button_click PW_ANKAMA"' \ + --field=" League of Legends"!"$PW_GUI_ICON_PATH/lol.png":"BTN" '@bash -c "button_click PW_LOL"' \ --field=" Gameforge Client"!"$PW_GUI_ICON_PATH/gameforge.png":"BTN" '@bash -c "button_click PW_GAMEFORGE"' & \ "${pw_yad}" --plug=${KEY} --tabnum=1 --columns=3 --form --separator=";" \ @@ -359,16 +360,16 @@ else --field=":LBL" "" \ --field='WINEFILE'!!"${loc_winefile}":"BTN" '@bash -c "button_click WINEFILE"' \ --field='WINECMD'!!"${loc_winecmd}":"BTN" '@bash -c "button_click WINECMD"' \ - --field="${portname}-${install_ver} (${scripts_install_ver})"!!"":"FBTN" '@bash -c "open_changelog"' \ + --field="GET OTHER WINE"!!"":"FBTN" '@bash -c "button_click gui_proton_downloader"' \ --field=":LBL" "" \ --field='WINEREG'!!"${loc_winereg}":"BTN" '@bash -c "button_click WINEREG"' \ --field='WINETRICKS'!!"${loc_winetricks}":"BTN" '@bash -c "button_click WINETRICKS"' &> "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan" & \ "${pw_yad}" --key=$KEY --notebook --borders=10 --width=1000 --height=168 --no-buttons --text-align=center \ - --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "$portname" --separator=";" \ + --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "${portname}-${install_ver} (${scripts_install_ver})" --separator=";" \ --tab-pos=right --tab="PORT_PROTON" --tab="AUTOINSTALL" --tab=" SETTINGS" --center YAD_STATUS="$?" - if [ "$YAD_STATUS" == "1" ] || [ "$YAD_STATUS" == "252" ] ; then exit 0 ; fi + if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then exit 0 ; fi if [ -f "${PORT_WINE_TMP_PATH}/tmp_yad_form" ] ; then export PW_YAD_SET=`cat "${PORT_WINE_TMP_PATH}/tmp_yad_form" | head -n 1 | awk '{print $1}'` @@ -420,6 +421,7 @@ case "$PW_YAD_SET" in gui_open_var) gui_open_var ;; gui_wine_uninstaller) gui_wine_uninstaller ;; gui_rm_portproton) gui_rm_portproton ;; + gui_proton_downloader) gui_proton_downloader ;; *) pw_autoinstall_from_db ;; esac diff --git a/data_from_portwine/scripts/var b/data_from_portwine/scripts/var index f8ba92e..26bf2a6 100755 --- a/data_from_portwine/scripts/var +++ b/data_from_portwine/scripts/var @@ -1,6 +1,6 @@ #!/bin/bash #Author: Castro-Fidel (PortWINE-Linux.ru) -#SCRIPTS_NEXT_VERSION=2018 +#SCRIPTS_NEXT_VERSION=2019 #PORT_NEXT_VERSION=97 ######################################################################## export PW_MANGOHUD=1