Commit 1c252a12 authored by Mikhail Tergoev's avatar Mikhail Tergoev

Scripts version 2097

parent 0fa5790b
...@@ -2,6 +2,19 @@ You can help us in the development of the project on the website: https://boosty ...@@ -2,6 +2,19 @@ You can help us in the development of the project on the website: https://boosty
----------------------------------------- -----------------------------------------
Changelog: Changelog:
###Scripts version 2097###
* accelerated launch of all applications in PortProton up to 200% depending on the system
* updated additional libraries "plugins_v4" (added support for GALLIUM_NINE)
* added "GALLIUM_NINE" mode selection (support for native DirectX9 on video card with MESA driver)
* new interface for WINETRICKS added settings tab
* added variable PW_USE_AMDVLK_DRIVER to EDIT_DB (use AMDVLK driver instead of RADV on AMD video cards)
* added label archiving when creating a prefix image
* added restoration of shortcuts after unpacking the prefix image (the path to the .exe file is corrected automatically)
* improved virtual desktop performance
* explorer changed to winefile (free disk space detection fixed)
* disabled loading of mono and gecko for League of Legends (speeds up the first launch)
* to force the use of AMD graphics cards instead of NVIDIA, you can add "export DRI_PRIME=1" to user.conf
###Scripts version 2096### ###Scripts version 2096###
* added check for LANG variable for PortProton to work on STEAM-DECK * added check for LANG variable for PortProton to work on STEAM-DECK
* added new interface for WINETRICKS * added new interface for WINETRICKS
......
...@@ -2,6 +2,19 @@ ...@@ -2,6 +2,19 @@
----------------------------------------- -----------------------------------------
История изменений: История изменений:
###Scripts version 2097###
* ускорен запуск всех приложений в PortProton до 200% в зависимости от системы
* обновлены дополнительные библиотеки "plugins_v4" (добавлена поддержка GALLIUM_NINE)
* добавлен выбор режима "GALLIUM_NINE" (поддержка нитивного DirectX9 на видеокарте с MESA драйвером)
* в новый интерфейс для WINETRICKS добавлена вкладка settings
* в EDIT_DB добавлена переменная PW_USE_AMDVLK_DRIVER (использовать драйвер AMDVLK вместо RADV на видеокартах от AMD)
* добавлено архивация ярлыков при создании образа префикса
* добавлено востановление ярлыков после распаковки образа префикса (путь до .exe файла корректируется автоматически)
* улучшена работа виртуального рабочего стола
* explorer изменен на winefile (исправлено определение свободного дискового пространства)
* отключена загрузка mono и gecko для League of Legends (ускоряет первый запуск)
* для принудительного использования AMD видеокарты, вместо NVIDIA, можно добавить "export DRI_PRIME=1" в user.conf
###Scripts version 2096### ###Scripts version 2096###
* добавлена проверка на переменную LANG для работы PortProton на STEAM-DECK * добавлена проверка на переменную LANG для работы PortProton на STEAM-DECK
* добавлен новый интерфейс для WINETRICKS * добавлен новый интерфейс для WINETRICKS
......
...@@ -186,45 +186,6 @@ unpack_tar () { ...@@ -186,45 +186,6 @@ unpack_tar () {
[ "${PIPESTATUS[0]}" != 0 ] && print_error "File $1 unpacking error." && return 1 || return 0 [ "${PIPESTATUS[0]}" != 0 ] && print_error "File $1 unpacking error." && return 1 || return 0
} }
pw_mangohud_check () {
export RUN_MANGOHUD_IN_SLR=""
if [[ "${PW_MANGOHUD}" == "1" ]] ; then
if [[ "${PW_VULKAN_USE}" = "0" ]] ; then
export RUN_MANGOHUD_IN_SLR="mangohud --dlsym"
else
export RUN_MANGOHUD_IN_SLR="mangohud"
fi
else
export DISABLE_MANGOHUD=1
fi
return 0
}
export -f pw_mangohud_check
pw_vkbasalt_check () {
if [[ ! -z "${ENABLE_VKBASALT}" && "${ENABLE_VKBASALT}" == 1 ]] ; then
if [ -z "${PW_VKBASALT_EFFECTS}" ] ; then
export PW_VKBASALT_EFFECTS="cas:FilmGrain2"
fi
sed -ri "s/effects = .*/effects = ${PW_VKBASALT_EFFECTS}/g" "${PORT_WINE_PATH}/data/vkBasalt.conf"
if [ -z "${PW_VKBASALT_FFX_CAS}" ] ; then
export PW_VKBASALT_FFX_CAS="0.7"
fi
sed -ri "s/casSharpness .*/casSharpness = ${PW_VKBASALT_FFX_CAS}/g" "${PORT_WINE_PATH}/data/vkBasalt.conf"
export VKBASALT_CONFIG_FILE="${PORT_WINE_PATH}/data/vkBasalt.conf"
sed -i s/'> = 0.05;'/'> = 0.035;'/ "${PW_WINELIB}/pressure-vessel/reshade/shaders/FilmGrain2.fx"
sed -i s/'> = 0.65;'/'> = 0.4;'/ "${PW_WINELIB}/pressure-vessel/reshade/shaders/Curves.fx"
sed -i s/'> = 0.8;'/'> = 0.9;'/ "${PW_WINELIB}/pressure-vessel/reshade/shaders/Bloom.fx"
if [ ! -z "${VK_INSTANCE_LAYERS}" ]
then export VK_INSTANCE_LAYERS="VK_LAYER_VKBASALT_post_processing:${VK_INSTANCE_LAYERS}"
else export VK_INSTANCE_LAYERS="VK_LAYER_VKBASALT_post_processing"
fi
else
export DISABLE_VKBASALT=1
fi
return 0
}
pw_clear_pfx () { pw_clear_pfx () {
try_remove_file "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg" try_remove_file "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg"
try_remove_file "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/user.reg" try_remove_file "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/user.reg"
...@@ -338,7 +299,7 @@ init_wine_ver () { ...@@ -338,7 +299,7 @@ init_wine_ver () {
if check_symlink "${WINEDIR}/share/wine/${mono_gecko_chk}" ; then if check_symlink "${WINEDIR}/share/wine/${mono_gecko_chk}" ; then
echo "${WINEDIR}/share/wine/${mono_gecko_chk} is symlink. OK." echo "${WINEDIR}/share/wine/${mono_gecko_chk} is symlink. OK."
elif [[ -d "${WINEDIR}/share/wine/${mono_gecko_chk}" ]] ; then elif [[ -d "${WINEDIR}/share/wine/${mono_gecko_chk}" ]] ; then
try_copy_dir "${WINEDIR}/share/wine/${mono_gecko_chk}" "${PORT_WINE_TMP_PATH}" try_copy_dir "${WINEDIR}/share/wine/${mono_gecko_chk}" "${PORT_WINE_TMP_PATH}" | sszen
try_remove_dir "${WINEDIR}/share/wine/${mono_gecko_chk}" try_remove_dir "${WINEDIR}/share/wine/${mono_gecko_chk}"
try_force_link_dir "${PORT_WINE_TMP_PATH}/${mono_gecko_chk}" "${WINEDIR}"/share/wine/ try_force_link_dir "${PORT_WINE_TMP_PATH}/${mono_gecko_chk}" "${WINEDIR}"/share/wine/
echo "Copy ${WINEDIR}/share/wine/${mono_gecko_chk} to tmp and create symlink to ${WINEDIR}/share/wine/. OK." echo "Copy ${WINEDIR}/share/wine/${mono_gecko_chk} to tmp and create symlink to ${WINEDIR}/share/wine/. OK."
...@@ -374,17 +335,13 @@ pw_init_runtime () { ...@@ -374,17 +335,13 @@ pw_init_runtime () {
PW_PV_OVERRIDES="/usr/lib/pressure-vessel/overrides/lib" PW_PV_OVERRIDES="/usr/lib/pressure-vessel/overrides/lib"
if [[ ! -z "${LD_LIBRARY_PATH}" ]] ; then if [[ ! -z "${LD_LIBRARY_PATH}" ]] ; then
if [[ -z "`echo ${PW_LD_LIBRARY_PATH} | grep "${WINEDIR}/lib64:${WINEDIR}/lib"`" ]] ; then export PW_LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib:${PW_WINELIB}/portable/lib/\$LIB:${PW_PV_OVERRIDES}/x86_64-linux-gnu/aliases:${PW_PV_OVERRIDES}/i386-linux-gnu/aliases:${LD_LIBRARY_PATH}"
export PW_LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib:${PW_WINELIB}/portable/lib/\$LIB:${PW_PV_OVERRIDES}/x86_64-linux-gnu/aliases:${PW_PV_OVERRIDES}/i386-linux-gnu/aliases:${LD_LIBRARY_PATH}"
fi
else else
export PW_LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib:${PW_WINELIB}/portable/lib/\$LIB:${PW_PV_OVERRIDES}/x86_64-linux-gnu/aliases:${PW_PV_OVERRIDES}/i386-linux-gnu/aliases" export PW_LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib:${PW_WINELIB}/portable/lib/\$LIB:${PW_PV_OVERRIDES}/x86_64-linux-gnu/aliases:${PW_PV_OVERRIDES}/i386-linux-gnu/aliases"
fi fi
if [[ ! -z "${VK_LAYER_PATH}" ]] export PW_VK_LAYER_PATH="${PW_WINELIB}/portable/share/vulkan/implicit_layer.d/"
then export VK_LAYER_PATH="${PW_WINELIB}/portable/share/vulkan/implicit_layer.d/:${VK_LAYER_PATH}"
else export VK_LAYER_PATH="${PW_WINELIB}/portable/share/vulkan/implicit_layer.d/"
fi
if [ ! -z ${PATH_TMP} ] if [ ! -z ${PATH_TMP} ]
then export PATH="${PATH_TMP}" then export PATH="${PATH_TMP}"
else export PATH_TMP="${PATH}" else export PATH_TMP="${PATH}"
...@@ -405,8 +362,6 @@ pw_init_runtime () { ...@@ -405,8 +362,6 @@ pw_init_runtime () {
else else
var_winedlloverride_update "winegstreamer=" var_winedlloverride_update "winegstreamer="
fi fi
# export STAGING_SHARED_MEMORY=1
# export PW_FORCE_LARGE_ADDRESS_AWARE=1
if [ "${PW_USE_RUNTIME}" = 0 ] ; then if [ "${PW_USE_RUNTIME}" = 0 ] ; then
export pw_runtime="" export pw_runtime=""
...@@ -447,7 +402,56 @@ pw_init_runtime () { ...@@ -447,7 +402,56 @@ pw_init_runtime () {
fi fi
} }
check_vk_icd_file () { pw_mangohud_check () {
if [[ "${PW_MANGOHUD}" == "1" ]] ; then
export MANGOHUD=1
MANGOHUD_LIB_NAME="libMangoHud.so"
if [[ "${PW_VULKAN_USE}" = "0" ]] ; then
MANGOHUD_LIB_NAME="libMangoHud_dlsym.so:${MANGOHUD_LIB_NAME}"
fi
if [[ ! -z "${PW_LD_PRELOAD}" ]]
then export PW_LD_PRELOAD="${PW_LD_PRELOAD}:${MANGOHUD_LIB_NAME}"
else export PW_LD_PRELOAD="${MANGOHUD_LIB_NAME}"
fi
if [[ ! -z "${PW_VK_INSTANCE_LAYERS}" ]]
then export PW_VK_INSTANCE_LAYERS="VK_LAYER_MANGOHUD_overlay:${PW_VK_INSTANCE_LAYERS}"
else export PW_VK_INSTANCE_LAYERS="VK_LAYER_MANGOHUD_overlay"
fi
print_info "MANGOHUD is enabled"
else
export DISABLE_MANGOHUD=1
print_info "MANGOHUD is disabled"
fi
return 0
}
pw_vkbasalt_check () {
if [[ "${ENABLE_VKBASALT}" == 1 ]] && [[ "${PW_VULKAN_USE}" != "0" ]] && [[ "${PW_VULKAN_USE}" != "3" ]] ; then
if [[ -z "${PW_VKBASALT_EFFECTS}" ]] ; then
export PW_VKBASALT_EFFECTS="cas:FilmGrain2"
fi
sed -ri "s/effects = .*/effects = ${PW_VKBASALT_EFFECTS}/g" "${PORT_WINE_PATH}/data/vkBasalt.conf"
if [[ -z "${PW_VKBASALT_FFX_CAS}" ]] ; then
export PW_VKBASALT_FFX_CAS="0.7"
fi
sed -ri "s/casSharpness .*/casSharpness = ${PW_VKBASALT_FFX_CAS}/g" "${PORT_WINE_PATH}/data/vkBasalt.conf"
export VKBASALT_CONFIG_FILE="${PORT_WINE_PATH}/data/vkBasalt.conf"
sed -i s/'> = 0.05;'/'> = 0.035;'/ "${PW_WINELIB}/pressure-vessel/reshade/shaders/FilmGrain2.fx"
sed -i s/'> = 0.65;'/'> = 0.4;'/ "${PW_WINELIB}/pressure-vessel/reshade/shaders/Curves.fx"
sed -i s/'> = 0.8;'/'> = 0.9;'/ "${PW_WINELIB}/pressure-vessel/reshade/shaders/Bloom.fx"
if [[ ! -z "${PW_VK_INSTANCE_LAYERS}" ]]
then export PW_VK_INSTANCE_LAYERS="VK_LAYER_VKBASALT_post_processing:${PW_VK_INSTANCE_LAYERS}"
else export PW_VK_INSTANCE_LAYERS="VK_LAYER_VKBASALT_post_processing"
fi
print_info "vkBasalt is enabled"
else
export DISABLE_VKBASALT=1
print_info "vkBasalt is disabled"
fi
return 0
}
check_nvidia_vk_icd_file () {
if [[ -f "/usr/share/vulkan/icd.d/nvidia_icd.json" ]] ; then if [[ -f "/usr/share/vulkan/icd.d/nvidia_icd.json" ]] ; then
export VK_ICD_FILENAMES="/usr/share/vulkan/icd.d/nvidia_icd.json" export VK_ICD_FILENAMES="/usr/share/vulkan/icd.d/nvidia_icd.json"
elif [[ -f "/etc/vulkan/icd.d/nvidia_icd.json" ]] ; then elif [[ -f "/etc/vulkan/icd.d/nvidia_icd.json" ]] ; then
...@@ -643,6 +647,11 @@ pw_init_db () { ...@@ -643,6 +647,11 @@ pw_init_db () {
export PORTWINE_DB=`echo "${portwine_exe}" | awk -F '/' 'NF>1{print $NF}' | sed s/".exe"/""/gi` export PORTWINE_DB=`echo "${portwine_exe}" | awk -F '/' 'NF>1{print $NF}' | sed s/".exe"/""/gi`
if [[ -f "${portwine_exe}".ppdb ]] ; then if [[ -f "${portwine_exe}".ppdb ]] ; then
export PORTWINE_DB_FILE="${portwine_exe}".ppdb export PORTWINE_DB_FILE="${portwine_exe}".ppdb
. "${PORTWINE_DB_FILE}"
if [[ -z "`ls -p "${PORT_WINE_PATH}/prefixes/" | grep -e "^${PW_PREFIX_NAME}/"`" ]] ; then
export PW_PREFIX_NAME=`echo "${portwine_exe}" | awk -F"/prefixes/" '{print $2}' | awk -F"/" '{print $1}'`
edit_db_from_gui PW_PREFIX_NAME
fi
else else
orig_IFS="$IFS" orig_IFS="$IFS"
IFS=$'\n' IFS=$'\n'
...@@ -666,13 +675,13 @@ pw_init_db () { ...@@ -666,13 +675,13 @@ pw_init_db () {
IFS="$orig_IFS" IFS="$orig_IFS"
if [[ -f "${PW_FIND_DB_FILE}" ]] && [[ -z `grep "^export PW_DISABLED_CREATE_DB=1" "${PW_FIND_DB_FILE}"` ]] ; then if [[ -f "${PW_FIND_DB_FILE}" ]] && [[ -z `grep "^export PW_DISABLED_CREATE_DB=1" "${PW_FIND_DB_FILE}"` ]] ; then
try_copy_file "${PW_FIND_DB_FILE}" "${portwine_exe}".ppdb try_copy_file "${PW_FIND_DB_FILE}" "${portwine_exe}".ppdb
export PORTWINE_DB_FILE="${portwine_exe}".ppdb fi
if [[ ! -z `echo "${portwine_exe}" | grep "/data/prefixes/"` ]] && \ export PORTWINE_DB_FILE="${portwine_exe}".ppdb
[[ -z `echo "${portwine_exe}" | grep "/data/prefixes/DEFAULT"` ]] if [[ ! -z `echo "${portwine_exe}" | grep "/data/prefixes/"` ]] && \
then [[ -z `echo "${portwine_exe}" | grep "/data/prefixes/DEFAULT/"` ]]
export PW_PREFIX_NAME=`echo "${portwine_exe}" | awk -F"/prefixes/" '{print $2}' | awk -F"/" '{print $1}'` then
edit_db_from_gui PW_PREFIX_NAME export PW_PREFIX_NAME=`echo "${portwine_exe}" | awk -F"/prefixes/" '{print $2}' | awk -F"/" '{print $1}'`
fi edit_db_from_gui PW_PREFIX_NAME
fi fi
fi fi
if [ ! -z "${PORTWINE_DB_FILE}" ]; then if [ ! -z "${PORTWINE_DB_FILE}" ]; then
......
...@@ -11,7 +11,7 @@ then ...@@ -11,7 +11,7 @@ then
export inst_set="Выбор" export inst_set="Выбор"
export inst_set_top="Установка PortWINE" export inst_set_top="Установка PortWINE"
export ss_done="Ярлык создан в корневом каталоге порта.\nДобавить его в МЕНЮ -> ИГРЫ?" export ss_done="Ярлык создан в корневом каталоге порта.\n Добавить его в МЕНЮ -> ИГРЫ?"
export inst_succ="Установка завершена успешно!" export inst_succ="Установка завершена успешно!"
...@@ -88,6 +88,7 @@ then ...@@ -88,6 +88,7 @@ then
export PW_D3D_EXTRAS_DISABLE_INFO='Отключить принудительное использование сторонних библиотек DirectX' export PW_D3D_EXTRAS_DISABLE_INFO='Отключить принудительное использование сторонних библиотек DirectX'
export PW_PRIME_RENDER_OFFLOAD_INFO='Включить дискретную видеокарту NVIDIA для ноутбуков с гибридной графикой (при поддержке установленого драйвера в ОС)' export PW_PRIME_RENDER_OFFLOAD_INFO='Включить дискретную видеокарту NVIDIA для ноутбуков с гибридной графикой (при поддержке установленого драйвера в ОС)'
export PW_USE_WINDOWS_7_INFO='Изменить версию WINDOWS 10 на WINDOWS 7 в префиксе' export PW_USE_WINDOWS_7_INFO='Изменить версию WINDOWS 10 на WINDOWS 7 в префиксе'
export PW_USE_AMDVLK_DRIVER_INFO='Использовать драйвер AMDVLK вместо RADV на видеокартах от AMD'
export PW_3DFX_INFO='Имитация старого графического ускорителя 3dfx (добавляет горизонтальные полосы)' export PW_3DFX_INFO='Имитация старого графического ускорителя 3dfx (добавляет горизонтальные полосы)'
export PW_AdaptiveSharpen_INFO='Увеличение резкости, можно использовать совместо с CAS' export PW_AdaptiveSharpen_INFO='Увеличение резкости, можно использовать совместо с CAS'
...@@ -118,7 +119,7 @@ then ...@@ -118,7 +119,7 @@ then
export inst_set="Sett..." export inst_set="Sett..."
export inst_set_top="PortWINE setting" export inst_set_top="PortWINE setting"
export ss_done="The shortcut was created in the ${portname} directory.\nAdd it to MENU -> GAMES?" export ss_done="The shortcut was created in the ${portname} directory.\n Add it to MENU -> GAMES?"
export inst_succ="The installation was successful." export inst_succ="The installation was successful."
export port_upd1="New update PortWINE" export port_upd1="New update PortWINE"
......
...@@ -13,7 +13,7 @@ export TEXT_OPSSL="" ...@@ -13,7 +13,7 @@ export TEXT_OPSSL=""
export PW_COMMENT_DB="${TEXT_OPSSL}Dwnload and start League of Legends can take a long time" export PW_COMMENT_DB="${TEXT_OPSSL}Dwnload and start League of Legends can take a long time"
##export PW_WINDOWS_VER=10 # Set windows version 10, 7 or XP ##export PW_WINDOWS_VER=10 # Set windows version 10, 7 or XP
##export PW_DLL_INSTALL="vcrun2017" # Install DDL in port prefix (used winetricks) ##export PW_DLL_INSTALL="vcrun2017" # Install DDL in port prefix (used winetricks)
##export WINEDLLOVERRIDES="blabla=n,b" export WINEDLLOVERRIDES="mscoree,mshtml="
export LAUNCH_PARAMETERS="--launch-product=league_of_legends --launch-patchline=live" # Additional launch options export LAUNCH_PARAMETERS="--launch-product=league_of_legends --launch-patchline=live" # Additional launch options
export PW_WINE_USE=WINE_LOL_GE_7.0-1 export PW_WINE_USE=WINE_LOL_GE_7.0-1
export PW_VULKAN_USE=1 export PW_VULKAN_USE=1
......
...@@ -25,7 +25,7 @@ export PW_DLL_INSTALL="d3dx9 d3dcompiler_43" # Install DDL in port prefix ...@@ -25,7 +25,7 @@ export PW_DLL_INSTALL="d3dx9 d3dcompiler_43" # Install DDL in port prefix
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options
##export PW_GUI_DISABLED_CS=1 # 1 = disabled GUI ##export PW_GUI_DISABLED_CS=1 # 1 = disabled GUI
##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue,dxr ##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue,dxr
export PW_WINDOWS_VER=7 # Set windows version 10, 7 or XP export PW_WINDOWS_VER=10 # Set windows version 10, 7 or XP
##export PW_VIRTUAL_DESKTOP=1 ##export PW_VIRTUAL_DESKTOP=1
##export DXVK_HUD=fps,devinfo ##export DXVK_HUD=fps,devinfo
##export PW_HEAP_DELAY_FREE=0 ##export PW_HEAP_DELAY_FREE=0
......
...@@ -15,3 +15,7 @@ export WINEDLLOVERRIDES="ucrtbase,xaudio2_7,xaudio2_8=n,b" ...@@ -15,3 +15,7 @@ export WINEDLLOVERRIDES="ucrtbase,xaudio2_7,xaudio2_8=n,b"
export PW_DLL_INSTALL="lucida vcrun2019" # Install DDL in port prefix (used winetricks) export PW_DLL_INSTALL="lucida vcrun2019" # Install DDL in port prefix (used winetricks)
##export PW_GUI_DISABLED_CS=1 ##export PW_GUI_DISABLED_CS=1
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
add_in_start_portwine () {
sed -i 's%<igbHardwareAccelerationEnabled> true </igbHardwareAccelerationEnabled>%<igbHardwareAccelerationEnabled> false </igbHardwareAccelerationEnabled>%' "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/users/${USER}/AppData/Roaming/Wargaming.net/WorldOfTanks/preferences.xml"
}
...@@ -7,6 +7,7 @@ export LAUNCH_PARAMETERS="--launch-product=league_of_legends --launch-patchline= ...@@ -7,6 +7,7 @@ export LAUNCH_PARAMETERS="--launch-product=league_of_legends --launch-patchline=
export PW_MUST_HAVE_DLL="" export PW_MUST_HAVE_DLL=""
export PW_VULKAN_USE=1 export PW_VULKAN_USE=1
export PW_WINE_USE=WINE_LOL_GE_7.0-1 export PW_WINE_USE=WINE_LOL_GE_7.0-1
export WINEDLLOVERRIDES="mscoree,mshtml="
if [ ! -d "${PORT_WINE_PATH}/data/dist/${PW_WINE_USE}" ] ; then if [ ! -d "${PORT_WINE_PATH}/data/dist/${PW_WINE_USE}" ] ; then
if try_download "https://github.com/Castro-Fidel/wine_builds/releases/download/${PW_WINE_USE}/${PW_WINE_USE}.tar.xz" \ if try_download "https://github.com/Castro-Fidel/wine_builds/releases/download/${PW_WINE_USE}/${PW_WINE_USE}.tar.xz" \
......
#!/usr/bin/env bash #!/usr/bin/env bash
#Author: Castro-Fidel (PortWINE-Linux.ru) #Author: Castro-Fidel (PortWINE-Linux.ru)
#SCRIPTS_NEXT_VERSION=2096 #SCRIPTS_NEXT_VERSION=2097
#PORT_NEXT_VERSION=97 #PORT_NEXT_VERSION=97
######################################################################## ########################################################################
export PW_MANGOHUD=1 export PW_MANGOHUD=1
export MANGOHUD_CONFIG=cpu_stats,cpu_temp,cpu_mhz,gpu_name,gpu_stats,gpu_temp,gpu_core_clock,gpu_mem_clock,vulkan_driver,fps,frametime,arch,frame_timing,time,font_size=24,position=top-left,vram,version,wine,no_display,resolution,background_alpha=0.5,toggle_hud=Shift_R+F12,vkbasalt export MANGOHUD_CONFIG=cpu_stats,cpu_temp,cpu_mhz,cpu_color=2e97cb,cpu_text=CPU,gpu_stats,gpu_temp,gpu_core_clock,gpu_mem_clock,vulkan_driver,gpu_name,gpu_color=2e9762,gpu_text=GPU,vram,vram_color=ad64c1,ram,ram_color=c26693,io_color=a491d3,frame_timing=1,frametime_color=00ff00,time,arch,wine,wine_color=eb5b5b,engine_color=eb5b5b,background_alpha=0.2,font_size=24,background_color=020202,text_color=ffffff,toggle_hud=Shift_R+F12,resolution,vkbasalt,gamemode,no_display
#export DXVK_HUD=compiler #export DXVK_HUD=compiler
#export GALLIUM_HUD=fps
#export ENABLE_VKBASALT=1 #export ENABLE_VKBASALT=1
#export PW_VIRTUAL_DESKTOP=1 #export PW_VIRTUAL_DESKTOP=1
#export PW_XKBD_RU_HACK=1 #export PW_XKBD_RU_HACK=1
...@@ -28,9 +29,11 @@ export GDK_BACKEND="x11" ...@@ -28,9 +29,11 @@ export GDK_BACKEND="x11"
export PW_USE_GSTREAMER="1" export PW_USE_GSTREAMER="1"
export PW_PREFIX_NAME="DEFAULT" export PW_PREFIX_NAME="DEFAULT"
export WINE_WIN_START="start.exe /i /unix" export WINE_WIN_START="start.exe /i /unix"
export STAGING_SHARED_MEMORY=1
export PW_FORCE_LARGE_ADDRESS_AWARE=1
###DEFAULT_WINE### ###DEFAULT_WINE###
export PW_WINE_USE=PROTON_GE export PW_WINE_USE=PROTON_GE
export PW_PLUGINS_VER="_v3" export PW_PLUGINS_VER="_v4"
###WINE_PROTON_STEAM### ###WINE_PROTON_STEAM###
export PW_STEAM_VER="7.0-1B" export PW_STEAM_VER="7.0-1B"
export PW_PROTON_STEAM_VER="PROTON_STEAM_${PW_STEAM_VER}" export PW_PROTON_STEAM_VER="PROTON_STEAM_${PW_STEAM_VER}"
...@@ -39,6 +42,9 @@ export PW_GE_VER="7-9" ...@@ -39,6 +42,9 @@ export PW_GE_VER="7-9"
export PW_PROTON_GE_VER="PROTON_GE_${PW_GE_VER}" export PW_PROTON_GE_VER="PROTON_GE_${PW_GE_VER}"
export WINE_FULLSCREEN_FSR="1" export WINE_FULLSCREEN_FSR="1"
export WINE_FULLSCREEN_FSR_STRENGTH="2" export WINE_FULLSCREEN_FSR_STRENGTH="2"
###WINE_PROTON_PW_FOR_GALLIUM_NINE###
export PW_PW_VER="7.5"
export PW_PROTON_PW_VER="PROTON_PW_${PW_PW_VER}"
################################################################# #################################################################
pw_install_dll_in_prefix () pw_install_dll_in_prefix ()
{ {
......
...@@ -118,10 +118,15 @@ pw_tray_icon () { ...@@ -118,10 +118,15 @@ pw_tray_icon () {
export -f tray_icon_click export -f tray_icon_click
pw_tray_winefile () { pw_tray_winefile () {
pw_run explorer pw_run winefile "C:\\users\\${USER}\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\"
} }
export -f pw_tray_winefile export -f pw_tray_winefile
pw_tray_taskmgr () {
pw_run taskmgr
}
export -f pw_tray_taskmgr
tray_icon_click_exit () { tray_icon_click_exit () {
pw_stop_progress_bar pw_stop_progress_bar
stop_portwine stop_portwine
...@@ -135,6 +140,7 @@ pw_tray_icon () { ...@@ -135,6 +140,7 @@ pw_tray_icon () {
--tooltip="PortProton" \ --tooltip="PortProton" \
--menu="| \ --menu="| \
<<< WINEFILE >>>!bash -c pw_tray_winefile!"$PW_GUI_ICON_PATH/port_winefile.png"| \ <<< WINEFILE >>>!bash -c pw_tray_winefile!"$PW_GUI_ICON_PATH/port_winefile.png"| \
<<< TASKMNR >>>!bash -c pw_tray_taskmgr!"$PW_GUI_ICON_PATH/port_winefile.png"| \
<<< CHANGE LOG >>>!bash -c open_changelog!"$PW_GUI_ICON_PATH/port_changelog.png"| \ <<< CHANGE LOG >>>!bash -c open_changelog!"$PW_GUI_ICON_PATH/port_changelog.png"| \
<<< FORCE EXIT >>>!bash -c tray_icon_click_exit!"$PW_GUI_ICON_PATH/port_exit.png"|" & <<< FORCE EXIT >>>!bash -c tray_icon_click_exit!"$PW_GUI_ICON_PATH/port_exit.png"|" &
return 0 return 0
...@@ -181,7 +187,7 @@ pw_gui_for_edit_db () { ...@@ -181,7 +187,7 @@ pw_gui_for_edit_db () {
--field=":LBL" "" \ --field=":LBL" "" \
--field="MANGOHUD FPS LIMIT (0-disabled):SCL" ${FPS_LIMIT_VAR} 1> "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" & --field="MANGOHUD FPS LIMIT (0-disabled):SCL" ${FPS_LIMIT_VAR} 1> "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" &
"${pw_yad_new}" --paned --key="$KEY_EDIT_DB_GUI" --title "EDIT_DB" --text-align=center --height="520" \ "${pw_yad_new}" --paned --key="$KEY_EDIT_DB_GUI" --title "EDIT_DB" --text-align=center --height="550" \
--text "Change settings in database file for ${PORTWINE_DB}\n" --separator=" " --borders=10 --center \ --text "Change settings in database file for ${PORTWINE_DB}\n" --separator=" " --borders=10 --center \
--window-icon="$PW_GUI_ICON_PATH/port_proton.png" --button="CANCEL":1 --button="OPEN DB FILE":150 --button="SAVE CHANGES":0 --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --button="CANCEL":1 --button="OPEN DB FILE":150 --button="SAVE CHANGES":0
YAD_STATUS="$?" YAD_STATUS="$?"
...@@ -392,3 +398,39 @@ gui_vkBasalt () { ...@@ -392,3 +398,39 @@ gui_vkBasalt () {
/usr/bin/env bash -c ${pw_full_command_line[*]} & /usr/bin/env bash -c ${pw_full_command_line[*]} &
exit 0 exit 0
} }
portwine_create_shortcut () {
pw_create_gui_png
name_desktop="${PORTPROTON_NAME}"
echo "[Desktop Entry]" > "${PORT_WINE_PATH}/${name_desktop}.desktop"
echo "Name=${PORTPROTON_NAME}" >> "${PORT_WINE_PATH}/${name_desktop}.desktop"
if [ -z "${PW_CHECK_AUTOINSTAL}" ]
then echo "Exec=env "\"${PORT_SCRIPTS_PATH}/start.sh\" \"${portwine_exe}\" "" \
>> "${PORT_WINE_PATH}/${name_desktop}.desktop"
else echo "Exec=env "\"${PORT_SCRIPTS_PATH}/start.sh\" \"${portwine_exe}\" "" \
>> "${PORT_WINE_PATH}/${name_desktop}.desktop"
fi
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 "Path="${PORT_SCRIPTS_PATH}/"" >> "${PORT_WINE_PATH}/${name_desktop}.desktop"
echo "Icon="${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png"" >> "${PORT_WINE_PATH}/${name_desktop}.desktop"
chmod u+x "${PORT_WINE_PATH}/${name_desktop}.desktop"
"${pw_yad}" --title="${inst_set}." --form --center --borders=5 \
--window-icon "$PW_GUI_ICON_PATH/port_proton.png" \
--image "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" \
--field=" <b>${name_desktop}.desktop</b>:LBL" "" \
--field=" ${ss_done}:LBL" "" \
--button='CANCEL'!!"":1 \
--button='OK'!!"":0
if [ $? -eq "0" ]; then
try_remove_file "${HOME}/.local/share/applications/${name_desktop}.desktop"
cp -f "${PORT_WINE_PATH}/${name_desktop}.desktop" ${HOME}/.local/share/applications/
fi
xdg-open "${PORT_WINE_PATH}" 2>1 >/dev/null &
}
portwine_delete_shortcut () {
rm -f "`grep -il "${portwine_exe}" "${HOME}/.local/share/applications"/*.desktop`"
rm -f "`grep -il "${portwine_exe}" "${PORT_WINE_PATH}"/*.desktop`"
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment