Scripts version 2262
This commit is contained in:
parent
cc3fdaf86a
commit
1280cb9ac5
@ -2,6 +2,17 @@ You can help us in the development of the project on the website: https://linux-
|
|||||||
----------------------------------------
|
----------------------------------------
|
||||||
Changelog:
|
Changelog:
|
||||||
|
|
||||||
|
###Scripts version 2262### Date: 14.03.2024 / Download update size: 230 megabytes
|
||||||
|
* added a warning when starting the second PortProton session
|
||||||
|
* added the ability to disable the container
|
||||||
|
* added the ability to use system WINE
|
||||||
|
* updated PROTON_LG to version 9-1
|
||||||
|
* updated versions:
|
||||||
|
DXVK_GIT "2.3-90"
|
||||||
|
VKD3D_GIT "1.1-3954"
|
||||||
|
* fixed installation of libraries from the prefix manager on openSUSE OS (thanks to Boria138)
|
||||||
|
* a separate version of PROTON is no longer required for Black Desert Online
|
||||||
|
|
||||||
###Scripts version 2261### Date: 07.03.2024 / Download update size: 15 megabytes
|
###Scripts version 2261### Date: 07.03.2024 / Download update size: 15 megabytes
|
||||||
* HOTFIX - use settings from Black Desert Online launcher
|
* HOTFIX - use settings from Black Desert Online launcher
|
||||||
|
|
||||||
|
@ -2,10 +2,15 @@
|
|||||||
-----------------------------------------
|
-----------------------------------------
|
||||||
История изменений:
|
История изменений:
|
||||||
|
|
||||||
|
###Scripts version 2262### Дата: 14.03.2024 / Размер скачиваемого обновления: 230 мегабайт
|
||||||
|
* добавлено предупреждение при запуске второй сессии PortProton
|
||||||
|
* добавлена возможность отключения контейнера
|
||||||
|
* добавлена возможность использования системного WINE
|
||||||
* обновлен PROTON_LG до версии 9-1
|
* обновлен PROTON_LG до версии 9-1
|
||||||
* обновлены версии:
|
* обновлены версии:
|
||||||
DXVK_GIT "2.3-90"
|
DXVK_GIT "2.3-90"
|
||||||
VKD3D_GIT "1.1-3954"
|
VKD3D_GIT "1.1-3954"
|
||||||
|
* исправлена установка библиотек из префикс менеджера на ОС "OpenSUSE" (спасибо Boria138)
|
||||||
* для Black Desert Online более не требуется отдельной версии PROTON
|
* для Black Desert Online более не требуется отдельной версии PROTON
|
||||||
|
|
||||||
###Scripts version 2261### Дата: 07.03.2024 / Размер скачиваемого обновления: 15 мегабайт
|
###Scripts version 2261### Дата: 07.03.2024 / Размер скачиваемого обновления: 15 мегабайт
|
||||||
|
@ -411,7 +411,16 @@ check_user_conf () {
|
|||||||
}
|
}
|
||||||
|
|
||||||
init_wine_ver () {
|
init_wine_ver () {
|
||||||
if [[ -d "${PORT_WINE_PATH}/data/dist" ]] ; then
|
if [[ "${PW_WINE_USE}" == "USE_SYSTEM_WINE" ]] \
|
||||||
|
&& command -v wine &>/dev/null ; then
|
||||||
|
export WINEDIR="$RT_PREFIX/usr"
|
||||||
|
export WINE="$RT_PREFIX/$(command -v wine)"
|
||||||
|
export WINELOADER="$WINE"
|
||||||
|
export WINESERVER="$RT_PREFIX/$(command -v wineserver)"
|
||||||
|
export PW_USE_RUNTIME=0
|
||||||
|
export PW_NO_FSYNC=1
|
||||||
|
else
|
||||||
|
if [[ -d "${PORT_WINE_PATH}/data/dist" ]] ; then
|
||||||
orig_IFS="$IFS"
|
orig_IFS="$IFS"
|
||||||
IFS=$'\n'
|
IFS=$'\n'
|
||||||
for dist_dir in $(ls -1 "${PORT_WINE_PATH}/data/dist/") ; do
|
for dist_dir in $(ls -1 "${PORT_WINE_PATH}/data/dist/") ; do
|
||||||
@ -421,93 +430,113 @@ init_wine_ver () {
|
|||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
IFS="$orig_IFS"
|
IFS="$orig_IFS"
|
||||||
fi
|
|
||||||
if [[ -z `ls "${PORT_WINE_PATH}/data/dist/" | grep "${PW_WINE_USE}"` ]] ; then
|
|
||||||
if [[ "$PW_WINE_USE" =~ PROTON_LG* ]]
|
|
||||||
then export PW_WINE_USE=PROTON_LG
|
|
||||||
else export PW_WINE_USE=WINE_LG
|
|
||||||
fi
|
fi
|
||||||
fi
|
if [[ -z `ls "${PORT_WINE_PATH}/data/dist/" | grep "${PW_WINE_USE}"` ]] ; then
|
||||||
if [[ "$PW_WINE_USE" == PROTON_LG ]]
|
if [[ "$PW_WINE_USE" =~ PROTON_LG* ]]
|
||||||
then export PW_WINE_USE="${PW_PROTON_LG_VER}"
|
then export PW_WINE_USE=PROTON_LG
|
||||||
elif [[ "$PW_WINE_USE" == WINE_LG ]]
|
else export PW_WINE_USE=WINE_LG
|
||||||
then export PW_WINE_USE="${PW_WINE_LG_VER}"
|
|
||||||
fi
|
|
||||||
[ ! -z "${PW_WINE_VER}" ] && export PW_WINE_USE=`echo "${PW_WINE_VER}" | tr [[:lower:]] [[:upper:]]`
|
|
||||||
[ ! -z "${PW_WINE_USE}" ] && export PW_WINE_USE=`echo "${PW_WINE_USE}" | tr [[:lower:]] [[:upper:]]`
|
|
||||||
unset PW_WINE_VER
|
|
||||||
export WINEDIR="${PORT_WINE_PATH}/data/dist/${PW_WINE_USE}"
|
|
||||||
export WINE="${WINEDIR}/bin/wine"
|
|
||||||
export WINELOADER="${WINEDIR}/bin/wine"
|
|
||||||
export WINESERVER="${WINEDIR}/bin/wineserver"
|
|
||||||
|
|
||||||
export WINEDLLPATH="${WINEDIR}/lib64/wine:${WINEDIR}/lib/wine"
|
|
||||||
if [[ -d "${PATH_TO_GAME}" ]] ; then
|
|
||||||
export WINEDLLPATH+=":${PATH_TO_GAME}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ -d "${WINEDIR}/files" && ! -d "${WINEDIR}/dist" ]] ; then
|
|
||||||
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
|
|
||||||
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
|
|
||||||
rm -fr "${WINEDIR}/$clear_dist_files"
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
if [[ -d "${WINEDIR}" ]] ; then
|
|
||||||
[[ ! -f "${WINEDIR}/version" ]] && echo "${PW_WINE_USE}" > "${WINEDIR}/version"
|
|
||||||
|
|
||||||
if [[ ! -d "${WINEDIR}/lib64/" ]] && [[ -d "${WINEDIR}/lib/wine/x86_64-unix" ]] ; then
|
|
||||||
create_new_dir "${WINEDIR}/lib64/wine"
|
|
||||||
mv -f "${WINEDIR}/lib/wine/x86_64-unix" "${WINEDIR}/lib64/wine/"
|
|
||||||
mv -f "${WINEDIR}/lib/wine/x86_64-windows" "${WINEDIR}/lib64/wine/"
|
|
||||||
fi
|
|
||||||
|
|
||||||
for mono_gecko_chk in "mono" "gecko" ; do
|
|
||||||
if check_symlink "${WINEDIR}/share/wine/${mono_gecko_chk}" ; then
|
|
||||||
print_info "${WINEDIR}/share/wine/${mono_gecko_chk} is symlink. OK."
|
|
||||||
elif [[ -d "${WINEDIR}/share/wine/${mono_gecko_chk}" ]] ; then
|
|
||||||
pw_start_progress_bar_cover_block "${PW_GUI_ICON_PATH}/covers/loading_${update_loc}.gif"
|
|
||||||
try_copy_dir "${WINEDIR}/share/wine/${mono_gecko_chk}" "${PORT_WINE_TMP_PATH}"
|
|
||||||
try_remove_dir "${WINEDIR}/share/wine/${mono_gecko_chk}"
|
|
||||||
try_force_link_dir "${PORT_WINE_TMP_PATH}/${mono_gecko_chk}" "${WINEDIR}"/share/wine/
|
|
||||||
print_info "Copy ${WINEDIR}/share/wine/${mono_gecko_chk} to tmp and create symlink to ${WINEDIR}/share/wine/. OK."
|
|
||||||
pw_stop_progress_bar_cover_block
|
|
||||||
else
|
|
||||||
try_remove_dir "${WINEDIR}/share/wine/${mono_gecko_chk}"
|
|
||||||
try_force_link_dir "${PORT_WINE_TMP_PATH}/${mono_gecko_chk}" "${WINEDIR}"/share/wine
|
|
||||||
print_warning "${WINEDIR}/share/wine/${mono_gecko_chk} is broken symlink. Repair... OK."
|
|
||||||
fi
|
fi
|
||||||
done
|
fi
|
||||||
|
if [[ "$PW_WINE_USE" == PROTON_LG ]]
|
||||||
|
then export PW_WINE_USE="${PW_PROTON_LG_VER}"
|
||||||
|
elif [[ "$PW_WINE_USE" == WINE_LG ]]
|
||||||
|
then export PW_WINE_USE="${PW_WINE_LG_VER}"
|
||||||
|
fi
|
||||||
|
[ ! -z "${PW_WINE_VER}" ] && export PW_WINE_USE=`echo "${PW_WINE_VER}" | tr [[:lower:]] [[:upper:]]`
|
||||||
|
[ ! -z "${PW_WINE_USE}" ] && export PW_WINE_USE=`echo "${PW_WINE_USE}" | tr [[:lower:]] [[:upper:]]`
|
||||||
|
unset PW_WINE_VER
|
||||||
|
|
||||||
grep 'Global,"{41FCC608-8496-4DEF-B43E-7D9BD675A6FF}",0x10001,0x00000001' "${WINEDIR}/share/wine/wine.inf" &> /dev/null
|
export WINEDIR="${PORT_WINE_PATH}/data/dist/${PW_WINE_USE}"
|
||||||
if [[ "$?" != "0" ]] ; then
|
export WINE="${WINEDIR}/bin/wine"
|
||||||
echo 'HKLM,Software\NVIDIA Corporation\Global,"{41FCC608-8496-4DEF-B43E-7D9BD675A6FF}",0x10001,0x00000001' >> "${WINEDIR}/share/wine/wine.inf"
|
export WINELOADER="${WINEDIR}/bin/wine"
|
||||||
echo 'HKLM,System\ControlSet001\Services\nvlddmkm,"{41FCC608-8496-4DEF-B43E-7D9BD675A6FF}",0x10001,0x00000001' >> "${WINEDIR}/share/wine/wine.inf"
|
export WINESERVER="${WINEDIR}/bin/wineserver"
|
||||||
sed -i '/Steam.exe/d' "${WINEDIR}/share/wine/wine.inf"
|
if [[ -d "${WINEDIR}/files" && ! -d "${WINEDIR}/dist" ]] ; then
|
||||||
sed -i '/\\Valve\\Steam/d' "${WINEDIR}/share/wine/wine.inf"
|
for clear_dist_files in `ls "${WINEDIR}" | sed -e "s/^files$//g" | sed -e "s/^version$//g"` ; do
|
||||||
sed -i '/winemenubuilder/d' "${WINEDIR}/share/wine/wine.inf"
|
rm -fr "${WINEDIR}/$clear_dist_files"
|
||||||
|
done
|
||||||
|
mv -f "${WINEDIR}/files"/* "${WINEDIR}/"
|
||||||
|
rm -fr "${WINEDIR}/files"
|
||||||
|
elif [[ ! -d "${WINEDIR}/files" && -d "${WINEDIR}/dist" ]] ; then
|
||||||
|
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
|
||||||
|
rm -fr "${WINEDIR}/$clear_dist_files"
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
if [[ -d "${WINEDIR}" ]] ; then
|
||||||
|
[[ ! -f "${WINEDIR}/version" ]] && echo "${PW_WINE_USE}" > "${WINEDIR}/version"
|
||||||
|
|
||||||
|
if [[ ! -d "${WINEDIR}/lib64/" ]] && [[ -d "${WINEDIR}/lib/wine/x86_64-unix" ]] ; then
|
||||||
|
create_new_dir "${WINEDIR}/lib64/wine"
|
||||||
|
mv -f "${WINEDIR}/lib/wine/x86_64-unix" "${WINEDIR}/lib64/wine/"
|
||||||
|
mv -f "${WINEDIR}/lib/wine/x86_64-windows" "${WINEDIR}/lib64/wine/"
|
||||||
|
fi
|
||||||
|
|
||||||
|
for mono_gecko_chk in "mono" "gecko" ; do
|
||||||
|
if check_symlink "${WINEDIR}/share/wine/${mono_gecko_chk}" ; then
|
||||||
|
print_info "${WINEDIR}/share/wine/${mono_gecko_chk} is symlink. OK."
|
||||||
|
elif [[ -d "${WINEDIR}/share/wine/${mono_gecko_chk}" ]] ; then
|
||||||
|
pw_start_progress_bar_cover_block "${PW_GUI_ICON_PATH}/covers/loading_${update_loc}.gif"
|
||||||
|
try_copy_dir "${WINEDIR}/share/wine/${mono_gecko_chk}" "${PORT_WINE_TMP_PATH}"
|
||||||
|
try_remove_dir "${WINEDIR}/share/wine/${mono_gecko_chk}"
|
||||||
|
try_force_link_dir "${PORT_WINE_TMP_PATH}/${mono_gecko_chk}" "${WINEDIR}"/share/wine/
|
||||||
|
print_info "Copy ${WINEDIR}/share/wine/${mono_gecko_chk} to tmp and create symlink to ${WINEDIR}/share/wine/. OK."
|
||||||
|
pw_stop_progress_bar_cover_block
|
||||||
|
else
|
||||||
|
try_remove_dir "${WINEDIR}/share/wine/${mono_gecko_chk}"
|
||||||
|
try_force_link_dir "${PORT_WINE_TMP_PATH}/${mono_gecko_chk}" "${WINEDIR}"/share/wine
|
||||||
|
print_warning "${WINEDIR}/share/wine/${mono_gecko_chk} is broken symlink. Repair... OK."
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
grep 'Global,"{41FCC608-8496-4DEF-B43E-7D9BD675A6FF}",0x10001,0x00000001' "${WINEDIR}/share/wine/wine.inf" &> /dev/null
|
||||||
|
if [[ "$?" != "0" ]] ; then
|
||||||
|
echo 'HKLM,Software\NVIDIA Corporation\Global,"{41FCC608-8496-4DEF-B43E-7D9BD675A6FF}",0x10001,0x00000001' >> "${WINEDIR}/share/wine/wine.inf"
|
||||||
|
echo 'HKLM,System\ControlSet001\Services\nvlddmkm,"{41FCC608-8496-4DEF-B43E-7D9BD675A6FF}",0x10001,0x00000001' >> "${WINEDIR}/share/wine/wine.inf"
|
||||||
|
sed -i '/Steam.exe/d' "${WINEDIR}/share/wine/wine.inf"
|
||||||
|
sed -i '/\\Valve\\Steam/d' "${WINEDIR}/share/wine/wine.inf"
|
||||||
|
sed -i '/winemenubuilder/d' "${WINEDIR}/share/wine/wine.inf"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
rm -f "${WINEDIR}"/lib*/*steam* &>/dev/null
|
||||||
|
rm -f "${WINEDIR}"/lib*/wine/*/*steam* &>/dev/null
|
||||||
|
rm -f "${WINEDIR}"/lib*/wine/*-windows/winemenubuilder.exe &>/dev/null
|
||||||
|
|
||||||
|
export WINEDLLPATH="${WINEDIR}/lib64/wine:${WINEDIR}/lib/wine"
|
||||||
|
if [[ -d "${PATH_TO_GAME}" ]] ; then
|
||||||
|
export WINEDLLPATH+=":${PATH_TO_GAME}"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
rm -f "${WINEDIR}"/lib*/*steam* &>/dev/null
|
|
||||||
rm -f "${WINEDIR}"/lib*/wine/*/*steam* &>/dev/null
|
if [ "${PW_USE_GSTREAMER}" = 1 ] ; then
|
||||||
rm -f "${WINEDIR}"/lib*/wine/*-windows/winemenubuilder.exe &>/dev/null
|
if [ -d "${WINEDIR}/lib64/gstreamer-1.0" ] ; then
|
||||||
|
export GST_PLUGIN_SYSTEM_PATH_1_0="${WINEDIR}/lib64/gstreamer-1.0:${WINEDIR}/lib/gstreamer-1.0"
|
||||||
|
fi
|
||||||
|
create_new_dir "${PORT_WINE_TMP_PATH}"/gstreamer_tmp/
|
||||||
|
export WINE_GST_REGISTRY_DIR="${PORT_WINE_TMP_PATH}"/gstreamer_tmp/
|
||||||
|
export MEDIACONV_AUDIO_DUMP_FILE="${PORT_WINE_TMP_PATH}"/gstreamer_tmp/audio.foz
|
||||||
|
export MEDIACONV_AUDIO_TRANSCODED_FILE="${PORT_WINE_TMP_PATH}"/gstreamer_tmp/transcoded_audio.foz
|
||||||
|
export MEDIACONV_VIDEO_DUMP_FILE="${PORT_WINE_TMP_PATH}"/gstreamer_tmp/video.foz
|
||||||
|
export MEDIACONV_VIDEO_TRANSCODED_FILE="${PORT_WINE_TMP_PATH}"/gstreamer_tmp/transcoded_video.foz
|
||||||
|
else
|
||||||
|
var_winedlloverride_update "winegstreamer="
|
||||||
|
fi
|
||||||
|
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
pw_init_runtime () {
|
pw_init_runtime () {
|
||||||
|
if [[ "$PW_USE_RUNTIME" != 1 ]] ; then
|
||||||
|
export pw_runtime=""
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
|
||||||
if grep -i -E '(ROSA|RED OS)' "/etc/os-release" &>/dev/null ; then
|
if grep -i -E '(ROSA|RED OS)' "/etc/os-release" &>/dev/null ; then
|
||||||
export LOCPATH="/run/host/usr/share/locale/"
|
export LOCPATH="/run/host/usr/share/locale/"
|
||||||
@ -516,7 +545,15 @@ pw_init_runtime () {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
PW_PV_OVERRIDES="/usr/lib/pressure-vessel/overrides/lib"
|
PW_PV_OVERRIDES="/usr/lib/pressure-vessel/overrides/lib"
|
||||||
export PW_LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib:${PW_PLUGINS_PATH}/portable/lib/lib64:${PW_PLUGINS_PATH}/portable/lib/lib32:${PW_PV_OVERRIDES}/x86_64-linux-gnu/aliases:${PW_PV_OVERRIDES}/i386-linux-gnu/aliases"
|
|
||||||
|
export PW_LD_LIBRARY_PATH="\
|
||||||
|
${WINEDIR}/lib64:${WINEDIR}/lib:\
|
||||||
|
${PW_PLUGINS_PATH}/portable/lib/lib64:\
|
||||||
|
${PW_PLUGINS_PATH}/portable/lib/lib32:\
|
||||||
|
${PW_PV_OVERRIDES}/x86_64-linux-gnu/aliases:\
|
||||||
|
${PW_PV_OVERRIDES}/i386-linux-gnu/aliases:\
|
||||||
|
/overrides/lib/x86_64-linux-gnu:\
|
||||||
|
/overrides/lib/i386-linux-gnu"
|
||||||
|
|
||||||
if [ ! -z ${PATH_TMP} ]
|
if [ ! -z ${PATH_TMP} ]
|
||||||
then export PATH="${PATH_TMP}"
|
then export PATH="${PATH_TMP}"
|
||||||
@ -527,20 +564,6 @@ pw_init_runtime () {
|
|||||||
else export PATH="${WINEDIR}/bin:${PW_PLUGINS_PATH}/portable/bin"
|
else export PATH="${WINEDIR}/bin:${PW_PLUGINS_PATH}/portable/bin"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "${PW_USE_GSTREAMER}" = 1 ] ; then
|
|
||||||
if [ -d "${WINEDIR}/lib64/gstreamer-1.0" ] ; then
|
|
||||||
export GST_PLUGIN_SYSTEM_PATH_1_0="${WINEDIR}/lib64/gstreamer-1.0:${WINEDIR}/lib/gstreamer-1.0"
|
|
||||||
fi
|
|
||||||
create_new_dir "${WINEDIR}"/gstreamer_tmp/
|
|
||||||
export WINE_GST_REGISTRY_DIR="${WINEDIR}"/gstreamer_tmp/
|
|
||||||
export MEDIACONV_AUDIO_DUMP_FILE="${WINEDIR}"/gstreamer_tmp/audio.foz
|
|
||||||
export MEDIACONV_AUDIO_TRANSCODED_FILE="${WINEDIR}"/gstreamer_tmp/transcoded_audio.foz
|
|
||||||
export MEDIACONV_VIDEO_DUMP_FILE="${WINEDIR}"/gstreamer_tmp/video.foz
|
|
||||||
export MEDIACONV_VIDEO_TRANSCODED_FILE="${WINEDIR}"/gstreamer_tmp/transcoded_video.foz
|
|
||||||
else
|
|
||||||
var_winedlloverride_update "winegstreamer="
|
|
||||||
fi
|
|
||||||
|
|
||||||
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 \
|
export pw_runtime="${PW_WINELIB}/pressure-vessel/bin/pressure-vessel-unruntime \
|
||||||
--unshare-home \
|
--unshare-home \
|
||||||
@ -593,7 +616,9 @@ pw_init_runtime () {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pw_mangohud_check () {
|
pw_mangohud_check () {
|
||||||
if [[ "${PW_MANGOHUD}" == "1" ]] && ! check_gamescope_session ; then
|
if [[ "${PW_MANGOHUD}" == "1" ]] \
|
||||||
|
&& ! check_gamescope_session
|
||||||
|
then
|
||||||
export PW_MANGOHUD_SLR='MANGOHUD=1'
|
export PW_MANGOHUD_SLR='MANGOHUD=1'
|
||||||
MANGOHUD_LIB_NAME="libMangoHud.so"
|
MANGOHUD_LIB_NAME="libMangoHud.so"
|
||||||
if [[ "${PW_VULKAN_USE}" = "0" ]] ; then
|
if [[ "${PW_VULKAN_USE}" = "0" ]] ; then
|
||||||
@ -614,11 +639,13 @@ pw_mangohud_check () {
|
|||||||
|
|
||||||
pw_vkbasalt_check () {
|
pw_vkbasalt_check () {
|
||||||
if [[ "${ENABLE_VKBASALT}" == 1 ]] && [[ "${PW_VULKAN_USE}" != "0" ]] && [[ "${PW_VULKAN_USE}" != "3" ]] ; then
|
if [[ "${ENABLE_VKBASALT}" == 1 ]] && [[ "${PW_VULKAN_USE}" != "0" ]] && [[ "${PW_VULKAN_USE}" != "3" ]] ; then
|
||||||
|
export VKBASALT_CONFIG_FILE="${PORT_WINE_PATH}/data/vkBasalt.conf"
|
||||||
|
if ! grep "/pressure-vessel/reshade" "${VKBASALT_CONFIG_FILE}" &>/dev/null
|
||||||
|
then sed -ri "s|= .*/reshade|= \"${PW_WINELIB}\"/pressure-vessel/reshade|g" "${VKBASALT_CONFIG_FILE}"
|
||||||
|
fi
|
||||||
if [[ ! -z "${PW_VKBASALT_EFFECTS}" ]] && [[ ! -z "${PW_VKBASALT_FFX_CAS}" ]] ; then
|
if [[ ! -z "${PW_VKBASALT_EFFECTS}" ]] && [[ ! -z "${PW_VKBASALT_FFX_CAS}" ]] ; then
|
||||||
export VKBASALT_CONFIG_FILE="${PORT_WINE_PATH}/data/vkBasalt.conf"
|
|
||||||
sed -ri "s/effects = .*/effects = ${PW_VKBASALT_EFFECTS}/g" "${VKBASALT_CONFIG_FILE}"
|
sed -ri "s/effects = .*/effects = ${PW_VKBASALT_EFFECTS}/g" "${VKBASALT_CONFIG_FILE}"
|
||||||
sed -ri "s/casSharpness .*/casSharpness = ${PW_VKBASALT_FFX_CAS}/g" "${VKBASALT_CONFIG_FILE}"
|
sed -ri "s/casSharpness .*/casSharpness = ${PW_VKBASALT_FFX_CAS}/g" "${VKBASALT_CONFIG_FILE}"
|
||||||
sed -ri "s|= .*/reshade|= \"${PW_WINELIB}\"/pressure-vessel/reshade|g" "${VKBASALT_CONFIG_FILE}"
|
|
||||||
fi
|
fi
|
||||||
var_vk_istance_layers_config_update "VK_LAYER_VKBASALT_post_processing64:VK_LAYER_VKBASALT_post_processing32"
|
var_vk_istance_layers_config_update "VK_LAYER_VKBASALT_post_processing64:VK_LAYER_VKBASALT_post_processing32"
|
||||||
print_info "vkBasalt is enabled"
|
print_info "vkBasalt is enabled"
|
||||||
@ -655,6 +682,7 @@ wait_wineserver () {
|
|||||||
while [ ! -z "$(ls -l /proc/*/exe 2>/dev/null | grep -ie ${portname} | grep -E 'wine(64)?-preloader|wineserver' | awk -F/ '{print $3}')" ] ; do
|
while [ ! -z "$(ls -l /proc/*/exe 2>/dev/null | grep -ie ${portname} | grep -E 'wine(64)?-preloader|wineserver' | awk -F/ '{print $3}')" ] ; do
|
||||||
sleep 1
|
sleep 1
|
||||||
done
|
done
|
||||||
|
"$WINESERVER" -w
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
export -f wait_wineserver
|
export -f wait_wineserver
|
||||||
@ -686,9 +714,10 @@ pw_kill_autostart () {
|
|||||||
else SWAIT="${2}"
|
else SWAIT="${2}"
|
||||||
fi
|
fi
|
||||||
sleep 5
|
sleep 5
|
||||||
|
|
||||||
while true ; do
|
while true ; do
|
||||||
if [[ -z "`ps aux | grep -m 1 -i "$1" | grep -v grep | awk '{print $2}'`" ]] && [[ ! -z "`ps aux | grep wrap | grep -v grep | grep -i ${portname} | head -n 1`" ]] ; then
|
if [[ -z "`ps aux | grep -m 1 -i "$1" | grep -v grep | awk '{print $2}'`" ]] \
|
||||||
|
&& [[ ! -z "`ps aux | grep wrap | grep -v grep | grep -i ${portname} | head -n 1`" ]]
|
||||||
|
then
|
||||||
echo -e "PID "$1" not found"
|
echo -e "PID "$1" not found"
|
||||||
sleep "${SWAIT}"
|
sleep "${SWAIT}"
|
||||||
else
|
else
|
||||||
@ -700,7 +729,7 @@ pw_kill_autostart () {
|
|||||||
break
|
break
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
|
|
||||||
if [[ ! -z "`ls "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/drive_c/ | grep -m 1 ".tmp"`" ]] ; then
|
if [[ ! -z "`ls "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/drive_c/ | grep -m 1 ".tmp"`" ]] ; then
|
||||||
rm -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/drive_c/*.tmp
|
rm -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/drive_c/*.tmp
|
||||||
fi
|
fi
|
||||||
|
@ -128,6 +128,8 @@ if [[ "${update_loc}" == "RUS" ]] ; then
|
|||||||
|
|
||||||
export loc_gui_dll_new_pfx="Установить рекомендованные библиотеки в новый префикс: "
|
export loc_gui_dll_new_pfx="Установить рекомендованные библиотеки в новый префикс: "
|
||||||
|
|
||||||
|
export loc_gui_portproton_lock='Завершите предыдущую сессию PortProton перед запуском новой,\nили воспользуйтесь ПКМ на значке в трее -> Завершить работу PortProton.'
|
||||||
|
|
||||||
export ENABLE_VKBASALT_INFO='Включить vkBasalt по умолчанию для улучшение графики в играх работающих под Vulkan. (Горячая клавиша HOME отключает vkbasalt)'
|
export ENABLE_VKBASALT_INFO='Включить vkBasalt по умолчанию для улучшение графики в играх работающих под Vulkan. (Горячая клавиша HOME отключает vkbasalt)'
|
||||||
export PW_NO_ESYNC_INFO='Не использовать примитивы внутрипроцессной синхронизации на основе eventfd. (Рекомендуется не изменять значение)'
|
export PW_NO_ESYNC_INFO='Не использовать примитивы внутрипроцессной синхронизации на основе eventfd. (Рекомендуется не изменять значение)'
|
||||||
export PW_NO_FSYNC_INFO='Не использовать примитивы внутрипроцессной синхронизации на основе фьютексов. (Автоматически отключается в системах без FUTEX_WAIT_MULTIPLE поддержки) (Рекомендуется не изменять значение)'
|
export PW_NO_FSYNC_INFO='Не использовать примитивы внутрипроцессной синхронизации на основе фьютексов. (Автоматически отключается в системах без FUTEX_WAIT_MULTIPLE поддержки) (Рекомендуется не изменять значение)'
|
||||||
@ -280,8 +282,8 @@ if [[ "${update_loc}" == "RUS" ]] ; then
|
|||||||
export PW_MH_wine_INFO='Показать используемую версию Wine или Proton'
|
export PW_MH_wine_INFO='Показать используемую версию Wine или Proton'
|
||||||
|
|
||||||
export PW_PFX_BACKUP_INFO="Внимание! Не передавайте резевную копию третьим лицам, есть риск потери аккаунтов"
|
export PW_PFX_BACKUP_INFO="Внимание! Не передавайте резевную копию третьим лицам, есть риск потери аккаунтов"
|
||||||
export PW_PFX_BACKUP_SUCCESS="Резервная копия префикса: \"${PW_PREFIX_NAME}\" успешно создана"
|
export PW_PFX_BACKUP_SUCCESS="Успешно создана резервная копия префикса:"
|
||||||
export PW_PFX_BACKUP_ERROR="Во время создания резервной копии префикса: \"${PW_PREFIX_NAME}\" произошла ошибка"
|
export PW_PFX_BACKUP_ERROR="Произошла ошибка во время создания резервной копии префикса:"
|
||||||
|
|
||||||
export loc_find_d3dadapter9_error="не найден в системе.\nУстановите недостающий пакет: </Sb>d3dadapter9</b>"
|
export loc_find_d3dadapter9_error="не найден в системе.\nУстановите недостающий пакет: </Sb>d3dadapter9</b>"
|
||||||
|
|
||||||
@ -537,6 +539,8 @@ elif [[ "${update_loc}" == "ENG" ]] ; then
|
|||||||
|
|
||||||
export loc_gui_dll_new_pfx="Do you want to installing recommended libraries in the new prefix: "
|
export loc_gui_dll_new_pfx="Do you want to installing recommended libraries in the new prefix: "
|
||||||
|
|
||||||
|
export loc_gui_portproton_lock='End the previous PortProton session before starting a new one,\nor use the RMB on the tray icon -> Shut down PortProton.'
|
||||||
|
|
||||||
export ENABLE_VKBASALT_INFO='Enable vkBasalt by default to improve graphics in games running on Vulkan. (The HOME hotkey disables vkbasalt)'
|
export ENABLE_VKBASALT_INFO='Enable vkBasalt by default to improve graphics in games running on Vulkan. (The HOME hotkey disables vkbasalt)'
|
||||||
export PW_NO_ESYNC_INFO='Do not use in-process synchronization primitives based on eventfd. (It is recommended not to change the value.)'
|
export PW_NO_ESYNC_INFO='Do not use in-process synchronization primitives based on eventfd. (It is recommended not to change the value.)'
|
||||||
export PW_NO_FSYNC_INFO='Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems without FUTEX_WAIT_MULTIPLE support) (It is recommended not to change the value)'
|
export PW_NO_FSYNC_INFO='Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems without FUTEX_WAIT_MULTIPLE support) (It is recommended not to change the value)'
|
||||||
@ -689,8 +693,8 @@ elif [[ "${update_loc}" == "ENG" ]] ; then
|
|||||||
export PW_MH_wine_INFO='Show current Wine or Proton version in use'
|
export PW_MH_wine_INFO='Show current Wine or Proton version in use'
|
||||||
|
|
||||||
export PW_PFX_BACKUP_INFO="Attention! Do not pass the resev copy to third parties, there is a risk of losing accounts"
|
export PW_PFX_BACKUP_INFO="Attention! Do not pass the resev copy to third parties, there is a risk of losing accounts"
|
||||||
export PW_PFX_BACKUP_SUCCESS="Prefix backup: \"${PW_PREFIX_NAME}\" has been successfully created"
|
export PW_PFX_BACKUP_SUCCESS="Backup has been successfully created for prefix:"
|
||||||
export PW_PFX_BACKUP_ERROR="An error occurred while backing up the prefix: \"${PW_PREFIX_NAME}\" error occurred"
|
export PW_PFX_BACKUP_ERROR="An error occurred while backing up the prefix:"
|
||||||
|
|
||||||
export loc_find_d3dadapter9_error="Not found in the system.\nInstall the missing package: </Sb>d3dadapter9</b>"
|
export loc_find_d3dadapter9_error="Not found in the system.\nInstall the missing package: </Sb>d3dadapter9</b>"
|
||||||
|
|
||||||
|
@ -50,10 +50,12 @@ start_portwine () {
|
|||||||
|
|
||||||
var_winedlloverride_update "${PW_MUST_WINEDLLOVERRIDES}"
|
var_winedlloverride_update "${PW_MUST_WINEDLLOVERRIDES}"
|
||||||
pw_list_install_dll_in_prefix
|
pw_list_install_dll_in_prefix
|
||||||
pw_check_and_download_wine "${PW_WINE_USE}"
|
if [[ "${PW_WINE_USE}" != "USE_SYSTEM_WINE" ]]
|
||||||
|
then pw_check_and_download_wine "${PW_WINE_USE}"
|
||||||
|
fi
|
||||||
init_wine_ver
|
init_wine_ver
|
||||||
pw_init_runtime
|
pw_init_runtime
|
||||||
|
|
||||||
check_variables VKD3D_DEBUG none
|
check_variables VKD3D_DEBUG none
|
||||||
check_variables DXVK_LOG_LEVEL none
|
check_variables DXVK_LOG_LEVEL none
|
||||||
check_variables VK_LOADER_DEBUG none
|
check_variables VK_LOADER_DEBUG none
|
||||||
@ -330,7 +332,7 @@ start_portwine () {
|
|||||||
PW_GAMEMODERUN_SLR="gamemoderun"
|
PW_GAMEMODERUN_SLR="gamemoderun"
|
||||||
systemctl enable --now --user gamemoded &>/dev/null
|
systemctl enable --now --user gamemoded &>/dev/null
|
||||||
print_info "Gamemod will be launched."
|
print_info "Gamemod will be launched."
|
||||||
else
|
elif [[ "$PW_USE_RUNTIME" == 1 ]] ; then
|
||||||
export GAMEMODERUN=1
|
export GAMEMODERUN=1
|
||||||
if ! pidof gamemoded &>/dev/null ; then
|
if ! pidof gamemoded &>/dev/null ; then
|
||||||
GAMEMODEAUTO_NAME="libgamemodeauto.so.0"
|
GAMEMODEAUTO_NAME="libgamemodeauto.so.0"
|
||||||
@ -345,6 +347,9 @@ start_portwine () {
|
|||||||
print_info "Gamemod will be launched."
|
print_info "Gamemod will be launched."
|
||||||
sleep 0.1
|
sleep 0.1
|
||||||
fi
|
fi
|
||||||
|
else
|
||||||
|
export GAMEMODERUN=0
|
||||||
|
export PW_GAMEMODERUN_SLR=""
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
export GAMEMODERUN=0
|
export GAMEMODERUN=0
|
||||||
@ -654,6 +659,9 @@ start_portwine () {
|
|||||||
gsettings set org.cinnamon.muffin unredirect-fullscreen-windows true
|
gsettings set org.cinnamon.muffin unredirect-fullscreen-windows true
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
pw_mangohud_check
|
||||||
|
pw_vkbasalt_check
|
||||||
}
|
}
|
||||||
|
|
||||||
pw_run () {
|
pw_run () {
|
||||||
@ -666,55 +674,88 @@ pw_run () {
|
|||||||
else
|
else
|
||||||
cd "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c"
|
cd "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c"
|
||||||
fi
|
fi
|
||||||
pw_mangohud_check
|
|
||||||
pw_vkbasalt_check
|
|
||||||
PW_LOG_TO_FILE="${PORT_WINE_PATH}/${portname}.log"
|
PW_LOG_TO_FILE="${PORT_WINE_PATH}/${portname}.log"
|
||||||
print_var "WINEDIR" "WINEPREFIX" "WINEDLLOVERRIDES" "PATH_TO_GAME" "PW_WINE_USE" "PW_VULKAN_USE" "VULKAN_DRIVER_NAME"
|
print_var "WINEDIR" "WINEPREFIX" "WINEDLLOVERRIDES" "PATH_TO_GAME" "PW_WINE_USE" "PW_VULKAN_USE" "VULKAN_DRIVER_NAME"
|
||||||
print_var "VULKAN_API_DRIVER_VERSION" "VKD3D_CONFIG" "PW_LD_LIBRARY_PATH" "PATH" "WINEESYNC" "WINEFSYNC" "WINEFSYNC_FUTEX2"
|
print_var "VULKAN_API_DRIVER_VERSION" "VKD3D_CONFIG" "PW_LD_LIBRARY_PATH" "PATH" "WINEESYNC" "WINEFSYNC" "WINEFSYNC_FUTEX2"
|
||||||
print_var "WINEDLLPATH" "WINE_CPU_TOPOLOGY" "PW_RUN_GAMESCOPE" "LD_LIBRARY_PATH"
|
print_var "WINEDLLPATH" "WINE_CPU_TOPOLOGY" "PW_RUN_GAMESCOPE" "LD_LIBRARY_PATH"
|
||||||
kill -s SIGUSR1 "$PW_YAD_PID_PFX_COVER_UI" &>/dev/null
|
kill -s SIGUSR1 "$PW_YAD_PID_PFX_COVER_UI" &>/dev/null
|
||||||
if [[ "${PW_LOG}" == 1 ]] ; then
|
if [[ "$PW_USE_RUNTIME" == 1 ]] ; then
|
||||||
if check_start_from_steam ; then
|
if [[ "${PW_LOG}" == 1 ]] ; then
|
||||||
for VAR_LOGGER in PW_WINE_USE WINEDIR WINEDLLPATH WINEPREFIX PATH_TO_GAME PW_VULKAN_USE PW_LD_LIBRARY_PATH LD_LIBRARY_PATH PATH \
|
if check_start_from_steam ; then
|
||||||
VKD3D_CONFIG WINEESYNC WINEFSYNC WINEFSYNC_FUTEX2 WINE_CPU_TOPOLOGY DESKTOP_SESSION
|
for VAR_LOGGER in PW_WINE_USE WINEDIR WINEDLLPATH WINEPREFIX PATH_TO_GAME PW_VULKAN_USE PW_LD_LIBRARY_PATH LD_LIBRARY_PATH PATH \
|
||||||
do
|
VKD3D_CONFIG WINEESYNC WINEFSYNC WINEFSYNC_FUTEX2 WINE_CPU_TOPOLOGY DESKTOP_SESSION
|
||||||
echo "${VAR_LOGGER}=${!VAR_LOGGER}" >> "${PW_LOG_TO_FILE}"
|
do
|
||||||
done
|
echo "${VAR_LOGGER}=${!VAR_LOGGER}" >> "${PW_LOG_TO_FILE}"
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
echo "WINEDLLOVERRIDES=${WINEDLLOVERRIDES}" >> "${PW_LOG_TO_FILE}"
|
||||||
|
echo "------------------------------------" >> "${PW_LOG_TO_FILE}"
|
||||||
|
echo "Log WINE:" >> "${PW_LOG_TO_FILE}"
|
||||||
|
echo ""
|
||||||
|
print_info "Log from RUNTIME and WINE:"
|
||||||
|
${PW_RUN_GAMESCOPE} \
|
||||||
|
${pw_runtime} \
|
||||||
|
env PATH="${PATH}" \
|
||||||
|
LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" \
|
||||||
|
LD_PRELOAD="${PW_LD_PRELOAD}" \
|
||||||
|
VK_LAYER_PATH="${PW_VK_LAYER_PATH}" \
|
||||||
|
VK_INSTANCE_LAYERS=${PW_VK_INSTANCE_LAYERS} \
|
||||||
|
${PW_GAMEMODERUN_SLR} \
|
||||||
|
${PW_MANGOHUD_SLR} \
|
||||||
|
"${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[@]} &>>"${PW_LOG_TO_FILE}"
|
||||||
|
else
|
||||||
|
if [[ "$PW_USE_TERMINAL" == 1 ]] \
|
||||||
|
&& [[ "$PW_USE_RUNTIME" == 1 ]]
|
||||||
|
then
|
||||||
|
export PW_ADD_TO_ARGS_IN_RUNTIME="--xterm"
|
||||||
|
pw_init_runtime
|
||||||
|
fi
|
||||||
|
echo ""
|
||||||
|
echo "Log WINE:" > "${PW_LOG_TO_FILE}"
|
||||||
|
print_info "Log from RUNTIME and WINE:"
|
||||||
|
${PW_RUN_GAMESCOPE} \
|
||||||
|
${pw_runtime} \
|
||||||
|
env PATH="${PATH}" \
|
||||||
|
LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" \
|
||||||
|
LD_PRELOAD="${PW_LD_PRELOAD}" \
|
||||||
|
VK_LAYER_PATH="${PW_VK_LAYER_PATH}" \
|
||||||
|
VK_INSTANCE_LAYERS="${PW_VK_INSTANCE_LAYERS}" \
|
||||||
|
${PW_GAMEMODERUN_SLR} \
|
||||||
|
${PW_MANGOHUD_SLR} \
|
||||||
|
"${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[@]} &>>"${PW_LOG_TO_FILE}"
|
||||||
|
cat "${PW_LOG_TO_FILE}"
|
||||||
fi
|
fi
|
||||||
echo "WINEDLLOVERRIDES=${WINEDLLOVERRIDES}" >> "${PW_LOG_TO_FILE}"
|
|
||||||
echo "------------------------------------" >> "${PW_LOG_TO_FILE}"
|
|
||||||
echo "Log WINE:" >> "${PW_LOG_TO_FILE}"
|
|
||||||
echo ""
|
|
||||||
print_info "Log from RUNTIME and WINE:"
|
|
||||||
${PW_RUN_GAMESCOPE} \
|
|
||||||
${pw_runtime} \
|
|
||||||
env PATH="${PATH}" \
|
|
||||||
LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" \
|
|
||||||
LD_PRELOAD="${PW_LD_PRELOAD}" \
|
|
||||||
VK_LAYER_PATH="${PW_VK_LAYER_PATH}" \
|
|
||||||
VK_INSTANCE_LAYERS=${PW_VK_INSTANCE_LAYERS} \
|
|
||||||
${PW_GAMEMODERUN_SLR} \
|
|
||||||
${PW_MANGOHUD_SLR} \
|
|
||||||
"${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[@]} &>>"${PW_LOG_TO_FILE}"
|
|
||||||
else
|
else
|
||||||
if [[ "${PW_USE_TERMINAL}" == "1" ]] ; then
|
if [[ "${PW_LOG}" == 1 ]] ; then
|
||||||
export PW_ADD_TO_ARGS_IN_RUNTIME="--xterm"
|
if check_start_from_steam ; then
|
||||||
pw_init_runtime
|
for VAR_LOGGER in PW_WINE_USE WINEDIR WINEDLLPATH WINEPREFIX PATH_TO_GAME PW_VULKAN_USE PW_LD_LIBRARY_PATH LD_LIBRARY_PATH PATH \
|
||||||
|
VKD3D_CONFIG WINEESYNC WINEFSYNC WINEFSYNC_FUTEX2 WINE_CPU_TOPOLOGY DESKTOP_SESSION
|
||||||
|
do
|
||||||
|
echo "${VAR_LOGGER}=${!VAR_LOGGER}" >> "${PW_LOG_TO_FILE}"
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
echo "WINEDLLOVERRIDES=${WINEDLLOVERRIDES}" >> "${PW_LOG_TO_FILE}"
|
||||||
|
echo "------------------------------------" >> "${PW_LOG_TO_FILE}"
|
||||||
|
echo "Log WINE:" >> "${PW_LOG_TO_FILE}"
|
||||||
|
echo ""
|
||||||
|
print_info "Log WINE:"
|
||||||
|
env \
|
||||||
|
${PW_GAMEMODERUN_SLR} \
|
||||||
|
${PW_MANGOHUD_SLR} \
|
||||||
|
"${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[@]} &>>"${PW_LOG_TO_FILE}"
|
||||||
|
wait_wineserver
|
||||||
|
else
|
||||||
|
echo ""
|
||||||
|
echo "Log WINE:" > "${PW_LOG_TO_FILE}"
|
||||||
|
print_info "Log WINE:"
|
||||||
|
env \
|
||||||
|
${PW_GAMEMODERUN_SLR} \
|
||||||
|
${PW_MANGOHUD_SLR} \
|
||||||
|
"${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[@]}
|
||||||
|
wait_wineserver
|
||||||
|
|
||||||
|
# ${PW_RUN_GAMESCOPE} \ !!!
|
||||||
fi
|
fi
|
||||||
echo ""
|
|
||||||
echo "Log WINE:" > "${PW_LOG_TO_FILE}"
|
|
||||||
print_info "Log from RUNTIME and WINE:"
|
|
||||||
${PW_RUN_GAMESCOPE} \
|
|
||||||
${pw_runtime} \
|
|
||||||
env PATH="${PATH}" \
|
|
||||||
LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" \
|
|
||||||
LD_PRELOAD="${PW_LD_PRELOAD}" \
|
|
||||||
VK_LAYER_PATH="${PW_VK_LAYER_PATH}" \
|
|
||||||
VK_INSTANCE_LAYERS="${PW_VK_INSTANCE_LAYERS}" \
|
|
||||||
${PW_GAMEMODERUN_SLR} \
|
|
||||||
${PW_MANGOHUD_SLR} \
|
|
||||||
"${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[@]} &>>"${PW_LOG_TO_FILE}"
|
|
||||||
cat "${PW_LOG_TO_FILE}"
|
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
export -f pw_run
|
export -f pw_run
|
||||||
@ -824,6 +865,17 @@ check_user_conf
|
|||||||
check_variables PW_LOG "0"
|
check_variables PW_LOG "0"
|
||||||
|
|
||||||
if [[ -z "${INSTALLING_PORT}" ]] ; then
|
if [[ -z "${INSTALLING_PORT}" ]] ; then
|
||||||
|
if [[ -f "$HOME/.config/.portproton.lock" ]] ; then
|
||||||
|
yad_info "$loc_gui_portproton_lock"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
touch "$HOME/.config/.portproton.lock"
|
||||||
|
rm_lock_file () {
|
||||||
|
echo "Removing the lock file..."
|
||||||
|
rm "$HOME/.config/.portproton.lock" && echo "OK"
|
||||||
|
}
|
||||||
|
trap "rm_lock_file" EXIT
|
||||||
|
|
||||||
. "${USER_CONF}"
|
. "${USER_CONF}"
|
||||||
if [[ "${SKIP_CHECK_UPDATES}" != 1 ]] ; then
|
if [[ "${SKIP_CHECK_UPDATES}" != 1 ]] ; then
|
||||||
pw_port_update
|
pw_port_update
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
# Author: linux-gaming.ru
|
# Author: linux-gaming.ru
|
||||||
|
|
||||||
|
export PW_START_PID="$$"
|
||||||
export NO_AT_BRIDGE=1
|
export NO_AT_BRIDGE=1
|
||||||
export pw_full_command_line=("$0" $*)
|
export pw_full_command_line=("$0" $*)
|
||||||
export YAD_BORDERS=5
|
export YAD_BORDERS=5
|
||||||
@ -62,7 +63,7 @@ if [[ ! -z $(basename "${portwine_exe}" | grep .ppack) ]] ; then
|
|||||||
unset PW_SANDBOX_HOME_PATH
|
unset PW_SANDBOX_HOME_PATH
|
||||||
pw_init_runtime
|
pw_init_runtime
|
||||||
export PW_PREFIX_NAME=$(basename "$1" | awk -F'.' '{print $1}')
|
export PW_PREFIX_NAME=$(basename "$1" | awk -F'.' '{print $1}')
|
||||||
${pw_runtime} env PATH="${PATH}" LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" unsquashfs -f -d "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}" "$1" &
|
${pw_runtime} "${PW_PLUGINS_PATH}/portable/bin/xterm" -e env PATH="${PATH}" LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" unsquashfs -f -d "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}" "$1" &
|
||||||
sleep 10
|
sleep 10
|
||||||
while true ; do
|
while true ; do
|
||||||
if [[ ! -z $(pgrep -a xterm | grep ".ppack" | head -n 1 | awk '{print $1}') ]] ; then
|
if [[ ! -z $(pgrep -a xterm | grep ".ppack" | head -n 1 | awk '{print $1}') ]] ; then
|
||||||
@ -378,10 +379,8 @@ pw_prefix_manager () {
|
|||||||
try_remove_file "${PORT_WINE_TMP_PATH}/to_winetricks"
|
try_remove_file "${PORT_WINE_TMP_PATH}/to_winetricks"
|
||||||
|
|
||||||
if [[ ! -z ${SET_FROM_PFX_MANAGER} ]] ; then
|
if [[ ! -z ${SET_FROM_PFX_MANAGER} ]] ; then
|
||||||
export PW_ADD_TO_ARGS_IN_RUNTIME="--xterm"
|
${pw_runtime} "${PW_PLUGINS_PATH}/portable/bin/xterm" -e env PATH="${PATH}" LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" GST_PLUGIN_SYSTEM_PATH_1_0="" \
|
||||||
pw_init_runtime
|
"${PORT_WINE_TMP_PATH}/winetricks" -q -r -f ${SET_FROM_PFX_MANAGER}
|
||||||
${pw_runtime} env PATH="${PATH}" LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" GST_PLUGIN_SYSTEM_PATH_1_0="" \
|
|
||||||
"${PORT_WINE_TMP_PATH}/winetricks" -q -r -f ${SET_FROM_PFX_MANAGER} &>>"${PORT_WINE_TMP_PATH}/update_pfx_log"
|
|
||||||
gui_prefix_manager
|
gui_prefix_manager
|
||||||
else
|
else
|
||||||
print_info "Nothing to do. Restarting PortProton..."
|
print_info "Nothing to do. Restarting PortProton..."
|
||||||
@ -423,7 +422,6 @@ pw_winetricks () {
|
|||||||
pw_start_cont_xterm () {
|
pw_start_cont_xterm () {
|
||||||
cd "$HOME"
|
cd "$HOME"
|
||||||
unset PW_SANDBOX_HOME_PATH
|
unset PW_SANDBOX_HOME_PATH
|
||||||
# export PW_ADD_TO_ARGS_IN_RUNTIME="--xterm"
|
|
||||||
pw_init_runtime
|
pw_init_runtime
|
||||||
${pw_runtime} \
|
${pw_runtime} \
|
||||||
env PATH="${PATH}" \
|
env PATH="${PATH}" \
|
||||||
@ -467,13 +465,13 @@ pw_create_prefix_backup () {
|
|||||||
done
|
done
|
||||||
if [[ -f "${PW_PREFIX_TO_BACKUP}/${PW_PREFIX_NAME}.ppack.part" ]] ; then
|
if [[ -f "${PW_PREFIX_TO_BACKUP}/${PW_PREFIX_NAME}.ppack.part" ]] ; then
|
||||||
mv -f "${PW_PREFIX_TO_BACKUP}/${PW_PREFIX_NAME}.ppack.part" "${PW_PREFIX_TO_BACKUP}/${PW_PREFIX_NAME}.ppack"
|
mv -f "${PW_PREFIX_TO_BACKUP}/${PW_PREFIX_NAME}.ppack.part" "${PW_PREFIX_TO_BACKUP}/${PW_PREFIX_NAME}.ppack"
|
||||||
yad_info "$PW_PFX_BACKUP_SUCCESS"
|
yad_info "$PW_PFX_BACKUP_SUCCESS $PW_PREFIX_NAME"
|
||||||
if [[ ! -f "${PORT_WINE_TMP_PATH}/pfx_backup_info" ]] ; then
|
if [[ ! -f "${PORT_WINE_TMP_PATH}/pfx_backup_info" ]] ; then
|
||||||
yad_info "$PW_PFX_BACKUP_INFO"
|
yad_info "$PW_PFX_BACKUP_INFO"
|
||||||
echo "1" > "${PORT_WINE_TMP_PATH}/pfx_backup_info"
|
echo "1" > "${PORT_WINE_TMP_PATH}/pfx_backup_info"
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
yad_error "$PW_PFX_BACKUP_ERROR"
|
yad_error "$PW_PFX_BACKUP_ERROR $PW_PREFIX_NAME"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
return 0
|
return 0
|
||||||
@ -483,17 +481,17 @@ pw_edit_db () {
|
|||||||
if [[ "${XDG_SESSION_TYPE}" == "wayland" ]] ; then
|
if [[ "${XDG_SESSION_TYPE}" == "wayland" ]] ; then
|
||||||
pw_gui_for_edit_db \
|
pw_gui_for_edit_db \
|
||||||
PW_MANGOHUD PW_MANGOHUD_USER_CONF ENABLE_VKBASALT PW_VKBASALT_USER_CONF PW_NO_ESYNC PW_NO_FSYNC PW_USE_RAY_TRACING \
|
PW_MANGOHUD PW_MANGOHUD_USER_CONF ENABLE_VKBASALT PW_VKBASALT_USER_CONF PW_NO_ESYNC PW_NO_FSYNC PW_USE_RAY_TRACING \
|
||||||
PW_USE_NVAPI_AND_DLSS PW_USE_FAKE_DLSS PW_USE_FAKE_DLSS_3 PW_WINE_FULLSCREEN_FSR PW_HIDE_NVIDIA_GPU PW_VIRTUAL_DESKTOP PW_USE_TERMINAL \
|
PW_USE_NVAPI_AND_DLSS PW_USE_FAKE_DLSS PW_USE_FAKE_DLSS_3 PW_WINE_FULLSCREEN_FSR PW_HIDE_NVIDIA_GPU PW_VIRTUAL_DESKTOP \
|
||||||
PW_GUI_DISABLED_CS PW_USE_GAMEMODE PW_USE_D3D_EXTRAS PW_FIX_VIDEO_IN_GAME PW_REDUCE_PULSE_LATENCY \
|
PW_USE_TERMINAL PW_GUI_DISABLED_CS PW_USE_GAMEMODE PW_USE_D3D_EXTRAS PW_FIX_VIDEO_IN_GAME PW_REDUCE_PULSE_LATENCY \
|
||||||
PW_USE_GSTREAMER PW_FORCE_LARGE_ADDRESS_AWARE PW_USE_SHADER_CACHE \
|
PW_USE_GSTREAMER PW_FORCE_LARGE_ADDRESS_AWARE PW_USE_SHADER_CACHE PW_USE_WINE_DXGI PW_USE_EAC_AND_BE PW_USE_SYSTEM_VK_LAYERS \
|
||||||
PW_USE_WINE_DXGI PW_USE_EAC_AND_BE PW_USE_SYSTEM_VK_LAYERS PW_USE_OBS_VKCAPTURE PW_USE_GALLIUM_ZINK PW_USE_GAMESCOPE PW_DISABLE_COMPOSITING
|
PW_USE_OBS_VKCAPTURE PW_USE_GALLIUM_ZINK PW_USE_GAMESCOPE PW_DISABLE_COMPOSITING PW_USE_RUNTIME
|
||||||
else
|
else
|
||||||
pw_gui_for_edit_db \
|
pw_gui_for_edit_db \
|
||||||
PW_MANGOHUD PW_MANGOHUD_USER_CONF ENABLE_VKBASALT PW_VKBASALT_USER_CONF PW_NO_ESYNC PW_NO_FSYNC PW_USE_RAY_TRACING \
|
PW_MANGOHUD PW_MANGOHUD_USER_CONF ENABLE_VKBASALT PW_VKBASALT_USER_CONF PW_NO_ESYNC PW_NO_FSYNC PW_USE_RAY_TRACING \
|
||||||
PW_USE_NVAPI_AND_DLSS PW_USE_FAKE_DLSS PW_USE_FAKE_DLSS_3 PW_WINE_FULLSCREEN_FSR PW_HIDE_NVIDIA_GPU PW_VIRTUAL_DESKTOP PW_USE_TERMINAL \
|
PW_USE_NVAPI_AND_DLSS PW_USE_FAKE_DLSS PW_USE_FAKE_DLSS_3 PW_WINE_FULLSCREEN_FSR PW_HIDE_NVIDIA_GPU PW_VIRTUAL_DESKTOP \
|
||||||
PW_GUI_DISABLED_CS PW_USE_GAMEMODE PW_USE_D3D_EXTRAS PW_FIX_VIDEO_IN_GAME \
|
PW_USE_TERMINAL PW_GUI_DISABLED_CS PW_USE_GAMEMODE PW_USE_D3D_EXTRAS PW_FIX_VIDEO_IN_GAME PW_REDUCE_PULSE_LATENCY\
|
||||||
PW_REDUCE_PULSE_LATENCY PW_USE_US_LAYOUT PW_USE_GSTREAMER PW_FORCE_LARGE_ADDRESS_AWARE PW_USE_SHADER_CACHE \
|
PW_USE_US_LAYOUT PW_USE_GSTREAMER PW_FORCE_LARGE_ADDRESS_AWARE PW_USE_SHADER_CACHE PW_USE_WINE_DXGI PW_USE_EAC_AND_BE \
|
||||||
PW_USE_WINE_DXGI PW_USE_EAC_AND_BE PW_USE_SYSTEM_VK_LAYERS PW_USE_OBS_VKCAPTURE PW_USE_GALLIUM_ZINK PW_USE_GAMESCOPE PW_DISABLE_COMPOSITING
|
PW_USE_SYSTEM_VK_LAYERS PW_USE_OBS_VKCAPTURE PW_USE_GALLIUM_ZINK PW_USE_GAMESCOPE PW_DISABLE_COMPOSITING PW_USE_RUNTIME
|
||||||
fi
|
fi
|
||||||
if [[ "$?" == 0 ]] ; then
|
if [[ "$?" == 0 ]] ; then
|
||||||
print_info "Restarting PP after update ppdb file..."
|
print_info "Restarting PP after update ppdb file..."
|
||||||
@ -535,7 +533,7 @@ case "${1}" in
|
|||||||
'--help' )
|
'--help' )
|
||||||
files_from_autoinstall=$(ls "${PORT_SCRIPTS_PATH}/pw_autoinstall")
|
files_from_autoinstall=$(ls "${PORT_SCRIPTS_PATH}/pw_autoinstall")
|
||||||
echo -e "
|
echo -e "
|
||||||
usege: [--reinstall] [--autoinstall]
|
use: [--reinstall] [--autoinstall]
|
||||||
|
|
||||||
--reinstall reinstall files of the portproton to default settings
|
--reinstall reinstall files of the portproton to default settings
|
||||||
--autoinstall [script_frome_pw_autoinstall] autoinstall from the list below:
|
--autoinstall [script_frome_pw_autoinstall] autoinstall from the list below:
|
||||||
@ -573,7 +571,10 @@ IFS=$IFS_OLD
|
|||||||
export PW_ADD_PREFIXES_TO_GUI="${PW_PREFIX_NAME^^}${PW_ADD_PREFIXES_TO_GUI}"
|
export PW_ADD_PREFIXES_TO_GUI="${PW_PREFIX_NAME^^}${PW_ADD_PREFIXES_TO_GUI}"
|
||||||
|
|
||||||
PW_ALL_DIST=$(ls "${PORT_WINE_PATH}/data/dist/" | sed -e s/"${PW_WINE_LG_VER}$//g" | sed -e s/"${PW_PROTON_LG_VER}$//g")
|
PW_ALL_DIST=$(ls "${PORT_WINE_PATH}/data/dist/" | sed -e s/"${PW_WINE_LG_VER}$//g" | sed -e s/"${PW_PROTON_LG_VER}$//g")
|
||||||
unset DIST_ADD_TO_GUI
|
if command -v wine &>/dev/null
|
||||||
|
then DIST_ADD_TO_GUI="!USE_SYSTEM_WINE"
|
||||||
|
else unset DIST_ADD_TO_GUI
|
||||||
|
fi
|
||||||
for DAIG in ${PW_ALL_DIST}
|
for DAIG in ${PW_ALL_DIST}
|
||||||
do
|
do
|
||||||
export DIST_ADD_TO_GUI="${DIST_ADD_TO_GUI}!${DAIG}"
|
export DIST_ADD_TO_GUI="${DIST_ADD_TO_GUI}!${DAIG}"
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
#Author: Castro-Fidel (linux-gaming.ru)
|
#Author: Castro-Fidel (linux-gaming.ru)
|
||||||
#SCRIPTS_NEXT_VERSION=2261
|
#SCRIPTS_NEXT_VERSION=2262
|
||||||
########################################################################
|
########################################################################
|
||||||
export PW_MANGOHUD="0"
|
export PW_MANGOHUD="0"
|
||||||
export DEFAULT_MANGOHUD_CONFIG="cpu_stats,cpu_temp,cpu_mhz,gpu_stats,gpu_temp,gpu_core_clock,gpu_mem_clock,vulkan_driver,gpu_name,vram,ram,frame_timing=1,time,arch,wine,toggle_hud=Shift_R+F12,resolution,vkbasalt,gamemode"
|
export DEFAULT_MANGOHUD_CONFIG="cpu_stats,cpu_temp,cpu_mhz,gpu_stats,gpu_temp,gpu_core_clock,gpu_mem_clock,vulkan_driver,gpu_name,vram,ram,frame_timing=1,time,arch,wine,toggle_hud=Shift_R+F12,resolution,vkbasalt,gamemode"
|
||||||
@ -8,6 +8,7 @@ export PW_VKBASALT_EFFECTS="Curves:cas"
|
|||||||
export PW_VKBASALT_FFX_CAS="0.66"
|
export PW_VKBASALT_FFX_CAS="0.66"
|
||||||
export ENABLE_VKBASALT=1
|
export ENABLE_VKBASALT=1
|
||||||
export GAMESCOPE_ARGS="-F fsr"
|
export GAMESCOPE_ARGS="-F fsr"
|
||||||
|
export PW_USE_RUNTIME="1"
|
||||||
export PW_RT_MOUNT_RO=("")
|
export PW_RT_MOUNT_RO=("")
|
||||||
export PW_RT_MOUNT_RW=("/media" "/mnt" "/run/media/${USER}" "${PORT_WINE_PATH}")
|
export PW_RT_MOUNT_RW=("/media" "/mnt" "/run/media/${USER}" "${PORT_WINE_PATH}")
|
||||||
#export PW_SANDBOX_HOME_PATH="${PORT_WINE_PATH}"
|
#export PW_SANDBOX_HOME_PATH="${PORT_WINE_PATH}"
|
||||||
|
Loading…
Reference in New Issue
Block a user