forked from CastroFidel/PortWINE
		
	Major changes. Fix kill port. Settings to YAD
This commit is contained in:
		| @@ -2,9 +2,13 @@ | ||||
| # Author: PortWINE-Linux.ru | ||||
| . "$(dirname $(readlink -f "$0"))/runlib" | ||||
| ######################################################################## | ||||
| PORTPROTON_EXE=$(zenity --file-selection --file-filter=""*.exe" "*.bat"" \ | ||||
| --title="${sc_path}" --filename="${PORT_WINE_PATH}/data/pfx/drive_c/") | ||||
| if [ $? -eq 1 ];then exit 1; fi | ||||
| if [ ! -z "$1" ]; then | ||||
|     PORTPROTON_EXE="$1" | ||||
| else | ||||
|     PORTPROTON_EXE=$(zenity --file-selection --file-filter=""*.exe" "*.bat"" \ | ||||
|     --title="${sc_path}" --filename="${PORT_WINE_PATH}/data/pfx/drive_c/") | ||||
|     if [ $? -eq 1 ];then exit 1; fi | ||||
| fi | ||||
| PORTPROTON_NAME="$(basename "${PORTPROTON_EXE}" | sed s/".exe"/""/g )" | ||||
| PORTPROTON_PATH="$( cd "$( dirname "${PORTPROTON_EXE}" )" >/dev/null 2>&1 && pwd )"  | ||||
| if [ -x "`which wrestool 2>/dev/null`" ]; then | ||||
| @@ -13,49 +17,24 @@ if [ -x "`which wrestool 2>/dev/null`" ]; then | ||||
|     cp -f "${PORTPROTON_EXE}.ico" "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.ico" | ||||
| fi | ||||
| PORTPROTON_CMD="" | ||||
| PORTPROTON_CMD=$(zenity --entry --text "${sc_cmd}") | ||||
| if [ $? -eq 1 ];then exit 1; fi | ||||
| # PORTPROTON_CMD=$(zenity --entry --text "${sc_cmd}") | ||||
| # if [ $? -eq 1 ];then exit 1; fi | ||||
| start_settings=`zenity --title  "${ss_title}" --text "${ss_text}" --list --radiolist \ | ||||
|     --column="${inst_set}" --column "${ss_ver}" --column "${ss_dr}"  --width=500 --height=220 \ | ||||
|     TRUE "DXVK" "${ss_ogl_3}" \ | ||||
|     FALSE "VKD3D and OpenGL" "${ss_ogl_2}" ` | ||||
|     if [ $? -eq 1 ];then exit 1; fi | ||||
|     case $start_settings in | ||||
|     "VKD3D and OpenGL")  | ||||
|             dxvk_ogl_var="off" ;; | ||||
|     "DXVK")  | ||||
|             hud_settings=`zenity --list --title  "HUD" --text "${hud_text}" --list --checklist \ | ||||
|             --column="${inst_set}" --column="HUD info:" --column="${hud_info}" --width=800 --height=550 \ | ||||
|             FALSE "fps" "${hud_fps}" \ | ||||
|             FALSE "devinfo" "${hud_devinfo}" \ | ||||
|             FALSE "frametimes" "${hud_frametimes}" \ | ||||
|             FALSE "submissions" "${hud_submissions}" \ | ||||
|             FALSE "drawcalls" "${hud_drawcalls}" \ | ||||
|             FALSE "pipelines" "${hud_pipelines}" \ | ||||
|             FALSE "memory" "${hud_memory}" \ | ||||
|             FALSE "gpuload" "${hud_gpuload}" \ | ||||
|             FALSE "version" "${hud_version}" \ | ||||
|             FALSE "api" "${hud_api}" \ | ||||
|             FALSE "compiler" "${hud_compiler}" \ | ||||
|             FALSE "samplers" "${hud_samplers}" ` | ||||
|  | ||||
|             if [ ! -z $hud_settings ]; then | ||||
|                 for hud_set in $hud_settings | ||||
|                 do | ||||
|                     echo "${hud_set}" >> "${PORT_WINE_TMP_PATH}/dxvk_on_shortcut" | ||||
|                 done   | ||||
|                 sed -i "s/|/,/g" "${PORT_WINE_TMP_PATH}/dxvk_on_shortcut" | ||||
|                 read "hud_set" < "${PORT_WINE_TMP_PATH}/dxvk_on_shortcut" | ||||
|                 export dxvk_ogl_var="$hud_set" | ||||
|             else | ||||
|                 dxvk_ogl_var="0" | ||||
|             fi ;; | ||||
|     esac   | ||||
| --column="${inst_set}" --column "${ss_ver}" --column "${ss_dr}"  --width=500 --height=220 \ | ||||
| TRUE "DXVK" "${ss_ogl_3}" \ | ||||
| FALSE "VKD3D and OpenGL" "${ss_ogl_2}" ` | ||||
| if [ $? -eq 1 ];then exit 1; fi | ||||
| case $start_settings in | ||||
| "VKD3D and OpenGL")  | ||||
|         dxvk_ogl_var="off" ;; | ||||
| "DXVK")  | ||||
|         dxvk_ogl_var="0" ;; | ||||
| esac   | ||||
| ######################################################################## | ||||
| name_desktop="${PORTPROTON_NAME}"  | ||||
| echo "[Desktop Entry]" > "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| echo "Name=${PORTPROTON_NAME}" >> "${PORT_WINE_PATH}/${name_desktop}.desktop"  | ||||
| echo "Exec="env dxvk_ogl_var=$dxvk_ogl_var launch_parameters="${PORTPROTON_CMD}" PATH_TO_GAME=\""$PORTPROTON_PATH"\" sh \"${PORT_SCRIPTS_PATH}/start\" \"${PORTPROTON_EXE}\" "" \ | ||||
| echo "Exec="env dxvk_ogl_var=$dxvk_ogl_var launch_parameters=\""${PORTPROTON_CMD}"\" PATH_TO_GAME=\""$PORTPROTON_PATH"\" sh \"${PORT_SCRIPTS_PATH}/start\" \"${PORTPROTON_EXE}\" "" \ | ||||
| >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| echo "Type=Application" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| echo "Categories=Game" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|   | ||||
| @@ -1,15 +1,15 @@ | ||||
| #!/bin/bash | ||||
| # Author: PortWINE-Linux.ru | ||||
| . "$(dirname $(readlink -f "$0"))/runlib" | ||||
| "${WINESERVER}" -k | ||||
| if [ -e "${PORT_WINE_TMP_PATH}/dxvk_on" ]; then | ||||
|     rm -f "${PORT_WINE_TMP_PATH}/dxvk_on" | ||||
| fi | ||||
| KILL_PORTWINE | ||||
| export PW_USE_TERMINAL=1 | ||||
| START_PORTWINE | ||||
| echo "${port_deb1}" > "${PORT_WINE_PATH}/${portname}.log" | ||||
| echo "${port_deb2}" >> "${PORT_WINE_PATH}/${portname}.log" | ||||
| echo "--------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" | ||||
| echo "GLIBC version:" >> "${PORT_WINE_PATH}/${portname}.log" | ||||
| echo "echo $(ldd --version)" | grep ldd >> "${PORT_WINE_PATH}/${portname}.log" | ||||
| echo "--------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" | ||||
| echo "PortWINE version:" >> "${PORT_WINE_PATH}/${portname}.log" | ||||
| read install_ver < "${PORT_WINE_TMP_PATH}/${portname}_ver" | ||||
| echo "${portname}-${install_ver}" >> "${PORT_WINE_PATH}/${portname}.log" | ||||
| @@ -85,7 +85,7 @@ else | ||||
| 	fi | ||||
| fi  | ||||
| zenity --info --title "DEBUG" --text "${port_debug}" --no-wrap && "${WINESERVER}" -k | ||||
| STOP_PORTWINE | pwzen | ||||
| STOP_PORTWINE | sszen | ||||
| cat "${PORT_WINE_PATH}/${portname}.log.wine" >> "${PORT_WINE_PATH}/${portname}.log" | ||||
| rm -f "${PORT_WINE_PATH}/${portname}.log.wine" | ||||
| deb_text=$(cat "${PORT_WINE_PATH}/${portname}.log"  | awk '! a[$0]++')  | ||||
|   | ||||
| @@ -1,19 +0,0 @@ | ||||
| #!/bin/bash | ||||
| # Author: PortWINE-Linux.ru | ||||
|  | ||||
| . "$(dirname $(readlink -f "$0"))/runlib" | ||||
|  | ||||
| xsd=`zenity --title  "${port_del1}"  --text "${port_del2}" \ | ||||
| --list --radiolist --column="${inst_set}" --column "${port_del3}" \ | ||||
| TRUE "${port_del4}" \ | ||||
| FALSE "${port_del5}" ` | ||||
| if [ $? -eq 1 ];then exit 1; fi | ||||
| 	case $xsd in | ||||
| 		"${port_del4}") | ||||
| 			exit 0 ;; | ||||
| 		"${port_del5}") | ||||
| 			rm -fR "/home/${USER}/.local/share/applications/${gamename}.desktop" | ||||
| 			ADD_IN_POST_UNINSTALL | ||||
| 			zenity --info --title "PortWINE ${port_del6}!" --text "$portname ${port_del6}!" --no-wrap ;; | ||||
| 	esac  | ||||
| exit 0 | ||||
| @@ -1,13 +1,9 @@ | ||||
| #!/bin/bash | ||||
| # Author: PortWINE-Linux.ru | ||||
| . "$(dirname $(readlink -f "$0"))/runlib" | ||||
| "${WINESERVER}" -k | ||||
| wine_pids=$(ls -l /proc/*/exe 2>/dev/null | grep -E 'wine(64)?-preloader|wineserver' | perl -pe 's;^.*/proc/(\d+)/exe.*$;$1;g;') | ||||
| if ! [ -z "${wine_pids}" ] ; then | ||||
|     kill -9 ${wine_pids} | ||||
| fi | ||||
| KILL_PORTWINE | ||||
| if [ -e "${PORT_WINE_TMP_PATH}/dxvk_on" ]; then | ||||
|     rm -f "${PORT_WINE_TMP_PATH}/dxvk_on" | ||||
| fi | ||||
| START_PORTWINE | ||||
| STOP_PORTWINE | pwzen | ||||
| STOP_PORTWINE | sszen | ||||
|   | ||||
| @@ -17,14 +17,9 @@ if [ "${s_install}" != "1" ] && [ ! -x "`which "zenity" 2>/dev/null`" ];then | ||||
| fi | ||||
| ######################################################################## | ||||
| sszen() { | ||||
| zenity --progress --title="Settings..." --text="Updating start parameters" --pulsate --auto-close --auto-kill --width=450 | ||||
| zenity --progress --title="Settings..." --text="Updating parameters" --no-cancel --pulsate --auto-close --width 400  | ||||
| }  | ||||
| ######################################################################## | ||||
| pwzen() { | ||||
| zenity --progress --title="Settings..." --text="Please wait!" --pulsate --auto-close --auto-kill --width=450 | ||||
| }  | ||||
| ######################################################################## | ||||
| ulimit -c unlimited | ||||
| cd "$(dirname "`readlink -f "$0"`")" | ||||
| export PORT_SCRIPTS_PATH="$(pwd)" | ||||
| cd "${PORT_SCRIPTS_PATH}/../../" | ||||
| @@ -48,6 +43,11 @@ if [ ! -e "${PORT_WINE_TMP_PATH}/${portname}_loc" ]; then | ||||
| 	FALSE "ENG" ` | ||||
| 	echo "${SET_LANG}" > "${PORT_WINE_TMP_PATH}/${portname}_loc" | ||||
| fi | ||||
| if [ "${portname}" = "PortProton" ]; then | ||||
|     if [ -e "${PORT_WINE_TMP_PATH}/dxvk_on" ]; then | ||||
|         rm -f "${PORT_WINE_TMP_PATH}/dxvk_on" | ||||
|     fi | ||||
| fi | ||||
| ######################################################################## | ||||
| . "${PORT_SCRIPTS_PATH}"/lang | ||||
| if [ ! -e "${PORT_WINE_TMP_PATH}/${portname}_ver" ]; then | ||||
| @@ -59,14 +59,9 @@ export port_on_run="${PORT_WINE_PATH}/data/port_on" | ||||
| export WINEDIR="${PORT_WINE_PATH}"/data/dist | ||||
| export WINELIB="${HOME}/.PortWINE/libs${pw_libs_ver}" | ||||
| export WINEARCH=win64 | ||||
| export WINELOADER="${WINEDIR}/bin/wine" | ||||
| export WINEDLLPATH="${WINEDIR}/lib64/wine:${WINEDIR}/lib/wine" | ||||
| export WINESERVER="${WINEDIR}/bin/wineserver" | ||||
| export WINEPREFIX="${PORT_WINE_PATH}/data/pfx" | ||||
| export PATH="${WINEDIR}/bin:${PATH}" | ||||
| export WINESTART="C:\\windows\\command\\start.exe" | ||||
| export WINEPREFIX="${PORT_WINE_PATH}/data/pfx/" | ||||
| export PW_COMPAT_DATA_PATH="${PORT_WINE_PATH}/data/" | ||||
| export PW_COMPAT_MEDIA_PATH="${PW_COMPAT_MEDIA_PATH}" | ||||
| export PW_COMPAT_MEDIA_PATH="${PORT_WINE_TMP_PATH}/" | ||||
| export PW_RUNTIME="$WINELIB/run.sh" | ||||
| ######################################################################## | ||||
| export urlg="https://portwine-linux.ru/portwine-faq/" | ||||
| @@ -76,6 +71,33 @@ export PW_TERM="" | ||||
| #if [ ! -f "${PORT_WINE_TMP_PATH}/init_run_suc" ]; then | ||||
| #    export PW_USE_TERMINAL="1" | ||||
| #fi | ||||
| for pw_dist in "dxvk" "vkd3d" | ||||
| do | ||||
|     if [ -d "${WINEDIR}"_"${pw_dist}"/share/wine/ ]; then | ||||
|         if [ -d "${WINEDIR}"/share/wine/gecko ]; then | ||||
|             rm -fr "${WINEDIR}"_"${pw_dist}"/share/wine/gecko | ||||
|             ln -s "${WINEDIR}"/share/wine/gecko "${WINEDIR}"_"${pw_dist}"/share/wine/  | ||||
|         fi  | ||||
|         if [ -d "${WINEDIR}"/share/wine/mono ]; then | ||||
|             rm -fr "${WINEDIR}"_"${pw_dist}"/share/wine/mono | ||||
|             ln -s "${WINEDIR}"/share/wine/mono "${WINEDIR}"_"${pw_dist}"/share/wine/  | ||||
|         fi      | ||||
|     fi | ||||
| done   | ||||
|  | ||||
| export PW_WINE_VER_DXVK="" | ||||
| zen_width=500 | ||||
| if [ -f "${WINEDIR}"_dxvk/version ]; then | ||||
|     read PW_WINE_VER_DXVK < "${WINEDIR}"_dxvk/version | ||||
|     PW_WINE_VER_DXVK="( wine: $PW_WINE_VER_DXVK )" | ||||
|     zen_width=1000 | ||||
| fi | ||||
| export PW_WINE_VER_VKD3D="" | ||||
| if [ -f "${WINEDIR}"_vkd3d/version ]; then | ||||
|     read PW_WINE_VER_VKD3D < "${WINEDIR}"_vkd3d/version | ||||
|     PW_WINE_VER_VKD3D="( wine: $PW_WINE_VER_VKD3D )" | ||||
|     zen_width=1000 | ||||
| fi | ||||
| ######################################################################## | ||||
| START_PORTWINE () | ||||
| { | ||||
| @@ -94,14 +116,14 @@ if [ "${PW_USE_TERMINAL}" = "1"  ]; then | ||||
| fi | ||||
| sh "${PORT_SCRIPTS_PATH}"/port_update  | ||||
| ######################################################################## | ||||
| if [ ! -d "${WINELIB}" ]; then  | ||||
| if [ ! -e "${WINELIB}/run.sh" ]; then  | ||||
|     echo "Download and install libraries..." | ||||
|     wget -c -T 2 --output-document="${HOME}/.PortWINE/tmp/libs${pw_libs_ver}.tar.xz" "${PW_FTP_URL}"/dist/libs${pw_libs_ver}.tar.xz | sszen && | ||||
|     tar -Jxvf "${HOME}/.PortWINE/tmp/libs${pw_libs_ver}.tar.xz" -C "${HOME}/.PortWINE/" | sszen && | ||||
|     rm -f "${HOME}/.PortWINE/tmp/libs${pw_libs_ver}.tar.xz" | ||||
|     "${WINELIB}"/setup.sh --force | ||||
| fi | ||||
| if [ -d "${WINELIB}" ]; then  | ||||
| if [ -e "${WINELIB}/run.sh" ]; then  | ||||
|     echo "######################################################" | ||||
|     echo "Runtime libraries is enabled" | ||||
| #    "${PW_RUNTIME}" --print-steam-runtime-library-paths | ||||
| @@ -110,112 +132,45 @@ else | ||||
|     echo "Runtime libraries is disabled" | ||||
| fi | ||||
| ######################################################################## | ||||
| export PW_WINE_VER_DXVK="" | ||||
| zen_width=500 | ||||
| if [ -f "${WINEDIR}"_dxvk/version ]; then | ||||
|     read PW_WINE_VER_DXVK < "${WINEDIR}"_dxvk/version | ||||
|     PW_WINE_VER_DXVK="     ( wine: $PW_WINE_VER_DXVK )" | ||||
|     zen_width=1000 | ||||
| fi | ||||
| export PW_WINE_VER_VKD3D="" | ||||
| if [ -f "${WINEDIR}"_vkd3d/version ]; then | ||||
|     read PW_WINE_VER_VKD3D < "${WINEDIR}"_vkd3d/version | ||||
|     PW_WINE_VER_VKD3D="  ( wine: $PW_WINE_VER_VKD3D )" | ||||
|     zen_width=1000 | ||||
| fi | ||||
| for pw_dist in "dxvk" "vkd3d" | ||||
| do | ||||
|     if [ -d "${WINEDIR}"_"${pw_dist}"/share/wine/ ]; then | ||||
|         if [ -d "${WINEDIR}"/share/wine/gecko ]; then | ||||
|             rm -fr "${WINEDIR}"_"${pw_dist}"/share/wine/gecko | ||||
|             ln -s "${WINEDIR}"/share/wine/gecko "${WINEDIR}"_"${pw_dist}"/share/wine/  | ||||
|         fi  | ||||
|         if [ -d "${WINEDIR}"/share/wine/mono ]; then | ||||
|             rm -fr "${WINEDIR}"_"${pw_dist}"/share/wine/mono | ||||
|             ln -s "${WINEDIR}"/share/wine/mono "${WINEDIR}"_"${pw_dist}"/share/wine/  | ||||
|         fi      | ||||
|     fi | ||||
| done   | ||||
| if [ ! -f "${PORT_WINE_TMP_PATH}/dxvk_on" ] | ||||
| then | ||||
|     start_settings=`zenity --title  "${ss_title}" --text "${ss_text}" --list --radiolist \ | ||||
|     --column="${inst_set}" --column "${ss_ver}" --column "${ss_dr}"  --width=$zen_width --height=220 \ | ||||
|     TRUE "DXVK ${PW_WINE_VER_DXVK}" "${ss_ogl_3}" \ | ||||
|     FALSE "VKD3D ${PW_WINE_VER_VKD3D}" "${ss_ogl_2}" `  | ||||
|     if [ $? -eq 1 ];then exit 1; fi | ||||
|     case $start_settings in | ||||
|     "VKD3D ${PW_WINE_VER_VKD3D}")  | ||||
|             echo "off" > "${PORT_WINE_TMP_PATH}/dxvk_on" ;;    | ||||
|     "DXVK ${PW_WINE_VER_DXVK}")  | ||||
|             hud_settings=`zenity --list --title  "HUD" --text "${hud_text}" --list --checklist \ | ||||
|             --column="${inst_set}" --column="HUD info:" --column="${hud_info}" --width=800 --height=550 \ | ||||
|             FALSE "fps" "${hud_fps}" \ | ||||
|             FALSE "devinfo" "${hud_devinfo}" \ | ||||
|             FALSE "frametimes" "${hud_frametimes}" \ | ||||
|             FALSE "submissions" "${hud_submissions}" \ | ||||
|             FALSE "drawcalls" "${hud_drawcalls}" \ | ||||
|             FALSE "pipelines" "${hud_pipelines}" \ | ||||
|             FALSE "memory" "${hud_memory}" \ | ||||
|             FALSE "gpuload" "${hud_gpuload}" \ | ||||
|             FALSE "version" "${hud_version}" \ | ||||
|             FALSE "api" "${hud_api}" \ | ||||
|             FALSE "compiler" "${hud_compiler}" \ | ||||
|             FALSE "samplers" "${hud_samplers}" ` | ||||
|  | ||||
|             if [ ! -z $hud_settings ]; then | ||||
|                 for hud_set in $hud_settings | ||||
|                 do | ||||
|                     echo "${hud_set}" >> "${PORT_WINE_TMP_PATH}/dxvk_on"  | ||||
|                 done   | ||||
|                 sed -i "s/|/,/g" "${PORT_WINE_TMP_PATH}/dxvk_on"  | ||||
|             else | ||||
|                 echo "0" > "${PORT_WINE_TMP_PATH}/dxvk_on" | ||||
|             fi ;; | ||||
|     esac   | ||||
| fi | ||||
|  | ||||
| if [ ! -z $dxvk_ogl_var ]; then | ||||
|     var_dxvk_on="${dxvk_ogl_var}" | ||||
| else | ||||
|     if [ ! -f "${PORT_WINE_TMP_PATH}/dxvk_on" ]; then | ||||
|         start_settings=`zenity --title  "${ss_title}" --text "${ss_text}" --list --radiolist \ | ||||
|         --column="${inst_set}" --column "${ss_ver}" --column "${ss_dr}"  --width=$zen_width --height=220 \ | ||||
|         TRUE "DXVK ${PW_WINE_VER_DXVK}" "${ss_ogl_3}" \ | ||||
|         FALSE "VKD3D ${PW_WINE_VER_VKD3D}" "${ss_ogl_2}" `  | ||||
|         if [ $? -eq 1 ];then exit 1; fi | ||||
|         case $start_settings in | ||||
|         "VKD3D ${PW_WINE_VER_VKD3D}")  | ||||
|                 echo "off" > "${PORT_WINE_TMP_PATH}/dxvk_on" ;;    | ||||
|         "DXVK ${PW_WINE_VER_DXVK}")  | ||||
|                 echo "0" > "${PORT_WINE_TMP_PATH}/dxvk_on" ;; | ||||
|         esac   | ||||
|     fi | ||||
|     read "var_dxvk_on" < "${PORT_WINE_TMP_PATH}/dxvk_on" | ||||
| fi | ||||
| export DXVK_HUD="${var_dxvk_on}" | ||||
| echo "DXVK_HUD=${DXVK_HUD}" | ||||
|  | ||||
|  | ||||
| export WINEDIR="${PORT_WINE_PATH}"/data/dist | ||||
| export WINELOADER="${WINEDIR}/bin/wine" | ||||
| export WINEDLLPATH="${WINEDIR}/lib64/wine:${WINEDIR}/lib/wine" | ||||
| export WINESERVER="${WINEDIR}/bin/wineserver" | ||||
| export PATH="${WINEDIR}/bin:${PATH}" | ||||
|  | ||||
|  | ||||
|  | ||||
| if [ "${var_dxvk_on}" != "off" ]; then | ||||
|     export PW_USE_WINED3D=0 | ||||
|     export PW_DXGI_FROM_DXVK=1 | ||||
|     export PW_DX12_DISABLED=1 | ||||
|     if [ -d "${WINEDIR}_dxvk" ]; then | ||||
|         export WINEDIR="${WINEDIR}_dxvk" | ||||
|         export WINELOADER="${WINEDIR}/bin/wine" | ||||
|         export WINEDLLPATH="${WINEDIR}/lib64/wine:${WINEDIR}/lib/wine" | ||||
|         export WINESERVER="${WINEDIR}/bin/wineserver" | ||||
|         export PATH="${WINEDIR}/bin:${PATH}" | ||||
|     fi | ||||
|     echo "Use DXVK and D9VK (DX9-DX11 to Vulkan)" | ||||
|  | ||||
| else | ||||
|     export PW_USE_WINED3D=1 | ||||
|     export PW_VKD3D_FEATURE_LEVEL=1 | ||||
|     export VKD3D_CONFIG=force_bindless_texel_buffer | ||||
|     if [ -d "${WINEDIR}_vkd3d" ]; then | ||||
|         export WINEDIR="${WINEDIR}_vkd3d" | ||||
|         export WINELOADER="${WINEDIR}/bin/wine" | ||||
|         export WINEDLLPATH="${WINEDIR}/lib64/wine:${WINEDIR}/lib/wine" | ||||
|         export WINESERVER="${WINEDIR}/bin/wineserver" | ||||
|         export PATH="${WINEDIR}/bin:${PATH}" | ||||
|     fi | ||||
|     echo "Use OpenGL and VKD3D (DX9-DX11 to OpenGL and DX12 to vulkan)" | ||||
| fi | ||||
| export WINELOADER="${WINEDIR}/bin/wine" | ||||
| export WINEDLLPATH="${WINEDIR}/lib64/wine:${WINEDIR}/lib/wine" | ||||
| export WINESERVER="${WINEDIR}/bin/wineserver" | ||||
| export PATH="${WINEDIR}/bin:${PATH}" | ||||
|  | ||||
| cp -f "${WINEDIR}"/lib/wine/fakedlls/dxgi.dll "${WINEDIR}"/lib/wine/dxgi.dll | ||||
| cp -f "${WINEDIR}"/lib64/wine/fakedlls/dxgi.dll "${WINEDIR}"/lib64/wine/dxgi.dll | ||||
| @@ -252,6 +207,7 @@ if [ ! -z "${PW_NVIDIA}" ] && [ "${check_optimus_manager}" != "intel" ]; then | ||||
|     export __GL_DXVK_OPTIMIZATIONS=1 | ||||
| else | ||||
|     export DRI_PRIME=1 | ||||
|     export VKD3D_CONFIG=force_bindless_texel_buffer | ||||
| #    export MESA_GLSL_CACHE_DIR="${PATH_TO_GAME}" | ||||
| #    export mesa_glthread=true | ||||
| fi | ||||
| @@ -290,21 +246,24 @@ sed -i '/HKCU,Software\\Valve\\Steam/d' "${WINEDIR}"*/share/wine/wine.inf && | ||||
| sed -i '/HKLM,Software\\Wow6432Node\\Valve\\Steam/d' "${WINEDIR}"*/share/wine/wine.inf && | ||||
| sed -i '/HKLM,Software\\Wow6432Node\\Valve\\Steam/d' "${WINEDIR}"*/share/wine/wine.inf && | ||||
| sed -i '/HKCR,steam\\shell\\open\\command/d' "${WINEDIR}"*/share/wine/wine.inf && | ||||
| rm -f  "${WINEDIR}"*/lib*/wine/*steam* | ||||
| sed -i '/HKCR,steam\\shell\\open\\command/d' "${WINEDIR}"*/share/wine/wine.inf && | ||||
|  | ||||
| rm -f  "${WINEDIR}"*/lib*/*steam* && | ||||
| rm -f  "${WINEDIR}"*/lib*/wine/*steam* && | ||||
| rm -f  "${WINEDIR}"*/lib*/wine/fakedlls/*steam* && | ||||
| if [ ! -d "${WINEPREFIX}" ] || [ ! -d "${WINEPREFIX}"/dosdevices ] || [ ! -d "${WINEPREFIX}"/drive_c/windows ] || [ ! -f "${WINEPREFIX}"/system.reg ] || [ ! -f "${WINEPREFIX}"/user.reg ] || [ ! -f "${WINEPREFIX}"/userdef.reg ]; then | ||||
|     export SYSTEM_LANG="${LANG}" | ||||
|     export SYSTEM_LC_ALL="${LC_ALL}" | ||||
|     export SYSTEM_LC_CTYPE="${LC_CTYPE}" | ||||
|     export LANG="en_US.UTF-8" | ||||
|     export LC_ALL="en_US.UTF-8" | ||||
|     export LC_CTYPE="en_US.UTF-8" | ||||
|     $PW_TERM "${PW_RUNTIME}"  "${WINELOADER}" wineboot -u | ||||
|     export LANG="${SYSTEM_LANG}" | ||||
|     export LC_ALL="${SYSTEM_LC_ALL}" | ||||
|     export LC_CTYPE="${SYSTEM_LC_CTYPE}" | ||||
|     if [ ! -z "$(cat /etc/locale.gen | grep "^en_US.UTF-8")" ]; then  | ||||
|     export PW_LANG_OS="${LANG}" | ||||
|     export LANG=en_US.UTF-8 | ||||
|     fi | ||||
|     $PW_TERM "${PW_RUNTIME}"  "${WINELOADER}" wineboot -u && | ||||
|     export LANG="${PW_LANG_OS}" | ||||
| fi | ||||
| rm -f "${WINEPREFIX}/drive_c/windows/system32"/steam* | ||||
| rm -f "${WINEPREFIX}/drive_c/windows/syswow64"/steam* | ||||
| sed -i '/steamclient/d' "${WINEPREFIX}"/*.reg && | ||||
| sed -i '/SteamPath/d' "${WINEPREFIX}"/*.reg && | ||||
|  | ||||
| rm -f "${WINEPREFIX}/drive_c/windows/system32"/steam* && | ||||
| rm -f "${WINEPREFIX}/drive_c/windows/syswow64"/steam* && | ||||
| ######################################################################## | ||||
| #if [ ! -f "${PORT_WINE_TMP_PATH}/init_run_suc" ]; then | ||||
| #    "${PW_RUNTIME}" "${port_on_run}" "init_run" | ||||
| @@ -330,6 +289,14 @@ while [ $(pgrep wineserver)>'0' ]; do | ||||
| done | ||||
| } | ||||
| ######################################################################## | ||||
| KILL_PORTWINE ()  | ||||
| { | ||||
| wine_pids=$(ls -l /proc/*/exe 2>/dev/null | grep -ie ${portname} | grep -E 'wine(64)?-preloader|wineserver' | awk -F/ '{print $3}') #modded by Cefeiko | ||||
| if  ! [ -z "${wine_pids}" ] ; then  | ||||
|     kill -9 ${wine_pids}  | ||||
| fi | ||||
| } | ||||
| ######################################################################## | ||||
| STOP_PORTWINE () | ||||
| { | ||||
| WAIT_WINESERVER | ||||
| @@ -340,7 +307,6 @@ fi | ||||
| if [ ! -z ${PW_XKBD} ]; then | ||||
|     setxkbmap ${PW_XKBD} | ||||
| fi | ||||
| #killall -r -s9 winedevice  | ||||
| rm -f "${PORT_WINE_PATH}"/0 | ||||
| rm -f "${PORT_SCRIPTS_PATH}"/0 | ||||
| } | ||||
|   | ||||
							
								
								
									
										88
									
								
								data_from_portwine/scripts/settings.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										88
									
								
								data_from_portwine/scripts/settings.sh
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,88 @@ | ||||
| #!/bin/bash | ||||
| # Author: PortWINE-Linux.ru | ||||
| ########################## | ||||
| . "$(dirname $(readlink -f "$0"))/runlib" | ||||
| KILL_PORTWINE | ||||
| ########################## | ||||
| PW_WINECFG () | ||||
| { | ||||
| START_PORTWINE | ||||
| $PW_TERM "${PW_RUNTIME}" "${port_on_run}" "run" "winecfg" | ||||
| }  | ||||
| ########################## | ||||
| PW_WINEFILE () | ||||
| { | ||||
| START_PORTWINE | ||||
| cd "${WINEPREFIX}/drive_c/" | ||||
| if [ ! -z ${optirun_on} ] | ||||
| then | ||||
|     $PW_TERM "${PW_RUNTIME}" ${optirun_on} "${port_on_run}" "run" "explorer"  | ||||
| else | ||||
|     $PW_TERM "${PW_RUNTIME}" "${port_on_run}" "run" "explorer"  | ||||
| fi | ||||
| } | ||||
| ########################## | ||||
| PW_WINECMD () | ||||
| { | ||||
| export PW_USE_TERMINAL=1 | ||||
| START_PORTWINE | ||||
| if [ ! -z ${optirun_on} ] | ||||
| then | ||||
|     $PW_TERM "${PW_RUNTIME}" "${optirun_on}" "${port_on_run}" "run" "cmd" | ||||
| else | ||||
|     $PW_TERM "${PW_RUNTIME}" "${port_on_run}" "run" "cmd" | ||||
| fi | ||||
| } | ||||
| ########################## | ||||
| PW_WINEREG () | ||||
| { | ||||
| START_PORTWINE | ||||
| $PW_TERM "${PW_RUNTIME}" "${port_on_run}" "run" "regedit" | ||||
| } | ||||
| ########################## | ||||
| PW_WINETRICKS () | ||||
| { | ||||
| W_TRX_URL="https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks" | ||||
| W_TRX_EXT_VER="$(curl -s --list-only ${W_TRX_URL} | grep -i 'WINETRICKS_VERSION=' | sed 's/WINETRICKS_VERSION=//')" | ||||
| if  ! [[ -f "${PORT_WINE_TMP_PATH}/winetricks" ]]  | ||||
| then | ||||
|     wget -T 3 --output-document=${PORT_WINE_TMP_PATH}/winetricks ${W_TRX_URL} | ||||
|     chmod u+x "${PORT_WINE_TMP_PATH}/winetricks" | ||||
| else | ||||
| W_TRX_INT_VER="$(cat "${PORT_WINE_TMP_PATH}/winetricks" | grep -i 'WINETRICKS_VERSION=' | sed 's/WINETRICKS_VERSION=//')" | ||||
|         if  [[ $W_TRX_INT_VER != $W_TRX_EXT_VER ]] | ||||
|         then | ||||
|             rm -f "${PORT_WINE_TMP_PATH}/winetricks" | ||||
|             wget -T 3 --output-document=${PORT_WINE_TMP_PATH}/winetricks ${W_TRX_URL} | ||||
|             chmod u+x "${PORT_WINE_TMP_PATH}/winetricks" | ||||
|         fi | ||||
| fi #modded by Cefeiko | ||||
| export PW_USE_TERMINAL=1 | ||||
| START_PORTWINE | ||||
| $PW_TERM "${PW_RUNTIME}" "${PORT_WINE_TMP_PATH}/winetricks" -q --force | ||||
| } | ||||
| ########################## | ||||
| OUTPUT=$(yad --form \ | ||||
| --title "SETTINGS"  --image "winecfg" --separator=";" \ | ||||
| --field="WINE:CB" "DXVK ${PW_WINE_VER_DXVK}"!"VKD3D ${PW_WINE_VER_VKD3D}" \ | ||||
| --button='WINECFG'!winecfg!"Run winecfg for $portname":100 \ | ||||
| --button='WINEFILE'!winecfg!'проверка подсказки1':102 \ | ||||
| --button='WINECMD'!winecfg!'проверка подсказки2':104 \ | ||||
| --button='WINEREG'!winecfg!'проверка подсказки3':106 \ | ||||
| --button='WINETRICKS'!winecfg!'проверка подсказки4 - бла бла бла бла бла ла ла ла =)':108 ) | ||||
| PW_YAD_SET="$?" | ||||
| export VULKAN_MOD=$(echo $OUTPUT | awk 'BEGIN {FS=";" } { print $1 }') | ||||
| if [ "${VULKAN_MOD}" = "DXVK ${PW_WINE_VER_DXVK}" ]; then | ||||
|     echo "0" > "${PORT_WINE_TMP_PATH}/dxvk_on" | ||||
| else | ||||
|     echo "off" > "${PORT_WINE_TMP_PATH}/dxvk_on"     | ||||
| fi | ||||
| case "$PW_YAD_SET" in | ||||
|     100) PW_WINECFG ;; | ||||
|     102) PW_WINEFILE ;; | ||||
|     104) PW_WINECMD ;; | ||||
|     106) PW_WINEREG ;; | ||||
|     108) PW_WINETRICKS ;; | ||||
| esac | ||||
| ########################## | ||||
| STOP_PORTWINE | ||||
| @@ -7,11 +7,17 @@ rm -f "${PORT_WINE_TMP_PATH}/update_notifier" | ||||
| rm -f "${PORT_WINE_TMP_PATH}/init_run_suc" | ||||
| rm -fr "${PORT_WINE_PATH}/data/pfx/dosdevices"  | ||||
|  | ||||
| if [ -d "${PORT_WINE_PATH}/Settings" ]; then | ||||
| 	rm -fr "${PORT_WINE_PATH}/Settings" | ||||
| fi | ||||
|  | ||||
| if [ ! -d "/home/${USER}/.local/share/applications" ] | ||||
| then | ||||
| 	mkdir -p "/home/${USER}/.local/share/applications" | ||||
| fi | ||||
|  | ||||
|  | ||||
|  | ||||
| if [ ! -z "${gamename}" ]; then | ||||
| 	name_desktop="${gamename}"  | ||||
| 	echo "[Desktop Entry]"	 				  > "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| @@ -25,7 +31,7 @@ if [ ! -z "${gamename}" ]; then | ||||
| 	chmod u+x "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| 	cp -f "${PORT_WINE_PATH}/${name_desktop}.desktop" /home/${USER}/.local/share/applications/  | ||||
| else | ||||
|     name_desktop="PortProton"  | ||||
| 	name_desktop="PortProton"  | ||||
| 	echo "[Desktop Entry]"	 				  > "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| 	echo "Name=${name_desktop}" 				 >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| 	echo "Exec=env "${PORT_SCRIPTS_PATH}/portproton.sh %U""	 >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| @@ -37,6 +43,20 @@ else | ||||
| 	echo "Icon="${PORT_WINE_PATH}/data/img/w.png""   	 >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| 	chmod u+x "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| 	cp -f "${PORT_WINE_PATH}/${name_desktop}.desktop" /home/${USER}/.local/share/applications/  | ||||
|  | ||||
|     name_desktop="Create_shortcut_PP"  | ||||
| 	echo "[Desktop Entry]"	 				  > "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| 	echo "Name=${name_desktop}" 				 >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| 	echo "Exec=env "${PORT_SCRIPTS_PATH}/create_shortcut %U""	 >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| 	echo "Type=Application" 				 >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| 	echo "Categories=Game"	    				 >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| 	echo "StartupNotify=true" 	    			 >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| 	echo "MimeType=application/x-ms-dos-executable;application/x-wine-extension-msp;"  >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| 	echo "Path="${PORT_SCRIPTS_PATH}/""		 >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| 	echo "Icon="${PORT_WINE_PATH}/data/img/w.png""   	 >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| 	echo "NoDisplay=true"   	 >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| 	chmod u+x "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| 	cp -f "${PORT_WINE_PATH}/${name_desktop}.desktop" /home/${USER}/.local/share/applications/ | ||||
| fi | ||||
|  | ||||
| name_desktop="readme"  | ||||
| @@ -48,22 +68,6 @@ echo "Icon="${PORT_WINE_PATH}/data/img/readme.png""	>> "${PORT_WINE_PATH}/${name | ||||
| echo "URL=${urlg}" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| chmod u+x "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|  | ||||
| rm -fR "${PORT_WINE_PATH}/Settings" | ||||
| mkdir -p "${PORT_WINE_PATH}/Settings" | ||||
|  | ||||
| for name_desktop in "winecfg" "winefile" "winecmd" "winereg" "create_shortcut" | ||||
| do | ||||
| echo ""[Desktop Entry]" | ||||
| "Name=${name_desktop}" | ||||
| "Exec=sh "${PORT_SCRIPTS_PATH}/${name_desktop}"" | ||||
| "Type=Application" | ||||
| "Categories=Game" | ||||
| "StartupNotify=true" | ||||
| "Path="${PORT_SCRIPTS_PATH}/"" | ||||
| "Icon="${PORT_WINE_PATH}/data/img/s.png""" > "${PORT_WINE_PATH}/Settings/${name_desktop}.desktop" | ||||
| chmod u+x "${PORT_WINE_PATH}/Settings/${name_desktop}.desktop" | ||||
| done | ||||
|  | ||||
| for name_desktop in "debug" "reset" | ||||
| do | ||||
| 	echo ""[Desktop Entry]" | ||||
| @@ -77,25 +81,16 @@ do | ||||
| 	chmod u+x "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| done | ||||
|  | ||||
| echo ""[Desktop Entry]" | ||||
| "Name=winetricks" | ||||
| "Exec=sh "${PORT_SCRIPTS_PATH}/remove"" | ||||
| name_desktop="settings.sh" | ||||
| echo ""settings" | ||||
| "Name=settings" | ||||
| "Exec=sh "${PORT_SCRIPTS_PATH}/${name_desktop}"" | ||||
| "Type=Application" | ||||
| "Categories=Game" | ||||
| "StartupNotify=true" | ||||
| "Path="${PORT_SCRIPTS_PATH}/"" | ||||
| "Icon="${PORT_WINE_PATH}/data/img/rm.png""" > "${PORT_WINE_PATH}/Settings/remove.desktop" | ||||
| chmod u+x "${PORT_WINE_PATH}/Settings/remove.desktop" | ||||
|  | ||||
| echo ""[Desktop Entry]" | ||||
| "Name=winetricks" | ||||
| "Exec=sh "${PORT_SCRIPTS_PATH}/winetricks-q-force"" | ||||
| "Type=Application" | ||||
| "Categories=Game" | ||||
| "StartupNotify=true" | ||||
| "Path="${PORT_SCRIPTS_PATH}/"" | ||||
| "Icon="${PORT_WINE_PATH}/data/img/s.png""" > "${PORT_WINE_PATH}/Settings/winetricks.desktop" | ||||
| chmod u+x "${PORT_WINE_PATH}/Settings/winetricks.desktop" | ||||
| "Icon="${PORT_WINE_PATH}/data/img/s.png""" > "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
| chmod u+x "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|  | ||||
| chmod u+x "${PORT_SCRIPTS_PATH}/"* | ||||
|  | ||||
| @@ -103,6 +98,14 @@ if [ ! -d "${PORT_WINE_PATH}/drive_c" ]; then | ||||
| 	ln -s "${PORT_WINE_PATH}/data/pfx/drive_c/" "${PORT_WINE_PATH}/drive_c" | ||||
| fi | ||||
|  | ||||
| if [ -d "${PORT_WINE_PATH}/data/pfx/drive_c/users/Public" ] && [ ! -L "${PORT_WINE_PATH}/data/pfx/drive_c/users/Public" ]; then | ||||
| 	cp -fr "${PORT_WINE_PATH}/data/pfx/drive_c/users/Public"/* "${PORT_WINE_PATH}/data/pfx/drive_c/users/steamuser/" | ||||
| 	rm -fr "${PORT_WINE_PATH}/data/pfx/drive_c/users/Public" | ||||
| elif [ -L "${PORT_WINE_PATH}/data/pfx/drive_c/users/Public" ]; then | ||||
| 	rm -fr "${PORT_WINE_PATH}/data/pfx/drive_c/users/Public" | ||||
| fi | ||||
| ln -s "${PORT_WINE_PATH}/data/pfx/drive_c/users/steamuser" "${PORT_WINE_PATH}/data/pfx/drive_c/users/Public" | ||||
|  | ||||
| if [ ! -d "${PORT_WINE_PATH}/data/pfx/drive_c/users/${USER}" ]; then | ||||
| 	ln -s "${PORT_WINE_PATH}/data/pfx/drive_c/users/steamuser" "${PORT_WINE_PATH}/data/pfx/drive_c/users/${USER}" | ||||
| fi | ||||
|   | ||||
| @@ -1,21 +1,20 @@ | ||||
| #!/bin/bash | ||||
| # Author: PortWINE-Linux.ru | ||||
| . "$(dirname $(readlink -f "$0"))/runlib" | ||||
| # "${WINESERVER}" -k | ||||
| START_PORTWINE | ||||
|  | ||||
| if [ ! -z "$1" ]; then | ||||
|     KILL_PORTWINE | ||||
|     START_PORTWINE | ||||
|     if [ ! -z $optirun_on ]; then | ||||
|         $PW_TERM "${PW_RUNTIME}" ${optirun_on} "${port_on_run}" "run" "$1" | ||||
|         $PW_TERM "${PW_RUNTIME}" ${optirun_on} "${port_on_run}" "run" "$1" ${launch_parameters}  | ||||
|     else | ||||
|         $PW_TERM "${PW_RUNTIME}" "${port_on_run}" "run" "$1" | ||||
|         $PW_TERM "${PW_RUNTIME}" "${port_on_run}" "run" "$1" ${launch_parameters}  | ||||
|     fi | ||||
| else   | ||||
| else  | ||||
|     START_PORTWINE | ||||
|     if [ ! -z $optirun_on ]; then | ||||
|         $PW_TERM "${PW_RUNTIME}" ${optirun_on} "${port_on_run}" "run" "${gamestart}" ${launch_parameters}  | ||||
|     else | ||||
|         $PW_TERM "${PW_RUNTIME}" "${port_on_run}" "run" "${gamestart}" ${launch_parameters} | ||||
|     fi | ||||
| fi | ||||
|  | ||||
| STOP_PORTWINE | ||||
							
								
								
									
										47
									
								
								data_from_portwine/scripts/vars/PortOSU_vars
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										47
									
								
								data_from_portwine/scripts/vars/PortOSU_vars
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,47 @@ | ||||
| #!/bin/bash | ||||
| # License GPL | ||||
| # Author: Tergoev M.A. | ||||
| ######################################################################## | ||||
| export portname="PortOSU" | ||||
| export gamename="OSU!" | ||||
| export gamedir="osu!" | ||||
| export porturl="http://portwine-linux.ru/osu-linux/" | ||||
| if [ ! -z ${gamedir} ]; then | ||||
|     export PATH_TO_GAME="${PORT_WINE_PATH}/data/pfx/drive_c/Program Files (x86)/${gamedir}" | ||||
| fi | ||||
| export gamestart="${PATH_TO_GAME}/osu!.exe" | ||||
| ######################################################################## | ||||
| #export MESA_GL_VERSION_OVERRIDE=4.4COMPAT | ||||
| export WINEDLLOVERRIDES="" | ||||
| export PW_LOG=0             # Enable debug mode fo terminal  | ||||
| export PW_NO_FSYNC=0        # 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_DXVK_ASYNC=0 | ||||
| export PW_USE_TERMINAL=0 | ||||
| export PW_OLD_GL_STRING=0 | ||||
| export PW_NVAPI_DISABLE=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=0         # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ||||
| export PW_WINEDBG_DISABLE=1 | ||||
| export PW_FORCE_DISABLED_GAMEMOD=0              # Force disabele gamemod | ||||
| export PW_FORCE_LARGE_ADDRESS_AWARE=0           # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. | ||||
| export PULSE_LATENCY_MSEC=40 | ||||
| #export MANGOHUD=1 | ||||
| ######################################################################## | ||||
| ADD_IN_START_PORTWINE () | ||||
| { | ||||
| export launch_parameters="" | ||||
| export STAGING_AUDIO_DURATION=5000 | ||||
| cd "${PATH_TO_GAME}" | ||||
| } | ||||
| ######################################################################## | ||||
| ADD_IN_STOP_PORTWINE () | ||||
| {	 | ||||
| echo " " | ||||
| } | ||||
| ######################################################################## | ||||
| ADD_IN_POST_INSTALL () | ||||
| { | ||||
| echo " " | ||||
| } | ||||
| @@ -11,23 +11,23 @@ export gamestart="${PATH_TO_GAME}/.exe" | ||||
| export porturl="http://portwine-linux.ru/" | ||||
| ######################################################################## | ||||
| #export MESA_GL_VERSION_OVERRIDE=4.4COMPAT | ||||
| export WINEDLLOVERRIDES="winemenubuilder.exe=d" | ||||
| export WINEDLLOVERRIDES="" | ||||
| export PW_LOG=0             # Enable debug mode fo terminal  | ||||
| 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_FSYNC=0        # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||
| export PW_NO_ESYNC=1        # Do not use eventfd-based in-process synchronization primitives | ||||
| export PW_DXVK_ASYNC=1 | ||||
| export PW_DXVK_ASYNC=0 | ||||
| export PW_USE_TERMINAL=0 | ||||
| export PW_OLD_GL_STRING=0 | ||||
| export PW_NO_WINEMFPLAY=0 | ||||
| export PW_NVAPI_DISABLE=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 | ||||
| export PW_FORCE_USE_VSYNC=2         # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ||||
| export PW_WINEDBG_DISABLE=0 | ||||
| export PW_WINEDBG_DISABLE=1 | ||||
| export PW_FORCE_DISABLED_GAMEMOD=0              # Force disabele gamemod | ||||
| export PW_FORCE_LARGE_ADDRESS_AWARE=1           # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. | ||||
| export PULSE_LATENCY_MSEC=60 | ||||
| #export MANGOHUD=1 | ||||
| #export DXVK_HUD=fps,devinfo | ||||
| ######################################################################## | ||||
| ADD_IN_START_PORTWINE () | ||||
| { | ||||
|   | ||||
| @@ -1,13 +0,0 @@ | ||||
| #!/bin/bash | ||||
| # Author: PortWINE-Linux.ru | ||||
| . "$(dirname $(readlink -f "$0"))/runlib" | ||||
| "${WINESERVER}" -k | ||||
| START_PORTWINE | ||||
| PW_LOG=1 | ||||
| if [ ! -z ${optirun_on} ] | ||||
| then | ||||
|     $PW_TERM "${PW_RUNTIME}" ${optirun_on} "${port_on_run}" "run" "winecfg" >&2 | ||||
| else | ||||
|     $PW_TERM "${PW_RUNTIME}" "${port_on_run}" "run" "winecfg" >&2 | ||||
| fi | ||||
| STOP_PORTWINE | ||||
| @@ -1,12 +0,0 @@ | ||||
| #!/bin/bash | ||||
| # Author: PortWINE-Linux.ru | ||||
| . "$(dirname $(readlink -f "$0"))/runlib" | ||||
| export PW_LOG=1 | ||||
| START_PORTWINE | ||||
| if [ ! -z ${optirun_on} ] | ||||
| then | ||||
|     $PW_TERM '${PW_RUNTIME}" "${optirun_on}" "${port_on_run}" "run" "cmd"' | ||||
| else | ||||
|     $PW_TERM '${PW_RUNTIME}" "${port_on_run}" "run" "cmd"' | ||||
| fi | ||||
| STOP_PORTWINE | ||||
| @@ -1,13 +0,0 @@ | ||||
| #!/bin/bash | ||||
| # Author: PortWINE-Linux.ru | ||||
| . "$(dirname $(readlink -f "$0"))/runlib" | ||||
| "${WINESERVER}" -k | ||||
| START_PORTWINE | ||||
| cd "${WINEPREFIX}/drive_c/" | ||||
| if [ ! -z ${optirun_on} ] | ||||
| then | ||||
|     $PW_TERM "${PW_RUNTIME}" ${optirun_on} "${port_on_run}" "run" "explorer"  | ||||
| else | ||||
|     $PW_TERM "${PW_RUNTIME}" "${port_on_run}" "run" "explorer"  | ||||
| fi | ||||
| STOP_PORTWINE  | ||||
| @@ -1,7 +0,0 @@ | ||||
| #!/bin/bash | ||||
| # Author: PortWINE-Linux.ru | ||||
| . "$(dirname $(readlink -f "$0"))/runlib" | ||||
| "${WINESERVER}" -k | ||||
| START_PORTWINE | ||||
| $PW_TERM "${PW_RUNTIME}" "${port_on_run}" "run" "regedit" | ||||
| STOP_PORTWINE | ||||
| @@ -1,17 +0,0 @@ | ||||
| #!/bin/bash | ||||
| # Author: PortWINE-Linux.ru | ||||
| . "$(dirname "`readlink -f "$0"`")"/runlib | ||||
| "${WINESERVER}" -k | ||||
| wine_pids=$(ls -l /proc/*/exe 2>/dev/null | grep -E 'wine(64)?-preloader|wineserver' | perl -pe 's;^.*/proc/(\d+)/exe.*$;$1;g;') | ||||
| if ! [ -z "${wine_pids}" ] ; then | ||||
|     kill -9 ${wine_pids} | ||||
| fi | ||||
| if [ -f "${PORT_WINE_TMP_PATH}"/winetricks ]; then | ||||
|     rm -f "${PORT_WINE_TMP_PATH}"/winetricks | ||||
| fi | ||||
| wget -T 3 --output-document=${PORT_WINE_TMP_PATH}/winetricks https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks | ||||
| chmod +x "${PORT_WINE_TMP_PATH}/winetricks" | ||||
| export PW_USE_TERMINAL=1 | ||||
| START_PORTWINE | ||||
| $PW_TERM "${PW_RUNTIME}"  "${PORT_WINE_TMP_PATH}/winetricks" -q --force | ||||
| STOP_PORTWINE | ||||
		Reference in New Issue
	
	Block a user