Commit 73edeb4b authored by Mikhail Tergoev's avatar Mikhail Tergoev

Scripts version 2255

parent f0e4c82b
...@@ -2,6 +2,10 @@ You can help us in the development of the project on the website: https://linux- ...@@ -2,6 +2,10 @@ You can help us in the development of the project on the website: https://linux-
---------------------------------------- ----------------------------------------
Changelog: Changelog:
###Scripts version 2255### Date: 12.02.2024 / Download update size: 15 megabytes
* the portable versions of MANGOHUD and GAMESCOPE are disabled for Steam Deck in Gaming Mode
* small additional script improvements
###Scripts version 2254### Date: 11.02.2024 / Download update size: 15 megabytes ###Scripts version 2254### Date: 11.02.2024 / Download update size: 15 megabytes
* PortProton interface restart has been accelerated * PortProton interface restart has been accelerated
* added priority for using the system gamemode if it is installed (thanks to Boria138) * added priority for using the system gamemode if it is installed (thanks to Boria138)
......
...@@ -2,6 +2,10 @@ ...@@ -2,6 +2,10 @@
----------------------------------------- -----------------------------------------
История изменений: История изменений:
###Scripts version 2255### Дата: 11.02.2024 / Размер скачиваемого обновления: 15 мегабайт
* для Steam Deck в режиме Gaming Mode отключены портативные версии MANGOHUD и GAMESCOPE
* небольшие дополнительные улучшения скриптов
###Scripts version 2254### Дата: 11.02.2024 / Размер скачиваемого обновления: 15 мегабайт ###Scripts version 2254### Дата: 11.02.2024 / Размер скачиваемого обновления: 15 мегабайт
* ускорен перезапуск интерфейса PortProton * ускорен перезапуск интерфейса PortProton
* добавлен приоритет использования системного gamemode если он установлен (спасибо Boria138) * добавлен приоритет использования системного gamemode если он установлен (спасибо Boria138)
......
...@@ -252,6 +252,13 @@ check_start_from_steam () { ...@@ -252,6 +252,13 @@ check_start_from_steam () {
fi fi
} }
check_gamescope_session () {
if echo "${DESKTOP_SESSION}" | grep -i "gamescope" &>/dev/null
then return 0
else return 1
fi
}
unpack_tar_zst () { unpack_tar_zst () {
set -o pipefail set -o pipefail
unset PW_ZSTD_PORT unset PW_ZSTD_PORT
...@@ -469,9 +476,9 @@ init_wine_ver () { ...@@ -469,9 +476,9 @@ init_wine_ver () {
pw_init_runtime () { pw_init_runtime () {
if grep -q -E '(ROSA Fresh|RED OS)' "/etc/os-release" ; 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/"
elif grep -q "altlinux" "/etc/os-release" ; then elif grep -i "altlinux" "/etc/os-release" &>/dev/null ; then
export LIBGL_DRIVERS_PATH="/usr/lib/X11/modules/dri:/usr/lib64/X11/modules/dri" export LIBGL_DRIVERS_PATH="/usr/lib/X11/modules/dri:/usr/lib64/X11/modules/dri"
fi fi
...@@ -553,7 +560,7 @@ pw_init_runtime () { ...@@ -553,7 +560,7 @@ pw_init_runtime () {
} }
pw_mangohud_check () { pw_mangohud_check () {
if [[ "${PW_MANGOHUD}" == "1" ]] ; 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
...@@ -564,10 +571,10 @@ pw_mangohud_check () { ...@@ -564,10 +571,10 @@ pw_mangohud_check () {
else export PW_LD_PRELOAD="${MANGOHUD_LIB_NAME}" else export PW_LD_PRELOAD="${MANGOHUD_LIB_NAME}"
fi fi
var_vk_istance_layers_config_update "VK_LAYER_MANGOHUD_overlay64:VK_LAYER_MANGOHUD_overlay32" var_vk_istance_layers_config_update "VK_LAYER_MANGOHUD_overlay64:VK_LAYER_MANGOHUD_overlay32"
print_info "MANGOHUD is enabled" print_info "Portable MANGOHUD is enabled"
else else
export PW_MANGOHUD_SLR='DISABLE_MANGOHUD=1' export PW_MANGOHUD_SLR=""
print_info "MANGOHUD is disabled" print_info "Portable MANGOHUD is disabled"
fi fi
return 0 return 0
} }
...@@ -1152,19 +1159,40 @@ pw_create_gui_png () { ...@@ -1152,19 +1159,40 @@ pw_create_gui_png () {
if [[ ! -f "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" ]] ; then if [[ ! -f "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" ]] ; then
try_remove_dir "${PORT_WINE_TMP_PATH}/tmp_img" try_remove_dir "${PORT_WINE_TMP_PATH}/tmp_img"
create_new_dir "${PORT_WINE_TMP_PATH}/tmp_img" create_new_dir "${PORT_WINE_TMP_PATH}/tmp_img"
env LD_LIBRARY_PATH="${PW_PLUGINS_PATH}/portable/lib/lib64" "${PW_PLUGINS_PATH}/portable/bin/wrestool" -x --output="${PORT_WINE_TMP_PATH}/tmp_img/" -t14 "$(readlink -f "${portwine_exe}")" if command -v wrestool &>/dev/null ; then
wrestool -x --output="${PORT_WINE_TMP_PATH}/tmp_img/" -t14 "$(readlink -f "${portwine_exe}")"
else
env LD_LIBRARY_PATH="${PW_PLUGINS_PATH}/portable/lib/lib64" "${PW_PLUGINS_PATH}/portable/bin/wrestool" \
-x --output="${PORT_WINE_TMP_PATH}/tmp_img/" -t14 "$(readlink -f "${portwine_exe}")"
fi
cp "$(ls -S -1 "${PORT_WINE_TMP_PATH}/tmp_img/"*".ico" | head -n 1)" "${PORT_WINE_TMP_PATH}/tmp_img/${PORTPROTON_NAME}.ico" cp "$(ls -S -1 "${PORT_WINE_TMP_PATH}/tmp_img/"*".ico" | head -n 1)" "${PORT_WINE_TMP_PATH}/tmp_img/${PORTPROTON_NAME}.ico"
env LD_LIBRARY_PATH="${PW_PLUGINS_PATH}/portable/lib/lib64" "${PW_PLUGINS_PATH}/portable/bin/icotool" -x --width=${PW_RESIZE_TO} --height=${PW_RESIZE_TO} --output="${PORT_WINE_TMP_PATH}/tmp_img/" "${PORT_WINE_TMP_PATH}/tmp_img/${PORTPROTON_NAME}.ico"
if command -v icotool &>/dev/null ; then
icotool -x --width=${PW_RESIZE_TO} --height=${PW_RESIZE_TO} --output="${PORT_WINE_TMP_PATH}/tmp_img/" \
"${PORT_WINE_TMP_PATH}/tmp_img/${PORTPROTON_NAME}.ico"
else
env LD_LIBRARY_PATH="${PW_PLUGINS_PATH}/portable/lib/lib64" "${PW_PLUGINS_PATH}/portable/bin/icotool" \
-x --width=${PW_RESIZE_TO} --height=${PW_RESIZE_TO} --output="${PORT_WINE_TMP_PATH}/tmp_img/" \
"${PORT_WINE_TMP_PATH}/tmp_img/${PORTPROTON_NAME}.ico"
fi
if [[ ! -f "$(ls -S -1 "${PORT_WINE_TMP_PATH}/tmp_img/"*".png" | grep "${PW_RESIZE_TO}x${PW_RESIZE_TO}")" ]] ; then if [[ ! -f "$(ls -S -1 "${PORT_WINE_TMP_PATH}/tmp_img/"*".png" | grep "${PW_RESIZE_TO}x${PW_RESIZE_TO}")" ]] ; then
env LD_LIBRARY_PATH="${PW_PLUGINS_PATH}/portable/lib/lib64" "${PW_PLUGINS_PATH}/portable/bin/icotool" -x --output="${PORT_WINE_TMP_PATH}/tmp_img/" "${PORT_WINE_TMP_PATH}/tmp_img/${PORTPROTON_NAME}.ico" if command -v icotool &>/dev/null ; then
icotool -x --output="${PORT_WINE_TMP_PATH}/tmp_img/" "${PORT_WINE_TMP_PATH}/tmp_img/${PORTPROTON_NAME}.ico"
else
env LD_LIBRARY_PATH="${PW_PLUGINS_PATH}/portable/lib/lib64" "${PW_PLUGINS_PATH}/portable/bin/icotool" \
-x --output="${PORT_WINE_TMP_PATH}/tmp_img/" "${PORT_WINE_TMP_PATH}/tmp_img/${PORTPROTON_NAME}.ico"
fi
cp "$(ls -S -1 "${PORT_WINE_TMP_PATH}/tmp_img/"*".png" | head -n 1)" "${PORT_WINE_TMP_PATH}/tmp_img/${PORTPROTON_NAME}.png" cp "$(ls -S -1 "${PORT_WINE_TMP_PATH}/tmp_img/"*".png" | head -n 1)" "${PORT_WINE_TMP_PATH}/tmp_img/${PORTPROTON_NAME}.png"
else else
cp "$(ls -S -1 "${PORT_WINE_TMP_PATH}/tmp_img/"*".png" | grep "${PW_RESIZE_TO}x${PW_RESIZE_TO}" | head -n 1)" "${PORT_WINE_TMP_PATH}/tmp_img/${PORTPROTON_NAME}.png" cp "$(ls -S -1 "${PORT_WINE_TMP_PATH}/tmp_img/"*".png" | grep "${PW_RESIZE_TO}x${PW_RESIZE_TO}" | head -n 1)" \
"${PORT_WINE_TMP_PATH}/tmp_img/${PORTPROTON_NAME}.png"
fi fi
cp -f "${PORT_WINE_TMP_PATH}/tmp_img/${PORTPROTON_NAME}.png" "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" cp -f "${PORT_WINE_TMP_PATH}/tmp_img/${PORTPROTON_NAME}.png" "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png"
fi fi
if [[ -z "`file "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" | grep "${PW_RESIZE_TO} x ${PW_RESIZE_TO}"`" ]] && \ if [[ -z "`file "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" | grep "${PW_RESIZE_TO} x ${PW_RESIZE_TO}"`" ]] \
[[ -x "`command -v "convert" 2>/dev/null`" ]] && [[ -f "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" ]] ; then && command -v convert &>/dev/null \
&& [[ -f "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" ]]
then
convert "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" -resize ${PW_RESIZE_TO}x${PW_RESIZE_TO} "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" convert "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" -resize ${PW_RESIZE_TO}x${PW_RESIZE_TO} "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png"
fi fi
if [[ -z "${PW_ICON_FOR_YAD}" ]] ; then if [[ -z "${PW_ICON_FOR_YAD}" ]] ; then
......
...@@ -136,7 +136,6 @@ if [[ "${update_loc}" == "RUS" ]] ; then ...@@ -136,7 +136,6 @@ if [[ "${update_loc}" == "RUS" ]] ; then
export PW_HIDE_NVIDIA_GPU_INFO='Замаскировать все функции используемые для видеокарт NVIDIA' export PW_HIDE_NVIDIA_GPU_INFO='Замаскировать все функции используемые для видеокарт NVIDIA'
export PW_FORCE_USE_VSYNC_INFO='Принудительное включение вертикальной синхронизации' export PW_FORCE_USE_VSYNC_INFO='Принудительное включение вертикальной синхронизации'
export PW_VIRTUAL_DESKTOP_INFO='Включить запуск приложение в виртуальном рабочем столе WINE' export PW_VIRTUAL_DESKTOP_INFO='Включить запуск приложение в виртуальном рабочем столе WINE'
export PW_WINEDBG_DISABLE_INFO='Отключить все функции отладки WINE (Рекомендуется не изменять значение)'
export PW_USE_TERMINAL_INFO='Запускать приложение в терминале' export PW_USE_TERMINAL_INFO='Запускать приложение в терминале'
export PW_HEAP_DELAY_FREE_INFO='Включить задержку освобождения некоторой памяти, чтобы обойти ошибки, связанные с использованием приложения после освобождения памяти.' export PW_HEAP_DELAY_FREE_INFO='Включить задержку освобождения некоторой памяти, чтобы обойти ошибки, связанные с использованием приложения после освобождения памяти.'
export PW_NO_WRITE_WATCH_INFO='Очень опасный способ взлома таймера записи в памяти в ntdll. Это улучшает производительность некоторых очень специфических игр. (Рекомендуется не изменять значение)' export PW_NO_WRITE_WATCH_INFO='Очень опасный способ взлома таймера записи в памяти в ntdll. Это улучшает производительность некоторых очень специфических игр. (Рекомендуется не изменять значение)'
...@@ -541,7 +540,6 @@ elif [[ "${update_loc}" == "ENG" ]] ; then ...@@ -541,7 +540,6 @@ elif [[ "${update_loc}" == "ENG" ]] ; then
export PW_HIDE_NVIDIA_GPU_INFO='Disguise all features used for NVIDIA graphics cards' export PW_HIDE_NVIDIA_GPU_INFO='Disguise all features used for NVIDIA graphics cards'
export PW_FORCE_USE_VSYNC_INFO='Forced activation of vertical sync' export PW_FORCE_USE_VSYNC_INFO='Forced activation of vertical sync'
export PW_VIRTUAL_DESKTOP_INFO='Enable the application to run in the WINE virtual desktop' export PW_VIRTUAL_DESKTOP_INFO='Enable the application to run in the WINE virtual desktop'
export PW_WINEDBG_DISABLE_INFO='Disable all WINE debugging functions (It is recommended not to change the value)'
export PW_USE_TERMINAL_INFO='Run the application in the terminal' export PW_USE_TERMINAL_INFO='Run the application in the terminal'
export PW_HEAP_DELAY_FREE_INFO='Include a delay in releasing some memory to bypass errors associated with using the application after the memory is released' export PW_HEAP_DELAY_FREE_INFO='Include a delay in releasing some memory to bypass errors associated with using the application after the memory is released'
export PW_NO_WRITE_WATCH_INFO='A very dangerous way to hack the memory write timer in ntdll. This improves the performance of some very specific games. (It is recommended not to change the value.)' export PW_NO_WRITE_WATCH_INFO='A very dangerous way to hack the memory write timer in ntdll. This improves the performance of some very specific games. (It is recommended not to change the value.)'
......
...@@ -20,7 +20,6 @@ export PW_DLL_INSTALL="" ...@@ -20,7 +20,6 @@ export PW_DLL_INSTALL=""
##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_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_HIDE_NVIDIA_GPU=0
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT ##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_USE_GAMEMODE=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=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 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 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
......
...@@ -6,5 +6,4 @@ ...@@ -6,5 +6,4 @@
export PW_VULKAN_USE=1 #dxvk, vkd3d or 0 for OpenGL export PW_VULKAN_USE=1 #dxvk, vkd3d or 0 for OpenGL
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 WINEDLLOVERRIDES="xaudio2_7=" export WINEDLLOVERRIDES="xaudio2_7="
export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
export PW_USE_D3D_EXTRAS=0 export PW_USE_D3D_EXTRAS=0
...@@ -38,7 +38,6 @@ ...@@ -38,7 +38,6 @@
##export WINEARCH=win32 # defaut = win64 ##export WINEARCH=win32 # defaut = win64
##export WINEPREFIX= ##export WINEPREFIX=
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_USE_TERMINAL=1 # Force run in terminal ##export PW_USE_TERMINAL=1 # Force run in terminal
##export PW_GUI_DISABLED_CS=1 # 1 = disabled GUI ##export PW_GUI_DISABLED_CS=1 # 1 = disabled GUI
......
...@@ -12,7 +12,6 @@ export PW_VULKAN_USE=1 ...@@ -12,7 +12,6 @@ export PW_VULKAN_USE=1
export PW_MANGOHUD=0 export PW_MANGOHUD=0
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=1 # 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_NO_ESYNC=1 # Do not use eventfd-based in-process synchronization primitives
export PW_WINEDBG_DISABLE=1
export PW_USE_GAMEMODE=0 # Force disabele gamemod export PW_USE_GAMEMODE=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 PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
export PW_DLL_INSTALL="" export PW_DLL_INSTALL=""
......
...@@ -115,10 +115,10 @@ start_portwine () { ...@@ -115,10 +115,10 @@ start_portwine () {
var_vkd3d_config_update single_queue var_vkd3d_config_update single_queue
fi fi
if [[ "${PW_USE_GAMESCOPE}" == 1 ]] && command -v gamescope &>/dev/null ; then if [[ "${PW_USE_GAMESCOPE}" == 1 ]] && command -v gamescope &>/dev/null && ! check_gamescope_session ; then
# Workaround for https://gitlab.freedesktop.org/mesa/mesa/-/issues/6029 # Workaround for https://gitlab.freedesktop.org/mesa/mesa/-/issues/6029
if [[ -d "/sys/module/i915" ]] ; then if [[ -d "/sys/module/i915" ]] ; then
export INTEL_DEBUG=norbc export INTEL_DEBUG="norbc"
fi fi
if [[ "${PW_GPU_USE}" != "disabled" ]] ; then if [[ "${PW_GPU_USE}" != "disabled" ]] ; then
PW_vendorID="$("$PW_VULKANINFO_PORTABLE" 2>/dev/null | grep -B3 "${PW_GPU_USE}" | grep vendorID | sort -u | awk -F'0x' '{print $2}')" PW_vendorID="$("$PW_VULKANINFO_PORTABLE" 2>/dev/null | grep -B3 "${PW_GPU_USE}" | grep vendorID | sort -u | awk -F'0x' '{print $2}')"
...@@ -128,11 +128,11 @@ start_portwine () { ...@@ -128,11 +128,11 @@ start_portwine () {
unset PW_ID_VIDEO unset PW_ID_VIDEO
fi fi
export PW_RUN_GAMESCOPE="gamescope -o 30 ${PW_ID_VIDEO} ${GAMESCOPE_ARGS} --" export PW_RUN_GAMESCOPE="gamescope -o 30 ${PW_ID_VIDEO} ${GAMESCOPE_ARGS} --"
export PW_WINE_FULLSCREEN_FSR=0 export PW_WINE_FULLSCREEN_FSR="0"
export vk_xwayland_wait_ready=false export vk_xwayland_wait_ready="false"
else else
export PW_USE_GAMESCOPE=0 export PW_USE_GAMESCOPE="0"
unset PW_RUN_GAMESCOPE INTEL_DEBUG vk_xwayland_wait_ready export PW_RUN_GAMESCOPE=""
fi fi
enabled_fake_nvidia_videocard () enabled_fake_nvidia_videocard ()
...@@ -729,6 +729,13 @@ pw_run () { ...@@ -729,6 +729,13 @@ pw_run () {
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_LOG}" == 1 ]] ; then
if check_start_from_steam ; 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 \
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 "WINEDLLOVERRIDES=${WINEDLLOVERRIDES}" >> "${PW_LOG_TO_FILE}"
echo "------------------------------------" >> "${PW_LOG_TO_FILE}" echo "------------------------------------" >> "${PW_LOG_TO_FILE}"
echo "Log WINE:" >> "${PW_LOG_TO_FILE}" echo "Log WINE:" >> "${PW_LOG_TO_FILE}"
...@@ -869,6 +876,7 @@ export install_ver=`cat "${PORT_WINE_TMP_PATH}/${portname}_ver" | head -n 1` ...@@ -869,6 +876,7 @@ export install_ver=`cat "${PORT_WINE_TMP_PATH}/${portname}_ver" | head -n 1`
export WINETRICKS_DOWNLOADER="curl" export WINETRICKS_DOWNLOADER="curl"
export USER_CONF="${PORT_WINE_PATH}/data/user.conf" export USER_CONF="${PORT_WINE_PATH}/data/user.conf"
check_user_conf check_user_conf
check_variables PW_LOG "0"
if [[ -z "${INSTALLING_PORT}" ]] ; then if [[ -z "${INSTALLING_PORT}" ]] ; then
. "${USER_CONF}" . "${USER_CONF}"
......
...@@ -32,10 +32,14 @@ else ...@@ -32,10 +32,14 @@ else
chmod u+x "${PORT_WINE_PATH}/${name_desktop}.desktop" chmod u+x "${PORT_WINE_PATH}/${name_desktop}.desktop"
fi fi
if [[ ! -f /usr/bin/portproton ]]; then if [[ ! -f /usr/bin/portproton ]] ; then
cp -f "${PORT_WINE_PATH}/${name_desktop}.desktop" ${HOME}/.local/share/applications/ cp -f "${PORT_WINE_PATH}/${name_desktop}.desktop" ${HOME}/.local/share/applications/
fi fi
if grep "SteamOS" "/etc/os-release" &>/dev/null ; then
cp -f "${PORT_WINE_PATH}/${name_desktop}.desktop" "$(xdg-user-dir DESKTOP)"
fi
update-desktop-database -q "${HOME}/.local/share/applications" update-desktop-database -q "${HOME}/.local/share/applications"
if ! grep -i "flatpak" /etc/os-release &>/dev/null ; then if ! grep -i "flatpak" /etc/os-release &>/dev/null ; then
......
...@@ -99,7 +99,6 @@ portwine_launch () { ...@@ -99,7 +99,6 @@ portwine_launch () {
portwine_start_debug () { portwine_start_debug () {
kill_portwine kill_portwine
export PW_LOG=1 export PW_LOG=1
export PW_WINEDBG_DISABLE=0
if [[ -z "$VULKAN_DRIVER_NAME" ]] || [[ "$VULKAN_DRIVER_NAME" == "llvmpipe" ]] ; then if [[ -z "$VULKAN_DRIVER_NAME" ]] || [[ "$VULKAN_DRIVER_NAME" == "llvmpipe" ]] ; then
yad_info "Attention working version of vulkan not detected!\nIt is recommended to run games in OpenGL (low performance possible)!" yad_info "Attention working version of vulkan not detected!\nIt is recommended to run games in OpenGL (low performance possible)!"
fi fi
...@@ -495,7 +494,7 @@ pw_edit_db () { ...@@ -495,7 +494,7 @@ pw_edit_db () {
/usr/bin/env bash -c ${pw_full_command_line[*]} & /usr/bin/env bash -c ${pw_full_command_line[*]} &
exit 0 exit 0
fi fi
# PW_FORCE_USE_VSYNC PW_WINEDBG_DISABLE HEAP_DELAY_FREE # PW_FORCE_USE_VSYNC HEAP_DELAY_FREE
} }
pw_autoinstall_from_db () { pw_autoinstall_from_db () {
...@@ -504,7 +503,6 @@ pw_autoinstall_from_db () { ...@@ -504,7 +503,6 @@ pw_autoinstall_from_db () {
export PW_USE_GAMEMODE=0 export PW_USE_GAMEMODE=0
export PW_CHECK_AUTOINSTAL=1 export PW_CHECK_AUTOINSTAL=1
export PW_GUI_DISABLED_CS=1 export PW_GUI_DISABLED_CS=1
export PW_WINEDBG_DISABLE=1
export PW_NO_WRITE_WATCH=0 export PW_NO_WRITE_WATCH=0
export PW_VULKAN_USE=1 export PW_VULKAN_USE=1
export PW_USE_EAC_AND_BE=0 export PW_USE_EAC_AND_BE=0
......
#!/usr/bin/env bash #!/usr/bin/env bash
#Author: Castro-Fidel (linux-gaming.ru) #Author: Castro-Fidel (linux-gaming.ru)
#SCRIPTS_NEXT_VERSION=2254 #SCRIPTS_NEXT_VERSION=2255
######################################################################## ########################################################################
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"
...@@ -14,9 +14,7 @@ export PW_RT_MOUNT_RW=("/media" "/mnt" "/run/media/${USER}" "${PORT_WINE_PATH}") ...@@ -14,9 +14,7 @@ export PW_RT_MOUNT_RW=("/media" "/mnt" "/run/media/${USER}" "${PORT_WINE_PATH}")
export PW_NO_ESYNC="1" export PW_NO_ESYNC="1"
export PW_USE_GAMEMODE="1" export PW_USE_GAMEMODE="1"
export PW_FORCE_USE_VSYNC="2" export PW_FORCE_USE_VSYNC="2"
export PW_LOG="0"
export PW_USE_TERMINAL="0" export PW_USE_TERMINAL="0"
export PW_WINEDBG_DISABLE="1"
export PW_WINDOWS_VER="10" export PW_WINDOWS_VER="10"
export WINEARCH="win64" export WINEARCH="win64"
export PW_LIBS_VER="_v46" export PW_LIBS_VER="_v46"
......
...@@ -781,13 +781,15 @@ portwine_create_shortcut () { ...@@ -781,13 +781,15 @@ portwine_create_shortcut () {
} }
portwine_delete_shortcut () { portwine_delete_shortcut () {
rm -f "$(grep -il "${portwine_exe}" "${HOME}/.local/share/applications"/*.desktop)" $>/dev/null rm -f "$(grep -il "${portwine_exe}" "${HOME}/.local/share/applications"/*.desktop)" &>/dev/null
rm -f "$(grep -il "${portwine_exe}" "${PORT_WINE_PATH}"/*.desktop)" $>/dev/null rm -f "$(grep -il "${portwine_exe}" "${PORT_WINE_PATH}"/*.desktop)" &>/dev/null
# rm -f "$(grep -il "${portwine_exe}" "${STEAM_SCRIPTS}"/*.sh)" $>/dev/null # rm -f "$(grep -il "${portwine_exe}" "${STEAM_SCRIPTS}"/*.sh)" &>/dev/null
if [[ -d "${HOME}/Desktop" ]] ; then if [[ -d "${HOME}/Desktop" ]] ; then
rm -f "$(grep -il "${portwine_exe}" "${HOME}/Desktop"/*.desktop)" $>/dev/null rm -f "$(grep -il "${portwine_exe}" "${HOME}/Desktop"/*.desktop)" &>/dev/null
elif [[ -d "${HOME}/Рабочий стол" ]] ; then elif [[ -d "${HOME}/Рабочий стол" ]] ; then
rm -f "$(grep -il "${portwine_exe}" "${HOME}/Рабочий стол"/*.desktop)" $>/dev/null rm -f "$(grep -il "${portwine_exe}" "${HOME}/Рабочий стол"/*.desktop)" &>/dev/null
elif [[ $(xdg-user-dir DESKTOP) ]] ; then
rm -f "$(grep -il "${portwine_exe}" "$(xdg-user-dir DESKTOP)"/*.desktop)" &>/dev/null
fi fi
} }
......
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