###Scripts version 2035###

This commit is contained in:
castro-fidel
2021-10-24 13:20:45 +03:00
parent 74fcce0427
commit 1e0d6fea99
6 changed files with 142 additions and 121 deletions

View File

@ -23,10 +23,9 @@ fi
start_portwine () {
pw_check_and_download_wine "${PW_WINE_USE}"
init_wine_ver
init_wine_ver
pw_download_mono
pw_download_gecko
pw_tray_icon &
if [ -x "`which konsole 2>/dev/null`" ]; then export PW_TERM="konsole --nofork -e"
# elif [ -x "`which gnome-terminal 2>/dev/null`" ]; then export PW_TERM="gnome-terminal -- /bin/bash" ???
elif [ -x "`which lxterminal 2>/dev/null`" ]; then export PW_TERM="lxterminal -e"
@ -37,8 +36,24 @@ start_portwine () {
cp -f "${PORT_SCRIPTS_PATH}/.Xresources" "${HOME}"
xrdb -merge "${HOME}/.Xresources"
fi
pw_tray_icon
pw_start_progress_bar_block "Update prefix for ${PW_WINE_USE}... Please wait..."
pw_start_progress_bar_block "Start ${portname}... Please wait..."
if [[ ! -z "${LD_LIBRARY_PATH}" ]] ; then
if [[ -z "`echo ${LD_LIBRARY_PATH} | grep "${WINEDIR}/lib64:${WINEDIR}/lib"`" ]] ; then
export LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib:${LD_LIBRARY_PATH}"
fi
else
export LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib"
fi
if [ ! -z ${PATH_TMP} ]
then export PATH="${PATH_TMP}"
else export PATH_TMP="${PATH}"
fi
if [ ! -z "${PATH}" ]
then export PATH="${WINEDIR}/bin:${PATH}"
else export PATH="${WINEDIR}/bin"
fi
if [ "${PW_USE_GSTREAMER}" = 1 ] ; then
if [ -d "${WINEDIR}/lib64/gstreamer-1.0" ] ; then
@ -154,7 +169,7 @@ start_portwine () {
export RADV_DEBUG="llvm"
var_vkd3d_config_update single_queue
fi
if [[ ! -z "${PW_USE_NVAPI_AND_DLSS_AND_DLSS}" && "${PW_USE_NVAPI_AND_DLSS_AND_DLSS}" == 1 && -d "${WINEDIR}/lib/wine/nvapi/" ]]
if [[ ! -z "${PW_USE_NVAPI_AND_DLSS}" && "${PW_USE_NVAPI_AND_DLSS}" == 1 && -d "${WINEDIR}/lib/wine/nvapi/" ]]
then
try_copy_file "${WINEDIR}/lib/wine/nvapi/nvapi.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
try_copy_file "${WINEDIR}/lib64/wine/nvapi/nvapi64.dll" "${WINEPREFIX}/drive_c/windows/system32/"
@ -220,7 +235,7 @@ start_portwine () {
esac
export DXVK_CONFIG_FILE="${PORT_WINE_PATH}/data/dxvk.conf"
export int_xneur=0
if [ $(pgrep xneur)>'0' ]; then
if [[ ! -z "`pgrep xneur`" ]]; then
killall xneur
export int_xneur=1
fi
@ -237,10 +252,14 @@ start_portwine () {
export PW_GAMEMODERUN=0
echo "Gamemod is not installed or disabled in vars script or db file: PW_USE_GAMEMODE=$PW_USE_GAMEMODE"
fi
pw_vkbasalt_check
pw_other_fixes
#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 || \
-z "`cat ${WINEPREFIX}/.wine_ver | grep ${PW_WINE_USE}`" ]]
then
pw_clear_pfx
# pw_clear_pfx
create_new_dir "${WINEPREFIX}"
create_new_dir "${WINEPREFIX}/drive_c"
create_new_dir "${WINEPREFIX}/dosdevices"
@ -254,15 +273,12 @@ start_portwine () {
try_copy_file "${WINEDIR}/share/fonts/"LiberationSerif-Regular.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"times.ttf
try_copy_file "${WINEDIR}/share/fonts/"LiberationMono-Regular.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"cour.ttf
try_copy_file "${WINEDIR}/share/fonts/"SourceHanSansSCRegular.otf "${WINEPREFIX}/drive_c/windows/Fonts/"msyh.ttf
pw_stop_progress_bar
pw_start_progress_bar_block "Updating prefix... Please wait..."
kill_portwine
${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" wineboot -u
wait_wineserver
kill_portwine
# kill_portwine &&
${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" wineboot -i
wait_wineserver &&
# kill_portwine &&
echo "${PW_WINE_USE}" > "${WINEPREFIX}/.wine_ver"
fi
pw_stop_progress_bar
pw_start_progress_bar_cs "Initialization prefix..."
[ ! -d "${WINEPREFIX}/dosdevices/c:" ] && try_force_link_dir "${WINEPREFIX}/drive_c/" "${WINEPREFIX}/dosdevices/c:"
[ ! -d "${WINEPREFIX}/dosdevices/z:" ] && try_force_link_dir "/" "${WINEPREFIX}/dosdevices/z:"
create_new_dir "${WINEPREFIX}/drive_c/users/steamuser"
@ -310,7 +326,7 @@ start_portwine () {
done
var_winedlloverride_update "d3d11,d3d10,d3d10core,d3d10_1,d3d9,dxgi=b"
elif [ "${PW_VULKAN_USE}" = "1" ] ; then
echo "Use VKD3D-PROTON and DXVK (DX12 to vulkan)"
echo "Use VKD3D-PROTON and DXVK (DX 9-12 to vulkan)"
export CP_DXVK_FILES="d3d11 d3d10 d3d10core d3d10_1 d3d9"
echo "Try copy native DXVK files"
for wine_dxvk_dll in ${CP_DXVK_FILES} ; do
@ -344,9 +360,7 @@ start_portwine () {
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
if [ ! -z "${PW_MUST_HAVE_DLL}" ]
then export PW_DLL_INSTALL="${PW_MUST_HAVE_DLL} ${PW_DLL_INSTALL}"
fi
@ -375,13 +389,13 @@ start_portwine () {
fi
done
if [ "${USE_WT_FROM_DB}" == "1" ] ; then
pw_stop_progress_bar
update_winetricks
print_info "Try to install DLL in prefix: ${PW_DLL_NEED_INSTALL}"
chmod -R 775 "${HOME}/.cache/winetricks"
if [ "${PW_WINE_VER}" != "PROTON_STEAM" ] ; then
export PW_WINE_VER_FROM_DB="${PW_WINE_USE}"
export PW_WINE_VER="PROTON_STEAM"
init_wine_ver
init_wine_ver &&
cabextract_fix
fi
${pw_runtime} xterm -e env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" \
@ -398,11 +412,11 @@ start_portwine () {
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&/'`
wait_wineserver &&
echo "Set to win${PW_WINDOWS_VER}"
wait_wineserver
fi
add_in_start_portwine
pw_stop_progress_bar
pw_stop_progress_bar &&
pw_start_progress_bar_cs "Start ${portname}... Please wait..."
}
@ -416,7 +430,6 @@ pw_run () {
cd "${WINEPREFIX}/drive_c"
fi
pw_mangohud_check
pw_vkbasalt_check
print_var "WINEDIR" "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"
@ -437,6 +450,7 @@ pw_run () {
${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}
fi
fi
stop_portwine
}
###MAIN###
@ -469,16 +483,9 @@ fi
create_new_dir "${PORT_WINE_TMP_PATH}"/gecko
create_new_dir "${PORT_WINE_TMP_PATH}"/mono
if [ -d "${HOME}/.PortWINE/" ] ; then
try_remove_dir "${HOME}/.PortWINE/tmp"
mv -f "${HOME}/.PortWINE"/* "${PORT_WINE_TMP_PATH}"
try_remove_dir "${HOME}/.PortWINE/"
fi
cd "${PORT_SCRIPTS_PATH}"
. "${PORT_SCRIPTS_PATH}/var"
[ -f "${PORT_SCRIPTS_PATH}/autoinstall" ] && try_remove_file "${PORT_SCRIPTS_PATH}/autoinstall"
if [ ! -f "${PORT_WINE_TMP_PATH}/${portname}_loc" ] ; then
SET_LANG=`zenity --title "Install $portname" --text "Select the language" --list --radiolist \
--column="Set:" --column "Language:" TRUE "RUS" FALSE "ENG" `