forked from CastroFidel/PortWINE
		
	Compare commits
	
		
			10 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 
						 | 
					1b632c2764 | ||
| 
						 | 
					ef0b8f7689 | ||
| 
						 | 
					c818fdb2ad | ||
| 
						 | 
					aec5cd6083 | ||
| 
						 | 
					7021c0355b | ||
| 
						 | 
					72329c2477 | ||
| 
						 | 
					9f7cd37c00 | ||
| 
						 | 
					6e1639a85c | ||
| 
						 | 
					23cd198c39 | ||
| 
						 | 
					87fae9e16a | 
@@ -2,20 +2,112 @@
 | 
			
		||||
-----------------------------------------
 | 
			
		||||
В планах:
 | 
			
		||||
* создать ветку beta на github и сделать выбор версии внутри порта
 | 
			
		||||
* проверить Overwatch
 | 
			
		||||
* перенести reset в GUI PortProton
 | 
			
		||||
* добавить фикс установки dotnet
 | 
			
		||||
* добавить кнопку очистки префикса в PortProton
 | 
			
		||||
* проверка версий и обновления скриптов из https://github.com/Castro-Fidel/PortWINE/archive/refs/heads/master.zip
 | 
			
		||||
* EDIT DB открывается не у всех
 | 
			
		||||
* пересоздать удаление PortProton (чистка ярлыков в меню с помощью grep "путь до порта")
 | 
			
		||||
* проверить windows steam под PortProton
 | 
			
		||||
* проверить windows steam и под PortProton работают только с Proton GE
 | 
			
		||||
* создать defaut префикс и сделать авто симлинки в другие префиксы (games, programm files, users)
 | 
			
		||||
* иконка в трей для PortProton
 | 
			
		||||
* добавить контроль за окнами для правильного отключения прогресс бара
 | 
			
		||||
* добавлено отображение скорости интернета и примерный остаток времени при скачивании библиотек libs, gecko, mono
 | 
			
		||||
* зарабатывать на жизнь развитием проекта с помощью вашей подписки на https://boosty.to/portwine-linux.ru
 | 
			
		||||
-----------------------------------------
 | 
			
		||||
###PortProton-80### 18.05.2021 ###Scripts version 1076###
 | 
			
		||||
###Scripts version 1097###
 | 
			
		||||
* HOTFIX - исправлена ошибка в скрипте при монтировании
 | 
			
		||||
 | 
			
		||||
###Scripts version 1096###
 | 
			
		||||
* HOTFIX - определение переменной PW_RUNTIME возвращено в скрипт runlib
 | 
			
		||||
 | 
			
		||||
###Scripts version 1095###
 | 
			
		||||
* для систем основанных на Arch добавлен автоматический проброс /run/media
 | 
			
		||||
* все основные настройки контейнера перенесены в скрипт var: PW_RT_MOUNT_RO - только для чтения; PW_RT_MOUNT_RW - чтение и запись (пути писать в ковычках и разделять пробелом) Пример: PW_RT_MOUNT_RW=("/media" "/mnt" "/run/media/${USER}")
 | 
			
		||||
* vcrun2019 снова устанавливается в штатном режиме за счет использования версии winetricks от GE (https://raw.githubusercontent.com/GloriousEggroll/protonfixes/master/winetricks)
 | 
			
		||||
 | 
			
		||||
###Scripts version 1094###
 | 
			
		||||
* немного ускорена инициализация префикса
 | 
			
		||||
* расширена функция чистки префикса
 | 
			
		||||
* исправлено определение использования RUNTIME в логах
 | 
			
		||||
* ${HOME}/.PortWINE под контейнетом всегда доступен, но только для чтения
 | 
			
		||||
* добавлен автоматический проброс /media и /mnt в контейнер порта что позволяет запускать игры и программы установленные не в домашнем каталоге, как если бы порт работал без контейнера
 | 
			
		||||
 | 
			
		||||
###Scripts version 1093###
 | 
			
		||||
* возвращена переменная в скрипте var: WINE_WIN_START="start.exe /i /unix" что возвращает запуск .bat файлов и решает проблему с запуском игры WoT из WGC
 | 
			
		||||
 | 
			
		||||
###Scripts version 1092###
 | 
			
		||||
* исправлена автоустановка WGC под запуском в контейнерном режиме
 | 
			
		||||
* добавлен фикс работы старых версий порта с новыми скриптами
 | 
			
		||||
* частичный откат кода со скриптов от PortProton-78
 | 
			
		||||
* Установка xact_x64 совместно c xact по умолчанию с любым db файлом
 | 
			
		||||
* контейнерный режим включен по умолчанию и отключается в скрипте "каталог_порта/data/scripts/var" переменной PW_USE_RUNTIME=(1 - включен; 0 - выключен)
 | 
			
		||||
 | 
			
		||||
###Scripts version 1091###
 | 
			
		||||
* Установка xact по умолчанию с любым db файлом
 | 
			
		||||
 | 
			
		||||
###PortProton-85### 27.05.2021 ###Scripts version 1090###
 | 
			
		||||
* для подготовки к релизу используется стабилная версия wine: Proton 6.3-4
 | 
			
		||||
* до 4-x прибавка в ФПС в играх DX12 (на моем железе: HZD - x4; Graven - x2; Cyberpunk2077 - x1,25)
 | 
			
		||||
* глобальное изменение использование переменных (системных, wine и vulkan)
 | 
			
		||||
* в лог файл добавлена информация о текущей версии скриптов и используется ли RUNTIME
 | 
			
		||||
* возврат оригинальных значений системных переменных: PATH, LD_LIBRARY_PATH после окончания использования порта
 | 
			
		||||
* HOTFIX - убрано повторное исполнение функции START_PORTWINE во время запуска debug
 | 
			
		||||
* HOTFIX - исправлены возможные проблемы старых игр использующие WMF
 | 
			
		||||
* HOTFIX - ошибки скачивания vcrun2019 на чистом префиксе
 | 
			
		||||
 | 
			
		||||
###PortProton-84### 23.05.2021 ###Scripts version 1089### - BETA
 | 
			
		||||
* обновлен WINE до версии Proton 6.9 GE 1
 | 
			
		||||
* контейнерный режим включен по умолчанию и отключается с помощью раскомментирования переменной в скрипте var #export PW_USE_RUNTIME=1
 | 
			
		||||
* более чем в 2 раза увеличена производительность игр под VKD3D (Cyberpunk2077 и т.п.) за счет исползования dxgi из dxvk под vkd3d
 | 
			
		||||
* для префикса по умолчанию включена версия windows 10
 | 
			
		||||
* реализовано создание символьных ссылок с библиотек gstreamer в контейнер runtime для исправления ошибок WMF (gst)
 | 
			
		||||
 | 
			
		||||
###Scripts version 1088###
 | 
			
		||||
* реализовано создание символьных ссылок с библиотек wine в контейнер runtime для исправления ошибок XACT (faudio)
 | 
			
		||||
 | 
			
		||||
###Scripts version 1087###
 | 
			
		||||
* добавлен вопрос об обновлении скриптов
 | 
			
		||||
* HOTFIX - полностью убрана переменная WINE_WIN_START
 | 
			
		||||
 | 
			
		||||
###Scripts version 1086###
 | 
			
		||||
* HOTFIX - изменена переменная export WINE_WIN_START="start.exe /b"
 | 
			
		||||
 | 
			
		||||
###Scripts version 1085###
 | 
			
		||||
* в скрипт var добавлена и временно включена переменная export PW_USE_RUNTIME=1 (требуется рашение проблемы с загрузкой faudio)
 | 
			
		||||
* добавлено автоматическое создание каталога "${WINEPREFIX}/drive_c/users/Public/Documents/Steam"
 | 
			
		||||
* HOTFIX - обновление скриптов после установки происходило только при повторном запуске порта
 | 
			
		||||
 | 
			
		||||
###Scripts version 1084###
 | 
			
		||||
* фикc запуска gui winetricks c терминалом
 | 
			
		||||
 | 
			
		||||
###Scripts version 1083###
 | 
			
		||||
* временно вернул работу winetricks без использования контейнера
 | 
			
		||||
 | 
			
		||||
###Scripts version 1082###
 | 
			
		||||
* HOTFIX - смена версии cabextract внутри libs_v14
 | 
			
		||||
 | 
			
		||||
###Scripts version 1081###
 | 
			
		||||
* HOTFIX - автоматичкское удаление wget из libs_v14, что бы winetricks использовал curl для скачивания
 | 
			
		||||
 | 
			
		||||
###PortProton-80### 19.05.2021 ###Scripts version 1080###
 | 
			
		||||
* обновлен WINE до версии Proton 6.8 GE 1
 | 
			
		||||
* обновлен контейнер в libs_v14 до версии Debian 10.9
 | 
			
		||||
* добавлен аргумент запуска RUNTIME "--filesystem=${PORT_WINE_PATH}" для возможности установки и использования порта вне $HOME
 | 
			
		||||
* перенос создания символьной ссылки на drive_c из скрипта setup в runlib
 | 
			
		||||
 | 
			
		||||
###Scripts version 1079###
 | 
			
		||||
* HOTFIX - libs_v13 исправленна битая ссылка c "runtime/lib64/ld-linux-x86-64.so.2" на "../lib/x86_64-linux-gnu/ld-2.15.so"
 | 
			
		||||
 | 
			
		||||
###Scripts version 1078###
 | 
			
		||||
* добавлена проверка подключения к интернету с помощью ping перед использованием curl (значительно ускоряет запуск порта при плохом соединении с интернетом)
 | 
			
		||||
* обновлены libs_v12 (пересобран контейнер и значительно уменьшен его размер)
 | 
			
		||||
* HOTFIX - запуск winetricks из GUI PortProton (контейнер уже умеет работать с winetricks, но всё еще есть недочеты по отображению gui)
 | 
			
		||||
 | 
			
		||||
###Scripts version 1077###
 | 
			
		||||
* HOTFIX - исправлено повторное скачивание libs_v11
 | 
			
		||||
 | 
			
		||||
###Scripts version 1076###
 | 
			
		||||
* при любом использовании winetricks добавлен аргумент -r (для автоматического перекачивания библиотек, если хеш-суммы не совпадают)
 | 
			
		||||
* winetricks запущенный с GUI работает без контейнерного режима
 | 
			
		||||
* временно глобально отклчени gamemode в скрипте var (необходим тест)
 | 
			
		||||
 
 | 
			
		||||
										
											Binary file not shown.
										
									
								
							
										
											Binary file not shown.
										
									
								
							@@ -2,7 +2,7 @@
 | 
			
		||||
# rather than when creating the swap chain. Some games that start
 | 
			
		||||
# rendering with a different graphics API may require this option,
 | 
			
		||||
# or otherwise the window may stay black.
 | 
			
		||||
# 
 | 
			
		||||
#
 | 
			
		||||
# Supported values: True, False
 | 
			
		||||
 | 
			
		||||
# dxgi.deferSurfaceCreation = False
 | 
			
		||||
@@ -12,7 +12,7 @@
 | 
			
		||||
# Enforce a stricter maximum frame latency. Overrides the application
 | 
			
		||||
# setting specified by calling IDXGIDevice::SetMaximumFrameLatency.
 | 
			
		||||
# Setting this to 0 will have no effect.
 | 
			
		||||
# 
 | 
			
		||||
#
 | 
			
		||||
# Supported values : 0 - 16
 | 
			
		||||
 | 
			
		||||
# dxgi.maxFrameLatency = 0
 | 
			
		||||
@@ -73,7 +73,7 @@
 | 
			
		||||
# True enables the mailbox present mode in case regular Vsync is disabled.
 | 
			
		||||
# This should avoid tearing, but may be unsupported on some systems
 | 
			
		||||
# or require setting dxgi.numBackBuffers to a higher value in order
 | 
			
		||||
# to work properly. 
 | 
			
		||||
# to work properly.
 | 
			
		||||
#
 | 
			
		||||
# False enables the relaxed fifo present mode in case regular Vsync is enabled.
 | 
			
		||||
# This should result in tearing but reduce stutter if FPS are too low,
 | 
			
		||||
@@ -116,14 +116,14 @@
 | 
			
		||||
 | 
			
		||||
# Overrides the maximum allowed tessellation factor. This can be used to
 | 
			
		||||
# improve performance in titles which overuse tessellation.
 | 
			
		||||
# 
 | 
			
		||||
#
 | 
			
		||||
# Supported values: Any number between 8 and 64
 | 
			
		||||
 | 
			
		||||
# d3d11.maxTessFactor = 0
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Enables relaxed pipeline barriers around UAV writes.
 | 
			
		||||
# 
 | 
			
		||||
#
 | 
			
		||||
# This may improve performance in some games, but may also introduce
 | 
			
		||||
# rendering issues. Please don't report bugs with the option enabled.
 | 
			
		||||
#
 | 
			
		||||
@@ -135,7 +135,7 @@
 | 
			
		||||
# Overrides anisotropic filtering for all samplers. Set this to a positive
 | 
			
		||||
# value to enable AF for all samplers in the game, or to 0 in order to
 | 
			
		||||
# disable AF entirely. Negative values will have no effect.
 | 
			
		||||
# 
 | 
			
		||||
#
 | 
			
		||||
# Supported values: Any number between 0 and 16
 | 
			
		||||
 | 
			
		||||
# d3d11.samplerAnisotropy = -1
 | 
			
		||||
@@ -168,7 +168,7 @@
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Sets number of pipeline compiler threads.
 | 
			
		||||
# 
 | 
			
		||||
#
 | 
			
		||||
# Supported values:
 | 
			
		||||
# - 0 to automatically determine the number of threads to use
 | 
			
		||||
# - any positive number to enforce the thread count
 | 
			
		||||
@@ -177,13 +177,13 @@
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Toggles raw SSBO usage.
 | 
			
		||||
# 
 | 
			
		||||
#
 | 
			
		||||
# Uses storage buffers to implement raw and structured buffer
 | 
			
		||||
# views. Enabled by default on hardware which has a storage
 | 
			
		||||
# buffer offset alignment requirement of 4 Bytes (e.g. AMD).
 | 
			
		||||
# Enabling this may improve performance, but is not safe on
 | 
			
		||||
# hardware with higher alignment requirements.
 | 
			
		||||
# 
 | 
			
		||||
#
 | 
			
		||||
# Supported values:
 | 
			
		||||
# - Auto: Don't change the default
 | 
			
		||||
# - True, False: Always enable / disable
 | 
			
		||||
@@ -192,13 +192,13 @@
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Toggles early discard.
 | 
			
		||||
# 
 | 
			
		||||
#
 | 
			
		||||
# Uses subgroup operations to determine whether it is safe to
 | 
			
		||||
# discard fragments before the end of a fragment shader. This
 | 
			
		||||
# is enabled by default on all drivers except RADV and Nvidia.
 | 
			
		||||
# Enabling this may improve or degrade performance depending
 | 
			
		||||
# on the game and hardware, or cause other issues.
 | 
			
		||||
# 
 | 
			
		||||
#
 | 
			
		||||
# Supported values:
 | 
			
		||||
# - Auto: Don't change the default
 | 
			
		||||
# - True, False: Always enable / disable
 | 
			
		||||
@@ -221,19 +221,19 @@
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Sets enabled HUD elements
 | 
			
		||||
# 
 | 
			
		||||
#
 | 
			
		||||
# Behaves like the DXVK_HUD environment variable if the
 | 
			
		||||
# environment variable is not set, otherwise it will be
 | 
			
		||||
# ignored. The syntax is identical.
 | 
			
		||||
 | 
			
		||||
# dxvk.hud = 
 | 
			
		||||
# dxvk.hud =
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Reported shader model
 | 
			
		||||
#
 | 
			
		||||
# The shader model to state that we support in the device
 | 
			
		||||
# capabilities that the applicatation queries.
 | 
			
		||||
# 
 | 
			
		||||
#
 | 
			
		||||
# Supported values:
 | 
			
		||||
# - 1: Shader Model 1
 | 
			
		||||
# - 2: Shader Model 2
 | 
			
		||||
@@ -243,7 +243,7 @@
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Evict Managed on Unlock
 | 
			
		||||
# 
 | 
			
		||||
#
 | 
			
		||||
# Decides whether we should evict managed resources from
 | 
			
		||||
# system memory when they are unlocked entirely.
 | 
			
		||||
#
 | 
			
		||||
@@ -254,7 +254,7 @@
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# DPI Awareness
 | 
			
		||||
# 
 | 
			
		||||
#
 | 
			
		||||
# Decides whether we should call SetProcessDPIAware on device
 | 
			
		||||
# creation. Helps avoid upscaling blur in modern Windows on
 | 
			
		||||
# Hi-DPI screens/devices.
 | 
			
		||||
@@ -266,7 +266,7 @@
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Strict Constant Copies
 | 
			
		||||
# 
 | 
			
		||||
#
 | 
			
		||||
# Decides whether we should always copy defined constants to
 | 
			
		||||
# the UBO when relative addressing is used, or only when the
 | 
			
		||||
# relative addressing starts a defined constant.
 | 
			
		||||
@@ -278,7 +278,7 @@
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Strict Pow
 | 
			
		||||
# 
 | 
			
		||||
#
 | 
			
		||||
# Decides whether we have an opSelect for handling pow(0,0) = 0
 | 
			
		||||
# otherwise it becomes undefined.
 | 
			
		||||
#
 | 
			
		||||
@@ -309,7 +309,7 @@
 | 
			
		||||
# - Memory Tracking Testing: True, False
 | 
			
		||||
 | 
			
		||||
# d3d9.maxAvailableMemory = 1024
 | 
			
		||||
d3d9.memoryTrackTest = False
 | 
			
		||||
# d3d9.memoryTrackTest = False
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
# Force enable/disable floating point quirk emulation
 | 
			
		||||
 
 | 
			
		||||
@@ -3,13 +3,14 @@
 | 
			
		||||
########################################################################
 | 
			
		||||
export PW_USER_TEMP="$WINEPREFIX/drive_c/users/${USER}/Temp"
 | 
			
		||||
export PW_FORCE_LARGE_ADDRESS_AWARE=0
 | 
			
		||||
export PW_FORCE_DISABLED_GAMEMOD=1
 | 
			
		||||
export PW_USE_GAMEMODE=0
 | 
			
		||||
export PW_CHECK_AUTOINSTAL=1
 | 
			
		||||
export PW_WINEDBG_DISABLE=1
 | 
			
		||||
export PW_NO_WRITE_WATCH=0
 | 
			
		||||
export PW_VULKAN_USE=0
 | 
			
		||||
export PW_NO_FSYNC=1
 | 
			
		||||
export PW_NO_ESYNC=1
 | 
			
		||||
unset PORTWINE_CREATE_SHORTCUT_NAME
 | 
			
		||||
 | 
			
		||||
PW_WGC () {
 | 
			
		||||
    export LAUNCH_PARAMETERS=("/SILENT" "/SP-")
 | 
			
		||||
@@ -18,9 +19,27 @@ PW_WGC () {
 | 
			
		||||
    START_PORTWINE
 | 
			
		||||
    if try_download "https://redirect.wargaming.net/WGC/Wargaming_Game_Center_Install_WoT_${WGC_LOC}.exe" "${PW_AUTOINSTALL_EXE}"
 | 
			
		||||
    then
 | 
			
		||||
        while true ; do
 | 
			
		||||
            if [ "${PW_USE_RUNTIME}" = 0 ]
 | 
			
		||||
            then echo "PW_USE_RUNTIME: `echo $PW_USE_RUNTIME`" & break
 | 
			
		||||
            fi
 | 
			
		||||
            if  [ -z `pgrep wgc.exe` ] ; then
 | 
			
		||||
                echo -e "PID WGC not found"
 | 
			
		||||
                sleep 2
 | 
			
		||||
            else
 | 
			
		||||
                echo -e "PID WGC: `pgrep wgc.exe` \nPID Cont: `pidof -s bwrap`"
 | 
			
		||||
                    while   [ ! -z `pgrep wgc.exe` ]; do
 | 
			
		||||
                        echo -e "PID WGC found: `pgrep wgc.exe` \nPID_Status: `echo $?`"
 | 
			
		||||
                        sleep 2
 | 
			
		||||
                        KILL_PORTWINE
 | 
			
		||||
                    done
 | 
			
		||||
                break
 | 
			
		||||
            fi
 | 
			
		||||
        done &
 | 
			
		||||
        PW_START_PROGRESS_BAR_CS "Starting WGC installation..."
 | 
			
		||||
        PW_RUN "${PW_AUTOINSTALL_EXE}"
 | 
			
		||||
        portwine_exe="$WINEPREFIX/drive_c/ProgramData/Wargaming.net/GameCenter/wgc.exe"
 | 
			
		||||
        portwine_exe="$WINEPREFIX/drive_c/ProgramData/Wargaming.net/GameCenter/wgc_api/wgc_api.exe"
 | 
			
		||||
        export PORTWINE_CREATE_SHORTCUT_NAME="Wargaming Game Center"
 | 
			
		||||
        try_remove_file "${PW_AUTOINSTALL_EXE}"
 | 
			
		||||
        KILL_PORTWINE
 | 
			
		||||
        PORTWINE_CREATE_SHORTCUT
 | 
			
		||||
@@ -54,11 +73,11 @@ PW_BATTLE_NET () {
 | 
			
		||||
        PW_START_PROGRESS_BAR "Installing the Battle Net. Please wait..."
 | 
			
		||||
        PW_RUN "${PW_AUTOINSTALL_EXE}"
 | 
			
		||||
        while [ ! -z `pgrep Battle.net* | head -n 1` ] && [ -z `pgrep Battle.net.exe | head -n 1` ] ; do sleep 2 ; done
 | 
			
		||||
        KILL_PORTWINE      
 | 
			
		||||
        KILL_PORTWINE
 | 
			
		||||
        portwine_exe=`find "$WINEPREFIX/drive_c/" -type f -name "Battle.net.exe"`
 | 
			
		||||
        PW_STOP_PROGRESS
 | 
			
		||||
        PORTWINE_CREATE_SHORTCUT
 | 
			
		||||
        try_remove_file "${PW_AUTOINSTALL_EXE}"    
 | 
			
		||||
        try_remove_file "${PW_AUTOINSTALL_EXE}"
 | 
			
		||||
    fi
 | 
			
		||||
    STOP_PORTWINE
 | 
			
		||||
}
 | 
			
		||||
@@ -72,8 +91,8 @@ PW_EPIC () {
 | 
			
		||||
        PW_START_PROGRESS_BAR_BLOCK "Installing Epic Games Launcher. Please wait..."
 | 
			
		||||
        PW_RUN msiexec /i "${PW_AUTOINSTALL_EXE}" &
 | 
			
		||||
        sleep 10
 | 
			
		||||
        if [ ! -z `pgrep msiexec* | head -n 1` ] ; then 
 | 
			
		||||
            while [ ! -z `pgrep msiexec* | head -n 1` ] || [ ! -z `pgrep rundll32* | head -n 1` ] ; do 
 | 
			
		||||
        if [ ! -z `pgrep msiexec* | head -n 1` ] ; then
 | 
			
		||||
            while [ ! -z `pgrep msiexec* | head -n 1` ] || [ ! -z `pgrep rundll32* | head -n 1` ] ; do
 | 
			
		||||
                [ ! -z `pgrep rundll32* | head -n 1` ] && kill -n 9 `pgrep rundll32* | head -n 1` && echo "Kill rundll32.exe"
 | 
			
		||||
                sleep 5
 | 
			
		||||
            done
 | 
			
		||||
 
 | 
			
		||||
@@ -29,6 +29,13 @@ then
 | 
			
		||||
	export port_upd5="Напомнить позже"
 | 
			
		||||
	export port_upd6="Больше не напоминать"
 | 
			
		||||
 | 
			
		||||
	export scripts_upd1="Обновление скриптов"
 | 
			
		||||
	export scripts_upd2="Доступно обновление скриптов для ${portname}\n"
 | 
			
		||||
	export scripts_upd3="Действие:"
 | 
			
		||||
	export scripts_upd4="Обновить сейчас"
 | 
			
		||||
	export scripts_upd5="Напомнить позже"
 | 
			
		||||
	export scripts_upd6="Больше не напоминать"
 | 
			
		||||
 | 
			
		||||
	export port_del1="Удаление $portname"
 | 
			
		||||
	export port_del2="Вы действительно хотите удалить $portname,\nс установленным в него клиентом?\n"
 | 
			
		||||
	export port_del3="Удалить?!"
 | 
			
		||||
@@ -104,8 +111,8 @@ then
 | 
			
		||||
	export ss_default_2="Old startup, with questions and logs"
 | 
			
		||||
	export ss_ogl_1="Use OpenGL. (DirectX to OpenGL)"
 | 
			
		||||
	export ss_ogl_2="Use VKD3D. (DX12 to vulkan)"
 | 
			
		||||
	export ss_ogl_3="Use DXVK and D9VK. (DX9-DX11 to Vulkan)" 
 | 
			
		||||
	export ss_done="The shortcut was created in the ${portname} directory.\nAdd it to MENU -> GAMES?" 
 | 
			
		||||
	export ss_ogl_3="Use DXVK and D9VK. (DX9-DX11 to Vulkan)"
 | 
			
		||||
	export ss_done="The shortcut was created in the ${portname} directory.\nAdd it to MENU -> GAMES?"
 | 
			
		||||
 | 
			
		||||
	export inst_succ="The installation was successful."
 | 
			
		||||
 | 
			
		||||
@@ -116,7 +123,14 @@ then
 | 
			
		||||
	export port_upd5="Remind me later"
 | 
			
		||||
	export port_upd6="Do not remind me"
 | 
			
		||||
 | 
			
		||||
	export port_del1="Remove $portname" 
 | 
			
		||||
	export scripts_upd1="New update for scripts"
 | 
			
		||||
	export scripts_upd2="Scripts update avialable for ${portname}\n"
 | 
			
		||||
	export scripts_upd3="Action:"
 | 
			
		||||
	export scripts_upd4="Updating now"
 | 
			
		||||
	export scripts_upd5="Remind me later"
 | 
			
		||||
	export scripts_upd6="Do not remind me"
 | 
			
		||||
 | 
			
		||||
	export port_del1="Remove $portname"
 | 
			
		||||
	export port_del2="Are you sure you want to delete the ${portname}?\n"
 | 
			
		||||
	export port_del3="Remove?!"
 | 
			
		||||
	export port_del4="No!"
 | 
			
		||||
 
 | 
			
		||||
@@ -23,7 +23,7 @@ export WINEDLLOVERRIDES="xinput1_3,d3dcompiler_43=n,b"
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										6
									
								
								data_from_portwine/scripts/portwine_db/Alien_Isolation
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								data_from_portwine/scripts/portwine_db/Alien_Isolation
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,6 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
#Author: garrett
 | 
			
		||||
#AI.exe
 | 
			
		||||
#Rating=5
 | 
			
		||||
########################################################
 | 
			
		||||
export PW_VULKAN_USE=dxvk
 | 
			
		||||
							
								
								
									
										41
									
								
								data_from_portwine/scripts/portwine_db/Arthur
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								data_from_portwine/scripts/portwine_db/Arthur
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,41 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
#Author: akai
 | 
			
		||||
#Arthur.exe
 | 
			
		||||
#Rating=1-5
 | 
			
		||||
########################################################
 | 
			
		||||
export PW_VULKAN_USE=dxvk
 | 
			
		||||
#####################examples###########################
 | 
			
		||||
##export PW_COMMENT_DB="blablabla"
 | 
			
		||||
##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 WINEDLLOVERRIDES="blabla=n,b"
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL
 | 
			
		||||
##export PW_DXVK_VER=1.8.1 
 | 
			
		||||
##export PW_VKD3D_VER=2.2
 | 
			
		||||
##export PW_DXR_ON=1
 | 
			
		||||
##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
 | 
			
		||||
##export PW_NVAPI_DISABLE=1
 | 
			
		||||
##export PW_OLD_GL_STRING=1
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=1
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_VKD3D_FEATURE_LEVEL=1
 | 
			
		||||
##export PW_DXGI_FROM_DXVK=1
 | 
			
		||||
##export PW_VIRTUAL_DESKTOP=1
 | 
			
		||||
##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue
 | 
			
		||||
##export ENABLE_VKBASALT=1
 | 
			
		||||
##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 PULSE_LATENCY_MSEC=90                    # Fix crackling audio in games
 | 
			
		||||
##export PW_USE_GAMEMODE=1              # 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_NO_WRITE_WATCH=1                      # 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_HEAP_DELAY_FREE=1
 | 
			
		||||
##export PW_WINE_ALLOW_XIM=1                      # Disable XIM support until libx11 >= 1.7 is widespread
 | 
			
		||||
##export WINEARCH=win32                           # defaut = win64
 | 
			
		||||
##export WINEPREFIX=
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_USE_TERMINAL=1                        # Force run in terminal
 | 
			
		||||
##export PW_LOG=1                                 # Enable debug mode fo terminal 
 | 
			
		||||
##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI 
 | 
			
		||||
##ADD_IN_START_PORTWINE () { commands ; }
 | 
			
		||||
@@ -19,12 +19,12 @@ export WINEDLLOVERRIDES="Crash*,REDEngineErrorReporter.exe="
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=1              # Force disabele gamemod
 | 
			
		||||
##export PW_USE_GAMEMODE=1              # Force disabele gamemod
 | 
			
		||||
##export PW_FORCE_LARGE_ADDRESS_AWARE=1           # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
 | 
			
		||||
export PULSE_LATENCY_MSEC=40                    # Fix crackling audio in games
 | 
			
		||||
export LAUNCH_PARAMETERS=("--launcher-skip")                # Additional launch options
 | 
			
		||||
##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI 
 | 
			
		||||
##export VKD3D_CONFIG=force_bindless_texel_buffer
 | 
			
		||||
export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue
 | 
			
		||||
export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP
 | 
			
		||||
##export PW_VIRTUAL_DESKTOP=1
 | 
			
		||||
##export DXVK_HUD=fps,devinfo
 | 
			
		||||
 
 | 
			
		||||
@@ -17,7 +17,7 @@ export PW_NO_ESYNC=1        # Do not use eventfd-based in-process synchronizatio
 | 
			
		||||
#export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
#export PW_FORCE_USE_VSYNC=2         # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
#export PW_WINEDBG_DISABLE=0
 | 
			
		||||
#export PW_FORCE_DISABLED_GAMEMOD=1              # Force disabele gamemod
 | 
			
		||||
#export PW_USE_GAMEMODE=1              # Force disabele gamemod
 | 
			
		||||
#export PW_FORCE_LARGE_ADDRESS_AWARE=1           # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
 | 
			
		||||
export PULSE_LATENCY_MSEC=60
 | 
			
		||||
#export PW_DLL_INSTALL="foo bar"
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										11
									
								
								data_from_portwine/scripts/portwine_db/DOOMx64vk
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								data_from_portwine/scripts/portwine_db/DOOMx64vk
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,11 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
#Author: nix
 | 
			
		||||
#DOOMx64.exe
 | 
			
		||||
#DOOMx64vk.exe
 | 
			
		||||
#Rating=1-5
 | 
			
		||||
########################################################
 | 
			
		||||
export PW_VULKAN_USE=dxvk
 | 
			
		||||
#####################examples###########################
 | 
			
		||||
export PW_COMMENT_DB="DOOM 2016"
 | 
			
		||||
export PW_DLL_INSTALL="xact xact_x64 vcrun2019"
 | 
			
		||||
export WINEDLLOVERRIDES="xaudio2_8=n"
 | 
			
		||||
@@ -3,7 +3,7 @@
 | 
			
		||||
#DetroitBecomeHuman.exe
 | 
			
		||||
#Rating=1-5
 | 
			
		||||
################################################
 | 
			
		||||
export PW_VULKAN_USE=dxvk
 | 
			
		||||
export PW_FORCE_USE_VSYNC=0  
 | 
			
		||||
export PW_VULKAN_USE=vkd3d
 | 
			
		||||
export PW_FORCE_USE_VSYNC=0
 | 
			
		||||
export PW_WINDOWS_VER="10"
 | 
			
		||||
#export PW_VIRTUAL_DESKTOP=1
 | 
			
		||||
 
 | 
			
		||||
@@ -20,7 +20,7 @@ export PW_VULKAN_USE=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_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
 
 | 
			
		||||
@@ -16,7 +16,7 @@ export PW_OLD_GL_STRING=1
 | 
			
		||||
#export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
#export PW_FORCE_USE_VSYNC=2         # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
#export PW_WINEDBG_DISABLE=1
 | 
			
		||||
#export PW_FORCE_DISABLED_GAMEMOD=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 PULSE_LATENCY_MSEC=60
 | 
			
		||||
#export PW_DLL_INSTALL=""
 | 
			
		||||
 
 | 
			
		||||
@@ -20,7 +20,7 @@
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +0,0 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
#Author: 
 | 
			
		||||
#Game-TS3.exe 
 | 
			
		||||
#Rating=5
 | 
			
		||||
################################################
 | 
			
		||||
export PW_VULKAN_USE=0
 | 
			
		||||
export LAUNCH_PARAMETERS=""
 | 
			
		||||
@@ -18,7 +18,7 @@ export PW_VULKAN_USE=dxvk #dxvk or vkd3d
 | 
			
		||||
#export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
#export PW_FORCE_USE_VSYNC=2         # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
#export PW_WINEDBG_DISABLE=1
 | 
			
		||||
#export PW_FORCE_DISABLED_GAMEMOD=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 PULSE_LATENCY_MSEC=60
 | 
			
		||||
#export PW_DLL_INSTALL="foo bar"
 | 
			
		||||
 
 | 
			
		||||
@@ -5,5 +5,5 @@
 | 
			
		||||
################################################
 | 
			
		||||
export PW_VULKAN_USE=vkd3d #dxvk or vkd3d
 | 
			
		||||
export WINEDLLOVERRIDES=""
 | 
			
		||||
export PW_DLL_INSTALL="vcrun2017"
 | 
			
		||||
export PW_DLL_INSTALL="vcrun2019"
 | 
			
		||||
export LAUNCH_PARAMETERS="-EpicPortal"
 | 
			
		||||
 
 | 
			
		||||
@@ -5,5 +5,5 @@
 | 
			
		||||
################################################
 | 
			
		||||
export PW_VULKAN_USE=0
 | 
			
		||||
export PW_WINDOWS_VER="XP"
 | 
			
		||||
export PW_FORCE_DISABLED_GAMEMOD=1
 | 
			
		||||
export PW_USE_GAMEMODE=1
 | 
			
		||||
export LAUNCH_PARAMETERS="-d3d9"
 | 
			
		||||
 
 | 
			
		||||
@@ -20,7 +20,7 @@ export PW_VULKAN_USE=dxvk
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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 PULSE_LATENCY_MSEC=120                    # Fix crackling audio in games
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
 
 | 
			
		||||
@@ -21,7 +21,7 @@ export PW_NVAPI_DISABLE=1
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
 
 | 
			
		||||
@@ -18,7 +18,7 @@ export PW_DLL_INSTALL="physx d3dx9"                  # Install DDL in port prefi
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
 
 | 
			
		||||
@@ -18,7 +18,7 @@ export PW_DLL_INSTALL="physx d3dx9"                  # Install DDL in port prefi
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										38
									
								
								data_from_portwine/scripts/portwine_db/MikuMikuDance
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										38
									
								
								data_from_portwine/scripts/portwine_db/MikuMikuDance
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,38 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
#Author: test
 | 
			
		||||
#MikuMikuDance.exe
 | 
			
		||||
#Rating=1-5
 | 
			
		||||
########################################################
 | 
			
		||||
export PW_VULKAN_USE=dxvk
 | 
			
		||||
#####################examples###########################
 | 
			
		||||
##export PW_COMMENT_DB="blablabla"
 | 
			
		||||
##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 WINEDLLOVERRIDES="blabla=n,b"
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL
 | 
			
		||||
##export PW_DXR_ON=1
 | 
			
		||||
##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
 | 
			
		||||
##export PW_NVAPI_DISABLE=1
 | 
			
		||||
##export PW_OLD_GL_STRING=1
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=1
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_USE_BUILD_IN_DXGI=1
 | 
			
		||||
##export PW_VIRTUAL_DESKTOP=1
 | 
			
		||||
##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue
 | 
			
		||||
##export ENABLE_VKBASALT=1
 | 
			
		||||
##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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export PW_USE_GAMEMODE=1              # 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_NO_WRITE_WATCH=1                      # 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_HEAP_DELAY_FREE=1
 | 
			
		||||
##export PW_WINE_ALLOW_XIM=1                      # Disable XIM support until libx11 >= 1.7 is widespread
 | 
			
		||||
##export WINEARCH=win32                           # defaut = win64
 | 
			
		||||
##export WINEPREFIX=
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_USE_TERMINAL=1                        # Force run in terminal
 | 
			
		||||
##export PW_LOG=1                                 # Enable debug mode fo terminal 
 | 
			
		||||
##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI 
 | 
			
		||||
##ADD_IN_START_PORTWINE () { commands ; }
 | 
			
		||||
@@ -21,7 +21,7 @@
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
 
 | 
			
		||||
@@ -29,7 +29,7 @@ export PW_DLL_INSTALL="d3dcompiler_42 d3dcompiler_43 d3dx9"
 | 
			
		||||
##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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=1              # Force disabele gamemod
 | 
			
		||||
##export PW_USE_GAMEMODE=1              # 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_NO_WRITE_WATCH=1                      # 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_HEAP_DELAY_FREE=1
 | 
			
		||||
 
 | 
			
		||||
@@ -29,7 +29,7 @@ export PW_NVAPI_DISABLE=1
 | 
			
		||||
 | 
			
		||||
##export PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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_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_HEAP_DELAY_FREE=0
 | 
			
		||||
 
 | 
			
		||||
@@ -1,11 +1,11 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
#Author: 
 | 
			
		||||
#Author:
 | 
			
		||||
#RDR2.exe
 | 
			
		||||
#PlayRDR2.exe 
 | 
			
		||||
#PlayRDR2.exe
 | 
			
		||||
#Rating=?
 | 
			
		||||
################################################
 | 
			
		||||
export PW_VULKAN_USE=vkd3d
 | 
			
		||||
export WINEDLLOVERRIDES="amd_ags_x64=b,n"
 | 
			
		||||
export WINEDLLOVERRIDES="vulkan-1=n"
 | 
			
		||||
export PW_DXGI_FROM_DXVK=1
 | 
			
		||||
export LAUNCH_PARAMETERS="-adapter=1 -vulkan -width=1920 -height=1080 -USEALLAVAILABLECORES -cpuLoadRebalancing -ignorepipelinecach"
 | 
			
		||||
export PULSE_LATENCY_MSEC=60
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										35
									
								
								data_from_portwine/scripts/portwine_db/SR2_pc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										35
									
								
								data_from_portwine/scripts/portwine_db/SR2_pc
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,35 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
#Author: xuser
 | 
			
		||||
#SR2_pc.exe
 | 
			
		||||
#Rating=1-5
 | 
			
		||||
#####################examples###########################
 | 
			
		||||
##export PW_COMMENT_DB="blablabla"
 | 
			
		||||
##export PW_DLL_INSTALL="xact"               # Install DDL in port prefix (used winetricks) 
 | 
			
		||||
##export WINEDLLOVERRIDES="blabla=n,b"
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL
 | 
			
		||||
##export PW_DXR_ON=1
 | 
			
		||||
##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
 | 
			
		||||
##export PW_NVAPI_DISABLE=1
 | 
			
		||||
##export PW_OLD_GL_STRING=1
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=1
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_USE_BUILD_IN_DXGI=1
 | 
			
		||||
##export PW_VIRTUAL_DESKTOP=1
 | 
			
		||||
##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue
 | 
			
		||||
##export ENABLE_VKBASALT=1
 | 
			
		||||
##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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export PW_USE_GAMEMODE=1              # 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_NO_WRITE_WATCH=1                      # 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_HEAP_DELAY_FREE=1
 | 
			
		||||
##export PW_WINE_ALLOW_XIM=1                      # Disable XIM support until libx11 >= 1.7 is widespread
 | 
			
		||||
##export WINEARCH=win32                           # defaut = win64
 | 
			
		||||
##export WINEPREFIX=
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_USE_TERMINAL=1                        # Force run in terminal
 | 
			
		||||
##export PW_LOG=1                                 # Enable debug mode fo terminal
 | 
			
		||||
##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI
 | 
			
		||||
##ADD_IN_START_PORTWINE () { commands ; }
 | 
			
		||||
							
								
								
									
										42
									
								
								data_from_portwine/scripts/portwine_db/Sam3
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								data_from_portwine/scripts/portwine_db/Sam3
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,42 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
#Author: xihnik
 | 
			
		||||
#Sam3.exe
 | 
			
		||||
#Rating=3
 | 
			
		||||
########################################################
 | 
			
		||||
export PW_DLL_INSTALL="d3dx9 vcrun2013 d3dcompiller_47"
 | 
			
		||||
export PULSE_LATENCY_MSEC=150
 | 
			
		||||
#####################examples###########################
 | 
			
		||||
##export PW_COMMENT_DB="blablabla"
 | 
			
		||||
##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 WINEDLLOVERRIDES="blabla=n,b"
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL
 | 
			
		||||
##export PW_DXVK_VER=1.8.1 
 | 
			
		||||
##export PW_VKD3D_VER=2.2
 | 
			
		||||
##export PW_DXR_ON=1
 | 
			
		||||
##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
 | 
			
		||||
##export PW_NVAPI_DISABLE=1
 | 
			
		||||
##export PW_OLD_GL_STRING=1
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=1
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_VKD3D_FEATURE_LEVEL=1
 | 
			
		||||
##export PW_DXGI_FROM_DXVK=1
 | 
			
		||||
##export PW_VIRTUAL_DESKTOP=1
 | 
			
		||||
##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue
 | 
			
		||||
##export ENABLE_VKBASALT=1
 | 
			
		||||
##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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export PW_USE_GAMEMODE=1              # 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_NO_WRITE_WATCH=1                      # 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_HEAP_DELAY_FREE=1
 | 
			
		||||
##export PW_WINE_ALLOW_XIM=1                      # Disable XIM support until libx11 >= 1.7 is widespread
 | 
			
		||||
##export WINEARCH=win32                           # defaut = win64
 | 
			
		||||
##export WINEPREFIX=
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_USE_TERMINAL=1                        # Force run in terminal
 | 
			
		||||
##export PW_LOG=1                                 # Enable debug mode fo terminal 
 | 
			
		||||
##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI 
 | 
			
		||||
##ADD_IN_START_PORTWINE () { commands ; }
 | 
			
		||||
@@ -21,7 +21,7 @@ export PW_WINDOWS_VER=7                      # Set windows version 10, 7 or XP
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
 
 | 
			
		||||
@@ -5,5 +5,5 @@
 | 
			
		||||
################################################
 | 
			
		||||
export PW_VULKAN_USE=0
 | 
			
		||||
export PW_WINDOWS_VER="XP"
 | 
			
		||||
export PW_FORCE_DISABLED_GAMEMOD=1
 | 
			
		||||
export PW_USE_GAMEMODE=1
 | 
			
		||||
export LAUNCH_PARAMETERS="-d3d9"
 | 
			
		||||
 
 | 
			
		||||
@@ -21,7 +21,7 @@
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
 
 | 
			
		||||
@@ -18,7 +18,7 @@ export PW_DLL_INSTALL="corefonts"        # Install DDL in port prefix (used wine
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
 
 | 
			
		||||
@@ -22,7 +22,7 @@
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
 
 | 
			
		||||
@@ -21,7 +21,7 @@
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
 
 | 
			
		||||
@@ -19,7 +19,7 @@ export PW_DLL_INSTALL="d3dx9 d3dcompiler_43"        # Install DDL in port prefix
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=1              # Force disabele gamemod
 | 
			
		||||
##export PW_USE_GAMEMODE=1              # Force disabele gamemod
 | 
			
		||||
##export PW_FORCE_LARGE_ADDRESS_AWARE=1           # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
 | 
			
		||||
##export PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
 
 | 
			
		||||
@@ -20,7 +20,7 @@
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
 
 | 
			
		||||
@@ -11,15 +11,12 @@
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
 | 
			
		||||
##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL
 | 
			
		||||
##export PW_DXVK_VER=1.8.1 
 | 
			
		||||
##export PW_VKD3D_VER=2.2
 | 
			
		||||
##export PW_DXR_ON=1
 | 
			
		||||
##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
 | 
			
		||||
##export PW_NVAPI_DISABLE=1
 | 
			
		||||
##export PW_OLD_GL_STRING=1
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=1
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_DXGI_FROM_DXVK=1
 | 
			
		||||
##export PW_VIRTUAL_DESKTOP=1
 | 
			
		||||
##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue
 | 
			
		||||
##export ENABLE_VKBASALT=1
 | 
			
		||||
@@ -29,8 +26,6 @@
 | 
			
		||||
 | 
			
		||||
##export PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=1              # 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_NO_WRITE_WATCH=1                      # 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_HEAP_DELAY_FREE=1
 | 
			
		||||
##export PW_WINE_ALLOW_XIM=1                      # Disable XIM support until libx11 >= 1.7 is widespread
 | 
			
		||||
@@ -40,9 +35,8 @@
 | 
			
		||||
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_USE_TERMINAL=1                        # Force run in terminal
 | 
			
		||||
##export PW_LOG=1                                 # Enable debug mode fo terminal 
 | 
			
		||||
##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI 
 | 
			
		||||
 | 
			
		||||
##ADD_IN_START_PORTWINE () { commands ; }
 | 
			
		||||
 | 
			
		||||
export PW_DLL_INSTALL="vcrun2019 vcrun6 vcrun6sp6 mfc42 d3dcompiler_42 d3dcompiler_43 d3dcompiler_47 d3dx9" 
 | 
			
		||||
export PW_DLL_INSTALL="vcrun2019 vcrun6 vcrun6sp6 mfc42 d3dcompiler_42 d3dcompiler_43 d3dcompiler_47 d3dx9"
 | 
			
		||||
 
 | 
			
		||||
@@ -21,7 +21,7 @@ export PW_DLL_INSTALL="d3dx9 d3dcompiler_43"        # Install DDL in port prefix
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
 
 | 
			
		||||
@@ -30,7 +30,7 @@ export WINEDLLOVERRIDES="concrt140,msvcp140,msvcp140_1,msvcp140_2,d3dcompiler_47
 | 
			
		||||
 | 
			
		||||
##export PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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_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_HEAP_DELAY_FREE=0
 | 
			
		||||
 
 | 
			
		||||
@@ -26,7 +26,7 @@
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
 
 | 
			
		||||
@@ -31,7 +31,7 @@
 | 
			
		||||
##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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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_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_HEAP_DELAY_FREE=0
 | 
			
		||||
 
 | 
			
		||||
@@ -18,7 +18,7 @@ export PW_DLL_INSTALL="physx d3dx9"        # Install DDL in port prefix (used wi
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										42
									
								
								data_from_portwine/scripts/portwine_db/s1_sp64_ship
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								data_from_portwine/scripts/portwine_db/s1_sp64_ship
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,42 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
    #Author: xihnik
 | 
			
		||||
    #s1_sp64_ship.exe 
 | 
			
		||||
    #Rating=1-5
 | 
			
		||||
    ################################################
 | 
			
		||||
    export PW_VULKAN_USE=dxvk
 | 
			
		||||
    export PW_DLL_INSTALL="vcrun2019 d3dx9"
 | 
			
		||||
    #export PW_NO_FSYNC=1
 | 
			
		||||
    export PW_WINDOWS_VER=7
 | 
			
		||||
#####################examples###########################
 | 
			
		||||
##export PW_COMMENT_DB="blablabla"
 | 
			
		||||
##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL
 | 
			
		||||
##export PW_DXVK_VER=1.8.1 
 | 
			
		||||
##export PW_VKD3D_VER=2.2
 | 
			
		||||
##export WINEDLLOVERRIDES="blabla=n,b"
 | 
			
		||||
##export PW_DLL_INSTALL="vcrun2019 vcrun6"        # Install DDL in port prefix (used winetricks) 
 | 
			
		||||
##export PW_LOG=0                                 # Enable debug mode fo terminal 
 | 
			
		||||
##export PW_NO_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support.
 | 
			
		||||
##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives
 | 
			
		||||
##export PW_DXVK_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 | 
			
		||||
##export PW_USE_TERMINAL=0                        # Force run in terminal
 | 
			
		||||
##export PW_OLD_GL_STRING=0
 | 
			
		||||
##export PW_NVAPI_DISABLE=1
 | 
			
		||||
##export PW_VKD3D_FEATURE_LEVEL=0
 | 
			
		||||
##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=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_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 LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI 
 | 
			
		||||
##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue,dxr
 | 
			
		||||
##export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP
 | 
			
		||||
##export PW_VIRTUAL_DESKTOP=1
 | 
			
		||||
##export DXVK_HUD=fps,devinfo
 | 
			
		||||
##export PW_HEAP_DELAY_FREE=0
 | 
			
		||||
##export PW_DXGI_FROM_DXVK=0
 | 
			
		||||
##export WINEARCH=win32                           # defaut = win64
 | 
			
		||||
##export WINEPREFIX=
 | 
			
		||||
##ADD_IN_START_PORTWINE () { commands ; }
 | 
			
		||||
@@ -21,7 +21,7 @@ export PW_NO_WRITE_WATCH=0          # Disable support for memory write watches i
 | 
			
		||||
#export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
#export PW_FORCE_USE_VSYNC=2         # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
export PW_WINEDBG_DISABLE=1
 | 
			
		||||
export PW_FORCE_DISABLED_GAMEMOD=1             # Force disabele gamemod
 | 
			
		||||
export PW_USE_GAMEMODE=1             # Force disabele gamemod
 | 
			
		||||
export PW_FORCE_LARGE_ADDRESS_AWARE=0          # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
 | 
			
		||||
#export PULSE_LATENCY_MSEC=60
 | 
			
		||||
export PW_DLL_INSTALL="vcrun6 mfc42 vcrun6sp6 mfc120 vcrun2013"
 | 
			
		||||
 
 | 
			
		||||
@@ -1,18 +1,16 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
#Author: PortWINE
 | 
			
		||||
#wgc.exe
 | 
			
		||||
#wgc_api.exe
 | 
			
		||||
#Rating=5
 | 
			
		||||
export PW_COMMENT_DB="Wargaming Game Center"
 | 
			
		||||
################################################
 | 
			
		||||
#export PW_VULKAN_USE=dxvk                       #dxvk, vkd3d or 0 for OpenGL
 | 
			
		||||
export LAUNCH_PARAMETERS="--disable-gpu"            # Additional launch options
 | 
			
		||||
#export PW_USE_TERMINAL=1
 | 
			
		||||
#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_NVAPI_DISABLE=1
 | 
			
		||||
#export WINEDLLOVERRIDES="xaudio2_7=n"
 | 
			
		||||
export PW_DLL_INSTALL="lucida vcrun2019"     # Install DDL in port prefix (used winetricks) 
 | 
			
		||||
#export WINEDLLOVERRIDES="ucrtbase,xaudio2_7,xaudio2_8=n"
 | 
			
		||||
export PW_DLL_INSTALL="lucida"     # Install DDL in port prefix (used winetricks) 
 | 
			
		||||
##export PW_GUI_DISABLED_CS=1
 | 
			
		||||
export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
 | 
			
		||||
ADD_IN_START_PORTWINE () {
 | 
			
		||||
    sed -i 's/true/false/g' "$WINEPREFIX/drive_c/ProgramData/Wargaming.net/GameCenter/preferences.xml"
 | 
			
		||||
}
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
 
 | 
			
		||||
@@ -21,7 +21,7 @@ export PW_DLL_INSTALL="vcrun2013 vcrun2017 dotnet472"
 | 
			
		||||
##export PW_HIDE_NVIDIA_GPU=0
 | 
			
		||||
##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
 | 
			
		||||
##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
 | 
			
		||||
##export PW_FORCE_DISABLED_GAMEMOD=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 PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
 | 
			
		||||
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 | 
			
		||||
 
 | 
			
		||||
@@ -12,7 +12,7 @@ echo '
 | 
			
		||||
'
 | 
			
		||||
[ $(id -u) = 0 ] && echo "Do not run this script as root!" && zenity --error --text "Do not run this script as root!" && exit 1
 | 
			
		||||
if [ "${s_install}" != "1" ] && [ ! -x "`which "zenity" 2>/dev/null`" ];then
 | 
			
		||||
    echo "You will need to install: zenity, and restart the port." 
 | 
			
		||||
    echo "You will need to install: zenity, and restart the port."
 | 
			
		||||
    xdg-open "http://portwine-linux.ru/portwine-faq/" > /dev/null 2>&1 & exit 0
 | 
			
		||||
fi
 | 
			
		||||
pw_ping_test () {
 | 
			
		||||
@@ -26,7 +26,7 @@ print_info () {
 | 
			
		||||
    echo "INFO: $@"
 | 
			
		||||
}
 | 
			
		||||
print_var () {
 | 
			
		||||
    for vp in $@ ; do echo "${vp}=${!vp}" ; done 
 | 
			
		||||
    for vp in $@ ; do echo "${vp}=${!vp}" ; done
 | 
			
		||||
}
 | 
			
		||||
try_copy_file () {
 | 
			
		||||
    if [ ! -f "$1" ] ; then	print_info "file $1 not found for copy" && return 1
 | 
			
		||||
@@ -46,31 +46,30 @@ try_copy_dir () {
 | 
			
		||||
        cp -fr "$1" "$2"
 | 
			
		||||
        [ "$?" != 0 ] && print_error "failed to copy directory $1 to $2" || return 0
 | 
			
		||||
    fi
 | 
			
		||||
    return 1 
 | 
			
		||||
    return 1
 | 
			
		||||
}
 | 
			
		||||
try_remove_file () {
 | 
			
		||||
    if [ -f "$1" ] ; then
 | 
			
		||||
        rm -f "$1"
 | 
			
		||||
        [ "$?" != 0 ] && print_error "failed to remove file $1" || return 0
 | 
			
		||||
    fi
 | 
			
		||||
    return 1 
 | 
			
		||||
    return 1
 | 
			
		||||
}
 | 
			
		||||
try_remove_dir () {
 | 
			
		||||
    if [ -d "$1" ] ; then
 | 
			
		||||
        rm -fr "$1"
 | 
			
		||||
        [ "$?" != 0 ] && print_error "failed to remove directory $1" || return 0
 | 
			
		||||
    fi
 | 
			
		||||
    return 1  
 | 
			
		||||
    return 1
 | 
			
		||||
}
 | 
			
		||||
try_force_link_file () {
 | 
			
		||||
    if [ ! -f "$1" ] ; then	print_info "file $1 not found for link"
 | 
			
		||||
    elif [ -z "$2" ] ; then	print_error "no way to link file $1"
 | 
			
		||||
    else
 | 
			
		||||
        [ -f "$2" ] && rm -f "$2"
 | 
			
		||||
        ln -s "$1" "$2"
 | 
			
		||||
        ln -sf "$1" "$2"
 | 
			
		||||
        [ "$?" != 0 ] && print_error "failed to link file $1 to $2" || return 0
 | 
			
		||||
    fi
 | 
			
		||||
    return 1  
 | 
			
		||||
    return 1
 | 
			
		||||
}
 | 
			
		||||
try_force_link_dir () {
 | 
			
		||||
    if [ ! -d "$1" ] ; then	print_info "directory $1 not found for link"
 | 
			
		||||
@@ -79,14 +78,18 @@ try_force_link_dir () {
 | 
			
		||||
        ln -sf "$1" "$2"
 | 
			
		||||
        [ "$?" != 0 ] && print_error "failed to link directory $1 to $2" || return 0
 | 
			
		||||
    fi
 | 
			
		||||
    return 1  
 | 
			
		||||
    return 1
 | 
			
		||||
}
 | 
			
		||||
try_download () {
 | 
			
		||||
    set -o pipefail
 | 
			
		||||
    wget -c -t 5 -T 2 "$1" --output-document="$2" 2>&1 | \
 | 
			
		||||
    sed -u 's/^[a-zA-Z\-].*//; s/.* \{1,2\}\([0-9]\{1,3\}\)%.*/\1\n#Downloading... \1%/; s/^20[0-9][0-9].*/#Done./' | \
 | 
			
		||||
    zenity --progress --percentage=0 --title="Download $(basename $1)" --text=Starting... --auto-close --auto-kill --width=500 --height=90
 | 
			
		||||
    [ "${PIPESTATUS[0]}" != 0 ] && print_error "failed to download $1. Scipping." && return 1 || return 0 
 | 
			
		||||
    [ "${PIPESTATUS[0]}" != 0 ] && print_error "failed to download $1. Scipping." && return 1 || return 0
 | 
			
		||||
}
 | 
			
		||||
try_download_silent () {
 | 
			
		||||
    wget -c -t 5 -T 2 "$1" --output-document="$2"
 | 
			
		||||
    [ "$?" != 0 ] && print_error "failed to download $1. Scipping." && return 1 || return 0
 | 
			
		||||
}
 | 
			
		||||
zenity_error_download () {
 | 
			
		||||
    `zenity --error --title "Error..." --text "You will need to check internet connettion,\nand press OK for repeet download" --no-wrap ` > /dev/null 2>&1
 | 
			
		||||
@@ -94,36 +97,38 @@ zenity_error_download () {
 | 
			
		||||
create_new_dir () {
 | 
			
		||||
    if [ ! -d "$1" ] ; then
 | 
			
		||||
        mkdir -p "$1"
 | 
			
		||||
    fi 
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
var_winedlloverride_update () {
 | 
			
		||||
    if [ ! -z "${WINEDLLOVERRIDES}" ] 
 | 
			
		||||
    if [ ! -z "${WINEDLLOVERRIDES}" ]
 | 
			
		||||
    then export WINEDLLOVERRIDES="${1};${WINEDLLOVERRIDES}"
 | 
			
		||||
    else export WINEDLLOVERRIDES="${1}"
 | 
			
		||||
    fi 
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
var_vkd3d_config_update () {
 | 
			
		||||
    if [ ! -z "${VKD3D_CONFIG}" ] 
 | 
			
		||||
    if [ ! -z "${VKD3D_CONFIG}" ]
 | 
			
		||||
    then export VKD3D_CONFIG="${1};${VKD3D_CONFIG}"
 | 
			
		||||
    else export VKD3D_CONFIG="${1}" 
 | 
			
		||||
    fi 
 | 
			
		||||
    else export VKD3D_CONFIG="${1}"
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
unpack_tar_xz () {
 | 
			
		||||
    set -o pipefail
 | 
			
		||||
    tar -Jxvf "$1" -C "$2" | sszen 
 | 
			
		||||
    [ "${PIPESTATUS[0]}" != 0 ] && print_error "File unpacking error." && return 1 || return 0 
 | 
			
		||||
    tar -Jxvf "$1" -C "$2" | sszen
 | 
			
		||||
    [ "${PIPESTATUS[0]}" != 0 ] && print_error "File unpacking error." && return 1 || return 0
 | 
			
		||||
}
 | 
			
		||||
pw_mangohud_check () {
 | 
			
		||||
    export RUN_MANGOHUD=""
 | 
			
		||||
    export MANGOHUD=0
 | 
			
		||||
    export MANGOHUD_DLSYM=0
 | 
			
		||||
    unset MANGOHUD
 | 
			
		||||
    unset MANGOHUD_DLSYM
 | 
			
		||||
    if [ -x "`which mangohud 2>/dev/null`" ] && [ "${PW_MANGOHUD}" == "1" ] ; then
 | 
			
		||||
        if [ "${PW_VULKAN_USE}" = "0" ]; then 
 | 
			
		||||
        if [ "${PW_VULKAN_USE}" = "0" ]; then
 | 
			
		||||
            export MANGOHUD_DLSYM=1
 | 
			
		||||
            export RUN_MANGOHUD=mangohud
 | 
			
		||||
        else
 | 
			
		||||
            export MANGOHUD=1
 | 
			
		||||
        fi
 | 
			
		||||
    else
 | 
			
		||||
        export DISABLE_MANGOHUD=1
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
pw_clear_pfx () {
 | 
			
		||||
@@ -131,7 +136,36 @@ pw_clear_pfx () {
 | 
			
		||||
    try_remove_file "${WINEPREFIX}/user.reg"
 | 
			
		||||
    try_remove_file "${WINEPREFIX}/userdef.reg"
 | 
			
		||||
    try_remove_file "${WINEPREFIX}/winetricks.log"
 | 
			
		||||
    try_remove_file "${WINEPREFIX}/.update-timestamp"
 | 
			
		||||
    try_remove_file "${WINEPREFIX}/drive_c/.windows-serial"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/windows/"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/ProgramData/Setup"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/ProgramData/Windows"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/ProgramData/WindowsTask"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/ProgramData/Package Cache"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/users/Public/Local Settings/Application Data/Microsoft"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/users/Public/Local Settings/Application Data/Temp"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/users/Public/Local Settings/Temporary Internet Files"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/users/Public/Application Data/Microsoft"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/users/Public/Application Data/wine_gecko"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/users/Public/Temp"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/users/steamuser/Local Settings/Application Data/Microsoft"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/users/steamuser/Local Settings/Application Data/Temp"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/users/steamuser/Local Settings/Temporary Internet Files"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/users/steamuser/Application Data/Microsoft"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/users/steamuser/Application Data/wine_gecko"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/users/steamuser/Temp"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/Program Files/Internet Explorer"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/Program Files/Windows Media Player"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/Program Files/Windows NT"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/Program Files/Common Files"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/Program Files (x86)/Internet Explorer"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/Program Files (x86)/Common Files"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/Program Files (x86)/Windows Media Player"
 | 
			
		||||
    try_remove_dir "${WINEPREFIX}/drive_c/Program Files (x86)/Windows NT"
 | 
			
		||||
    try_remove_dir  "${PORT_WINE_TMP_PATH}/mesa_shader_cache"
 | 
			
		||||
    rm -f "${PORT_WINE_TMP_PATH}"/*.bin
 | 
			
		||||
    rm -f "${PORT_WINE_TMP_PATH}"/*.foz
 | 
			
		||||
}
 | 
			
		||||
sszen() {
 | 
			
		||||
    zenity --progress --title="Settings..." --text="Updating parameters" --pulsate --auto-close --width=500 --height=90 --no-cancel
 | 
			
		||||
@@ -152,8 +186,8 @@ PW_STOP_PROGRESS_BAR () {
 | 
			
		||||
    done
 | 
			
		||||
}
 | 
			
		||||
PW_LOAD_LIBS () {
 | 
			
		||||
    if [ ! -e "${WINELIB}/run.sh" ] || [ ! -e "${WINELIB}/usr/bin/yad" ] || [ ! -e "${WINELIB}/usr/lib/p7zip/7zr" ] \
 | 
			
		||||
    || [ ! -e "${WINELIB}/amd64/usr/bin/vkcube" ] || [ ! -e "${WINELIB}/amd64/usr/bin/xterm" ] || \
 | 
			
		||||
    if [ ! -e "${PW_WINELIB}/run-in-soldier" ] || [ ! -e "${PW_WINELIB}/runtime/bin/yad" ] || [ ! -e "${PW_WINELIB}/runtime/lib/p7zip/7zr" ] \
 | 
			
		||||
    || [ ! -e "${PW_WINELIB}/runtime/bin/vkcube" ] || [ ! -e "${PW_WINELIB}/runtime/bin/xterm" ] || \
 | 
			
		||||
    [ -e "${HOME}/.PortWINE/tmp/libs${pw_libs_ver}.tar.xz" ] ; then 
 | 
			
		||||
        print_info "Download and install libraries..."
 | 
			
		||||
        if try_download "https://github.com/Castro-Fidel/PortWINE/releases/download/libs${pw_libs_ver}/libs${pw_libs_ver}.tar.xz" "${HOME}/.PortWINE/tmp/libs${pw_libs_ver}.tar.xz" ; then
 | 
			
		||||
@@ -172,19 +206,20 @@ PW_LOAD_LIBS () {
 | 
			
		||||
            --no-wrap ` > /dev/null 2>&1 && PW_LOAD_LIBS
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
    export pw_yad="${WINELIB}/runtime/bin/yad"
 | 
			
		||||
    export pw_zstd="${WINELIB}/runtime/bin/zstd"
 | 
			
		||||
    export pw_7z="${WINELIB}/runtime/lib/p7zip/7zr"
 | 
			
		||||
    export pw_yad="${PW_WINELIB}/runtime/bin/yad"
 | 
			
		||||
    export pw_zstd="${PW_WINELIB}/runtime/bin/zstd"
 | 
			
		||||
    export pw_7z="${PW_WINELIB}/runtime/lib/p7zip/7zr"
 | 
			
		||||
    if [ -x "`which xterm 2>/dev/null`" ]; then
 | 
			
		||||
        export SYS_XTERM=`which xterm`
 | 
			
		||||
        export PW_XTERM="${SYS_XTERM} -geometry 159x37 -e"
 | 
			
		||||
    else
 | 
			
		||||
        export PW_XTERM="${WINELIB}/runtime/bin/xterm -geometry 159x37 -e"
 | 
			
		||||
        export PW_XTERM="${PW_WINELIB}/runtime/bin/xterm -geometry 159x37 -e"
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
PW_DOWNLOAD_MONO () {
 | 
			
		||||
    if [ ! -d "${HOME}/.PortWINE/mono/wine-mono-${mono_ver}" ] ; then
 | 
			
		||||
        export url_mono="https://github.com/madewokherd/wine-mono/releases/download/wine-mono-${mono_ver}/wine-mono-${mono_ver}-x86.tar.xz"
 | 
			
		||||
        echo "######################################################"
 | 
			
		||||
        print_info "Download and install wine mono..."
 | 
			
		||||
        if try_download "${url_mono}" "${HOME}/.PortWINE/tmp/wine-mono-${mono_ver}-x86.tar.xz" ; then
 | 
			
		||||
@@ -202,6 +237,7 @@ PW_DOWNLOAD_MONO () {
 | 
			
		||||
}
 | 
			
		||||
PW_DOWNLOAD_GECKO () {
 | 
			
		||||
    if [ ! -d "${HOME}/.PortWINE/gecko/wine-gecko-${gecko_ver}-x86" ] ; then
 | 
			
		||||
        export url_gecko_x86="https://dl.winehq.org/wine/wine-gecko/${gecko_ver}/wine-gecko-${gecko_ver}-x86.tar.xz"
 | 
			
		||||
        echo "######################################################"
 | 
			
		||||
        echo "Download and install wine gecko x86..."
 | 
			
		||||
        if try_download "${url_gecko_x86}" "${HOME}/.PortWINE/tmp/wine-gecko-${gecko_ver}-x86.tar.xz" ; then
 | 
			
		||||
@@ -216,7 +252,8 @@ PW_DOWNLOAD_GECKO () {
 | 
			
		||||
            zenity_error_download && PW_DOWNLOAD_GECKO
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
        if [ ! -d "${HOME}/.PortWINE/gecko/wine-gecko-${gecko_ver}-x86_64" ] ; then
 | 
			
		||||
    if [ ! -d "${HOME}/.PortWINE/gecko/wine-gecko-${gecko_ver}-x86_64" ] ; then
 | 
			
		||||
        export url_gecko_x86_64="https://dl.winehq.org/wine/wine-gecko/${gecko_ver}/wine-gecko-${gecko_ver}-x86_64.tar.xz"
 | 
			
		||||
        echo "######################################################"
 | 
			
		||||
        echo "Download and install wine gecko x86_64..."
 | 
			
		||||
        if try_download "${url_gecko_x86_64}" "${HOME}/.PortWINE/tmp/wine-gecko-${gecko_ver}-x86_64.tar.xz" ; then
 | 
			
		||||
@@ -231,9 +268,6 @@ PW_DOWNLOAD_GECKO () {
 | 
			
		||||
            zenity_error_download && PW_DOWNLOAD_GECKO
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
    create_new_dir "${WINEDIR}/share/wine/"
 | 
			
		||||
    try_force_link_dir "${HOME}/.PortWINE/gecko" "${WINEDIR}"/share/wine/
 | 
			
		||||
    try_force_link_dir "${HOME}/.PortWINE/mono" "${WINEDIR}"/share/wine/
 | 
			
		||||
}
 | 
			
		||||
START_PORTWINE ()
 | 
			
		||||
    {
 | 
			
		||||
@@ -243,65 +277,60 @@ START_PORTWINE ()
 | 
			
		||||
    elif [ -x "`which xterm 2>/dev/null`" ]; then export PW_TERM="${PW_XTERM}"
 | 
			
		||||
    else export PW_TERM="${PW_XTERM}"
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    try_remove_dir "${PORT_WINE_PATH}/data/vulkan"
 | 
			
		||||
    create_new_dir "${PW_VULKAN_DLL}"
 | 
			
		||||
 | 
			
		||||
    export url_dxvk="https://github.com/doitsujin/dxvk/releases/download/v${PW_DXVK_VER}/dxvk-${PW_DXVK_VER}.tar.gz"
 | 
			
		||||
    if [ ! -d "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}" ] ; then
 | 
			
		||||
        if  pw_ping_test ; then
 | 
			
		||||
            if try_download "${url_dxvk}" "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}.tar.gz" ; then
 | 
			
		||||
                tar -zxvf "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}.tar.gz" -C "${PW_VULKAN_DLL}/"
 | 
			
		||||
                try_remove_file "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}.tar.gz"
 | 
			
		||||
            else
 | 
			
		||||
                try_remove_file "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}.tar.gz"
 | 
			
		||||
                `zenity --error --title "Error..." --text "You will need check internet connettion,\nor change DXVK version in db file!" --no-wrap ` > /dev/null 2>&1
 | 
			
		||||
                PW_EDIT_DB & exit 1
 | 
			
		||||
            fi
 | 
			
		||||
        else
 | 
			
		||||
            export PW_DXVK_VER="${PW_DEF_DXVK_VER}"
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    export url_vkd3d="https://github.com/HansKristian-Work/vkd3d-proton/releases/download/v${PW_VKD3D_VER}/vkd3d-proton-${PW_VKD3D_VER}.tar.zst"
 | 
			
		||||
    if [ ! -d "${PW_VULKAN_DLL}/vkd3d-proton-${PW_VKD3D_VER}" ] ; then
 | 
			
		||||
        if  pw_ping_test ; then
 | 
			
		||||
            if try_download "${url_vkd3d}" "${PW_VULKAN_DLL}/vkd3d-proton-${PW_VKD3D_VER}.tar.zst" ; then
 | 
			
		||||
                tar -C "${PW_VULKAN_DLL}/" -I "${pw_zstd}" -xvf "${PW_VULKAN_DLL}/vkd3d-proton-${PW_VKD3D_VER}.tar.zst" 
 | 
			
		||||
                try_remove_file "${PW_VULKAN_DLL}/vkd3d-proton-${PW_VKD3D_VER}.tar.zst"
 | 
			
		||||
            else
 | 
			
		||||
                try_remove_file "${PW_VULKAN_DLL}/vkd3d-proton-${PW_VKD3D_VER}.tar.zst"
 | 
			
		||||
                `zenity --error --title "Error..." --text "You will need to change VKD3D version in db file!" --no-wrap ` > /dev/null 2>&1
 | 
			
		||||
                PW_EDIT_DB & exit 1
 | 
			
		||||
            fi
 | 
			
		||||
        else
 | 
			
		||||
            export PW_VKD3D_VER="${PW_DEF_VKD3D_VER}"
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    PW_START_PROGRESS_BAR_CS "Start ${portname}... Please wait..."
 | 
			
		||||
 | 
			
		||||
    export WINELOADER="${WINEDIR}/bin/wine"
 | 
			
		||||
    export WINEDLLPATH="${WINEDIR}/lib64/wine:${WINEDIR}/lib/wine:${PATH_TO_GAME}"
 | 
			
		||||
    export WINESERVER="${WINEDIR}/bin/wineserver"
 | 
			
		||||
    export WINEDLLPATH="${WINEDIR}/lib/wine"
 | 
			
		||||
    create_new_dir "${WINEDIR}/share/wine/"
 | 
			
		||||
    try_remove_dir"${WINEDIR}"/share/wine/gecko
 | 
			
		||||
    try_remove_dir"${WINEDIR}"/share/wine/mono
 | 
			
		||||
    try_force_link_dir "${HOME}/.PortWINE/gecko" "${WINEDIR}"/share/wine/
 | 
			
		||||
    try_force_link_dir "${HOME}/.PortWINE/mono" "${WINEDIR}"/share/wine/
 | 
			
		||||
    if [ -d ${PATH_TO_GAME} ]
 | 
			
		||||
    then export WINEDLLPATH="${WINEDIR}/lib64/wine:${WINEDIR}/lib/wine:${PATH_TO_GAME}"
 | 
			
		||||
    else export WINEDLLPATH="${WINEDIR}/lib64/wine:${WINEDIR}/lib/wine"
 | 
			
		||||
    fi
 | 
			
		||||
    if [ ! -z "${PATH}" ]
 | 
			
		||||
    then export PATH="${WINEDIR}/bin:${PATH}"
 | 
			
		||||
    else export PATH="${WINEDIR}/bin"
 | 
			
		||||
    fi
 | 
			
		||||
    if [ ! -z "${LD_LIBRARY_PATH}" ]
 | 
			
		||||
    then export LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib:${LD_LIBRARY_PATH}"
 | 
			
		||||
    else export LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib"
 | 
			
		||||
    export LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib"
 | 
			
		||||
    if [ "${PW_USE_RUNTIME}" = 0 ] ; then
 | 
			
		||||
        export PW_RUNTIME=""
 | 
			
		||||
        echo "RUNTIME is disabled"
 | 
			
		||||
    else
 | 
			
		||||
        export PW_RUNTIME="${PW_WINELIB}/run-in-soldier --share-home --filesystem="${PORT_WINE_PATH}" --runtime=runtime --"
 | 
			
		||||
        unset PRESSURE_VESSEL_FILESYSTEMS_RO
 | 
			
		||||
        unset PRESSURE_VESSEL_FILESYSTEMS_RW
 | 
			
		||||
        for PWRTMRO in ${PW_RT_MOUNT_RO[*]} ; do
 | 
			
		||||
            if [ ! -z "${PRESSURE_VESSEL_FILESYSTEMS_RO}" ]
 | 
			
		||||
            then export PRESSURE_VESSEL_FILESYSTEMS_RO="${PRESSURE_VESSEL_FILESYSTEMS_RO}:${PWRTMRO}"
 | 
			
		||||
            else export PRESSURE_VESSEL_FILESYSTEMS_RO="${PWRTMRO}"
 | 
			
		||||
            fi
 | 
			
		||||
        done
 | 
			
		||||
        for PWRTMRW in ${PW_RT_MOUNT_RW[*]} ; do
 | 
			
		||||
            if [ ! -z "${PRESSURE_VESSEL_FILESYSTEMS_RW}" ]
 | 
			
		||||
            then export PRESSURE_VESSEL_FILESYSTEMS_RW="${PRESSURE_VESSEL_FILESYSTEMS_RW}:${PWRTMRW}"
 | 
			
		||||
            else export PRESSURE_VESSEL_FILESYSTEMS_RW="${PWRTMRW}"
 | 
			
		||||
            fi
 | 
			
		||||
        done
 | 
			
		||||
        ln -sf "${WINEDIR}"/lib64/*so* "${PW_WINELIB}/runtime/lib/x86_64-linux-gnu/"
 | 
			
		||||
        ln -sf "${WINEDIR}"/lib/*so* "${PW_WINELIB}/runtime/lib/i386-linux-gnu/"
 | 
			
		||||
        echo "RUNTIME is enabled"
 | 
			
		||||
    fi
 | 
			
		||||
    export WINE="${WINELOADER}"
 | 
			
		||||
    export GST_PLUGIN_SYSTEM_PATH_1_0="${WINEDIR}/lib64/gstreamer-1.0:${WINEDIR}/gstreamer-1.0"
 | 
			
		||||
    export WINE_GST_REGISTRY_DIR="${PORT_WINE_TMP_PATH}"
 | 
			
		||||
    export MEDIACONV_AUDIO_DUMP_FILE="${PORT_WINE_TMP_PATH}"/audio.foz
 | 
			
		||||
    export MEDIACONV_AUDIO_TRANSCODED_FILE="${PORT_WINE_TMP_PATH}"/transcoded_audio.foz
 | 
			
		||||
    export MEDIACONV_VIDEO_DUMP_FILE="${PORT_WINE_TMP_PATH}"/video.foz
 | 
			
		||||
    export MEDIACONV_VIDEO_TRANSCODED_FILE="${PORT_WINE_TMP_PATH}"/transcoded_video.foz
 | 
			
		||||
    export GST_PLUGIN_PATH_1_0="${WINEDIR}/lib64/gstreamer-1.0:${WINEDIR}/lib/gstreamer-1.0"
 | 
			
		||||
    export STAGING_SHARED_MEMORY=1
 | 
			
		||||
    export PW_FORCE_LARGE_ADDRESS_AWARE=1
 | 
			
		||||
 | 
			
		||||
    if [ ! -z "${PW_LOG}" ] && [ "${PW_LOG}" != 0 ] ; then
 | 
			
		||||
        export WINEDEBUG="fixme-all,err+loaddll,err+dll,err+file,err+reg"
 | 
			
		||||
        export WINEDEBUG="fixme+all,err+loaddll,err+dll,err+file,err+reg"
 | 
			
		||||
        export DXVK_LOG_LEVEL="info"
 | 
			
		||||
        export VKD3D_DEBUG="warn"
 | 
			
		||||
        export WINE_MONO_TRACE="E:System.NotImplementedException"
 | 
			
		||||
@@ -383,7 +412,7 @@ START_PORTWINE ()
 | 
			
		||||
            export optirun_on="prime-run"
 | 
			
		||||
            export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json
 | 
			
		||||
        fi
 | 
			
		||||
        #export __NV_PRIME_RENDER_OFFLOAD=1
 | 
			
		||||
        export __NV_PRIME_RENDER_OFFLOAD=1
 | 
			
		||||
        export __GLX_VENDOR_LIBRARY_NAME=nvidia
 | 
			
		||||
        if [ ! -d "${PORT_WINE_TMP_PATH}"/gl_shader_cache ] ; then
 | 
			
		||||
            mkdir -p "${PORT_WINE_TMP_PATH}"/gl_shader_cache
 | 
			
		||||
@@ -413,12 +442,12 @@ START_PORTWINE ()
 | 
			
		||||
    if [ ! -z ${PW_XKBD} ]; then
 | 
			
		||||
        setxkbmap us,ru
 | 
			
		||||
    fi
 | 
			
		||||
    if [ -x "`which "gamemoderun" 2>/dev/null`" ] && [ "$PW_FORCE_DISABLED_GAMEMOD" -eq "0" ]; then
 | 
			
		||||
    if [ -x "`which "gamemoderun" 2>/dev/null`" ] && [ "$PW_USE_GAMEMODE" = "1" ]; then
 | 
			
		||||
        export PW_GAMEMODERUN=1
 | 
			
		||||
        echo "Gamemod will be launched."
 | 
			
		||||
    else
 | 
			
		||||
        export PW_GAMEMODERUN=0
 | 
			
		||||
        echo "Gamemod is not installed or disabled in vars script: PW_FORCE_DISABLED_GAMEMOD=$PW_FORCE_DISABLED_GAMEMOD"
 | 
			
		||||
        echo "Gamemod is not installed or disabled in vars script: PW_USE_GAMEMODE=$PW_USE_GAMEMODE"
 | 
			
		||||
    fi
 | 
			
		||||
    PW_INIT_PFX
 | 
			
		||||
    RUN_WINETRICKS_FROM_DB
 | 
			
		||||
@@ -441,6 +470,9 @@ KILL_PORTWINE () {
 | 
			
		||||
            fi
 | 
			
		||||
        done
 | 
			
		||||
    fi
 | 
			
		||||
    if [ ! -z `pgrep -a bwrap | grep ${portname} | head -n 1 | awk '{print $1}'` ] ; then
 | 
			
		||||
        kill -n 9 `pgrep -a bwrap | grep ${portname} | head -n 1 | awk '{print $1}'`
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
STOP_PORTWINE () {
 | 
			
		||||
@@ -458,12 +490,12 @@ STOP_PORTWINE () {
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
UPDATE_WINETRICKS () {
 | 
			
		||||
    W_TRX_URL="https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks"
 | 
			
		||||
    W_TRX_URL="https://raw.githubusercontent.com/GloriousEggroll/protonfixes/master/winetricks"
 | 
			
		||||
    W_TRX_EXT_VER="$(curl -s --list-only ${W_TRX_URL} | grep -i 'WINETRICKS_VERSION=' | sed 's/WINETRICKS_VERSION=//')"
 | 
			
		||||
    print_info "Version winetricks on server: ${W_TRX_EXT_VER}"
 | 
			
		||||
    W_TRX_INT_VER="$(cat "${PORT_WINE_TMP_PATH}/winetricks" | grep -i 'WINETRICKS_VERSION=' | sed 's/WINETRICKS_VERSION=//')"
 | 
			
		||||
    print_info "Version winetricks in port: ${W_TRX_INT_VER}"
 | 
			
		||||
    if [ ! -f "${PORT_WINE_TMP_PATH}/winetricks" ] || [ "$W_TRX_INT_VER" != "$W_TRX_EXT_VER" ] ; then
 | 
			
		||||
    if [ ! -f "${PORT_WINE_TMP_PATH}/winetricks" ] && [ ! -z "$W_TRX_EXT_VER" ] || [ "$W_TRX_INT_VER" != "$W_TRX_EXT_VER" ] && [ ! -z "$W_TRX_EXT_VER" ]; then
 | 
			
		||||
        if try_download "${W_TRX_URL}" "${PORT_WINE_TMP_PATH}/winetricks_new" ; then
 | 
			
		||||
            mv -f "${PORT_WINE_TMP_PATH}/winetricks_new" "${PORT_WINE_TMP_PATH}/winetricks"
 | 
			
		||||
            W_TRX_INT_VER="$(cat "${PORT_WINE_TMP_PATH}/winetricks" | grep -i 'WINETRICKS_VERSION=' | sed 's/WINETRICKS_VERSION=//')" && print_info "Winetricks version in port has been updated (${W_TRX_INT_VER})" 
 | 
			
		||||
@@ -478,38 +510,39 @@ UPDATE_WINETRICKS () {
 | 
			
		||||
 | 
			
		||||
RUN_WINETRICKS_FROM_DB () {
 | 
			
		||||
    UPDATE_WINETRICKS
 | 
			
		||||
    if [ ! -z "${PW_MUST_HAVE_DLL}" ]
 | 
			
		||||
    then export PW_DLL_INSTALL="${PW_MUST_HAVE_DLL} ${PW_DLL_INSTALL}"
 | 
			
		||||
    fi
 | 
			
		||||
    if [ ! -z "${PW_DLL_INSTALL}" ]; then
 | 
			
		||||
        PW_STOP_PROGRESS_BAR
 | 
			
		||||
        export PW_DLL_NEED_INSTALL=""
 | 
			
		||||
        export USE_WT_FROM_DB=0
 | 
			
		||||
        if [ -e "${WINEPREFIX}/winetricks.log" ] ; then
 | 
			
		||||
            for need_install_dll_to_pfx in ${PW_DLL_INSTALL} ; do
 | 
			
		||||
                if [ "${need_install_dll_to_pfx}" == "vcrun2015" ] || [ "${need_install_dll_to_pfx}" == "vcrun2017" ] ; then
 | 
			
		||||
                    need_install_dll_to_pfx="vcrun2019"
 | 
			
		||||
                    sed -i '/vcrun2015/d' "${WINEPREFIX}/winetricks.log"
 | 
			
		||||
                    sed -i '/vcrun2017/d' "${WINEPREFIX}/winetricks.log"
 | 
			
		||||
                elif [ "${need_install_dll_to_pfx}" == "vcrun2019" ] ; then
 | 
			
		||||
                    sed -i '/vcrun2015/d' "${WINEPREFIX}/winetricks.log"
 | 
			
		||||
                    sed -i '/vcrun2017/d' "${WINEPREFIX}/winetricks.log"
 | 
			
		||||
                fi
 | 
			
		||||
                grep "${need_install_dll_to_pfx}" "${WINEPREFIX}/winetricks.log"
 | 
			
		||||
                if [ "$?" == "1" ] ; then
 | 
			
		||||
                    if [ -z "${PW_DLL_NEED_INSTALL}" ]
 | 
			
		||||
                    then export PW_DLL_NEED_INSTALL="${need_install_dll_to_pfx}"
 | 
			
		||||
                    else export PW_DLL_NEED_INSTALL="${need_install_dll_to_pfx} ${PW_DLL_NEED_INSTALL}"
 | 
			
		||||
                    fi
 | 
			
		||||
                    export USE_WT_FROM_DB=1
 | 
			
		||||
                fi
 | 
			
		||||
            done
 | 
			
		||||
        else
 | 
			
		||||
            export PW_DLL_NEED_INSTALL="${PW_DLL_INSTALL}"
 | 
			
		||||
            export USE_WT_FROM_DB=1
 | 
			
		||||
        if [ ! -e "${WINEPREFIX}/winetricks.log" ] ; then
 | 
			
		||||
            touch "${WINEPREFIX}/winetricks.log"
 | 
			
		||||
        fi
 | 
			
		||||
        for need_install_dll_to_pfx in ${PW_DLL_INSTALL} ; do
 | 
			
		||||
            if [ "${need_install_dll_to_pfx}" == "vcrun2015" ] || [ "${need_install_dll_to_pfx}" == "vcrun2017" ] ; then
 | 
			
		||||
                need_install_dll_to_pfx="vcrun2019"
 | 
			
		||||
                sed -i '/vcrun2015/d' "${WINEPREFIX}/winetricks.log"
 | 
			
		||||
                sed -i '/vcrun2017/d' "${WINEPREFIX}/winetricks.log"
 | 
			
		||||
            elif [ "${need_install_dll_to_pfx}" == "vcrun2019" ] ; then
 | 
			
		||||
                sed -i '/vcrun2015/d' "${WINEPREFIX}/winetricks.log"
 | 
			
		||||
                sed -i '/vcrun2017/d' "${WINEPREFIX}/winetricks.log"
 | 
			
		||||
            fi
 | 
			
		||||
            grep "${need_install_dll_to_pfx}" "${WINEPREFIX}/winetricks.log"
 | 
			
		||||
            if [ "$?" == "1" ] ; then
 | 
			
		||||
                if [ -z "${PW_DLL_NEED_INSTALL}" ]
 | 
			
		||||
                then export PW_DLL_NEED_INSTALL="${need_install_dll_to_pfx}"
 | 
			
		||||
                else export PW_DLL_NEED_INSTALL="${need_install_dll_to_pfx} ${PW_DLL_NEED_INSTALL}"
 | 
			
		||||
                fi
 | 
			
		||||
                export USE_WT_FROM_DB=1
 | 
			
		||||
            fi
 | 
			
		||||
        done
 | 
			
		||||
        if [ "${USE_WT_FROM_DB}" == "1" ] ; then
 | 
			
		||||
            UPDATE_WINETRICKS
 | 
			
		||||
            PW_STOP_PROGRESS_BAR
 | 
			
		||||
            print_info "Need to install DLL in prefix: ${PW_DLL_NEED_INSTALL}"
 | 
			
		||||
            ${PW_TERM} ${PW_RUNTIME} "${PORT_WINE_TMP_PATH}/winetricks" -q -r --force ${PW_DLL_NEED_INSTALL}
 | 
			
		||||
            ${PW_TERM} "${PORT_WINE_TMP_PATH}/winetricks" -q --force ${PW_DLL_NEED_INSTALL}
 | 
			
		||||
        fi
 | 
			
		||||
        PW_START_PROGRESS_BAR_CS "Start ${portname}... Please wait..."
 | 
			
		||||
    fi
 | 
			
		||||
@@ -544,15 +577,14 @@ PW_UPDATE () {
 | 
			
		||||
    fi
 | 
			
		||||
    if [ ! -f "${PORT_WINE_TMP_PATH}/update_notifier" ] ; then
 | 
			
		||||
        echo "1" > "${PORT_WINE_TMP_PATH}/update_notifier"
 | 
			
		||||
    fi 
 | 
			
		||||
    read "update_not" < "${PORT_WINE_TMP_PATH}/update_notifier" 
 | 
			
		||||
    fi
 | 
			
		||||
    read "update_not" < "${PORT_WINE_TMP_PATH}/update_notifier"
 | 
			
		||||
    if [ "${update_not}" = "1" ] ; then
 | 
			
		||||
        echo `curl -s --list-only "${PW_FTP_URL}/current_version/${portname}_ver"` > "${PORT_WINE_TMP_PATH}/${portname}_cur_ver"
 | 
			
		||||
        if [ -f "${PORT_WINE_TMP_PATH}/${portname}_ver" ] ; then
 | 
			
		||||
        if try_download_silent "${PW_FTP_URL}/current_version/${portname}_ver" "${PORT_WINE_TMP_PATH}/${portname}_cur_ver" ; then
 | 
			
		||||
            read current_ver < "${PORT_WINE_TMP_PATH}/${portname}_cur_ver"
 | 
			
		||||
            try_remove_file "${PORT_WINE_TMP_PATH}/${portname}_cur_ver"
 | 
			
		||||
            if  [ ! -z "${current_ver}" ] && [ "${current_ver}" -gt "${install_ver}" ] ; then	
 | 
			
		||||
                xsd=`zenity --title  "${port_upd1}" --text "${port_upd2}" --list --radiolist --height=220 --column="${inst_set}" --column "${port_upd3}" \
 | 
			
		||||
            if  [ ! -z "${current_ver}" ] && [ "${current_ver}" -gt "${install_ver}" ] ; then
 | 
			
		||||
                xsd=`zenity --title  "${port_upd1}" --text "${port_upd2}" --list --radiolist --height=230 --column="${inst_set}" --column "${port_upd3}" \
 | 
			
		||||
                TRUE "${port_upd4}" \
 | 
			
		||||
                FALSE "${port_upd5}" \
 | 
			
		||||
                FALSE "${port_upd6}" `
 | 
			
		||||
@@ -560,16 +592,16 @@ PW_UPDATE () {
 | 
			
		||||
                    "${port_upd4}")
 | 
			
		||||
                        KILL_PORTWINE
 | 
			
		||||
                        # if try_download https://portwine-linux.ru/ftp/portwine/PortProton-$current_ver "${HOME}/.PortWINE/tmp/PortProton-$current_ver" ; then
 | 
			
		||||
                        #     sh "${HOME}/.PortWINE/tmp/PortProton-$current_ver" 
 | 
			
		||||
                        #     sh "${HOME}/.PortWINE/tmp/PortProton-$current_ver"
 | 
			
		||||
                        #     try_remove_file "${HOME}/.PortWINE/tmp/PortProton-$current_ver"
 | 
			
		||||
                        # fi &
 | 
			
		||||
                        xdg-open $porturl 
 | 
			
		||||
                        xdg-open $porturl
 | 
			
		||||
                        exit 0 ;;
 | 
			
		||||
                    "${port_upd5}")
 | 
			
		||||
                        echo " " ;;	
 | 
			
		||||
                        echo " " ;;
 | 
			
		||||
                    "${port_upd6}")
 | 
			
		||||
                    echo "0" > "${PORT_WINE_TMP_PATH}/update_notifier" ;;
 | 
			
		||||
                esac 
 | 
			
		||||
                esac
 | 
			
		||||
            fi
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
@@ -581,35 +613,35 @@ PW_UPDATE () {
 | 
			
		||||
        port_time=$((${port_time}-1))
 | 
			
		||||
        echo "${port_time}" > "${HOME}/.config/.PortTime"
 | 
			
		||||
    else
 | 
			
		||||
        xsd2=`zenity --title  "${port_time1}" --text "${port_time2}" --list --radiolist --height=240 --column="${inst_set3}" --column "${port_time3}" \
 | 
			
		||||
        xsd2=`zenity --title  "${port_time1}" --text "${port_time2}" --list --radiolist --height=230 --column="${inst_set3}" --column "${port_time3}" \
 | 
			
		||||
        TRUE "${port_time4}" \
 | 
			
		||||
        FALSE "${port_time5}" \
 | 
			
		||||
        FALSE "${port_time6}" `
 | 
			
		||||
        if [ $? = 1 ] ; then 
 | 
			
		||||
        if [ $? = 1 ] ; then
 | 
			
		||||
            echo "1" > "${HOME}/.config/.PortTime"
 | 
			
		||||
        else
 | 
			
		||||
            case $xsd2 in
 | 
			
		||||
                "${port_time4}")
 | 
			
		||||
                    xdg-open "$urlg" &
 | 
			
		||||
                    echo "300" > "${HOME}/.config/.PortTime" 
 | 
			
		||||
                    echo "300" > "${HOME}/.config/.PortTime"
 | 
			
		||||
                    exit 0 ;;
 | 
			
		||||
                "${port_time5}")
 | 
			
		||||
                    echo "75" > "${HOME}/.config/.PortTime" ;;
 | 
			
		||||
                "${port_time6}")
 | 
			
		||||
                    echo "150" > "${HOME}/.config/.PortTime" ;;
 | 
			
		||||
            esac 
 | 
			
		||||
            esac
 | 
			
		||||
        fi
 | 
			
		||||
    fi 
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
PW_INIT_PFX () {
 | 
			
		||||
    rm -f  "${WINEDIR}"*/lib*/*steam*
 | 
			
		||||
    rm -f  "${WINEDIR}"*/lib*/wine/*steam*
 | 
			
		||||
    rm -f  "${WINEDIR}"*/lib*/wine/fakedlls/*steam*
 | 
			
		||||
    if [ ! -d "${WINEPREFIX}" ] || [ ! -d "${WINEPREFIX}"/drive_c/windows ] || \
 | 
			
		||||
       [ ! -d "${WINEPREFIX}/dosdevices" ] || [ ! -f "${WINEPREFIX}"/userdef.reg ] || \
 | 
			
		||||
       [ ! -f "${WINEPREFIX}"/system.reg ] || [ ! -f "${WINEPREFIX}"/user.reg ]
 | 
			
		||||
    then
 | 
			
		||||
        rm -f  "${WINEDIR}"*/lib*/*steam*
 | 
			
		||||
        rm -f  "${WINEDIR}"*/lib*/wine/*steam*
 | 
			
		||||
        rm -f  "${WINEDIR}"*/lib*/wine/*/*steam*
 | 
			
		||||
        pw_clear_pfx
 | 
			
		||||
        create_new_dir "${WINEPREFIX}"
 | 
			
		||||
        if [ -d "${WINEDIR}/share/default_pfx/" ] ; then
 | 
			
		||||
@@ -617,10 +649,10 @@ PW_INIT_PFX () {
 | 
			
		||||
        fi
 | 
			
		||||
        create_new_dir "${WINEPREFIX}/drive_c"
 | 
			
		||||
        create_new_dir "${WINEPREFIX}/dosdevices"
 | 
			
		||||
        [ ! -d "${WINEPREFIX}/dosdevices/c:" ] && try_force_link_dir "${WINEPREFIX}/drive_c/" "${WINEPREFIX}/dosdevices/c:"
 | 
			
		||||
        [ ! -d "${WINEPREFIX}/dosdevices/z:" ] && try_force_link_dir "/" "${WINEPREFIX}/dosdevices/z:"
 | 
			
		||||
        create_new_dir "${WINEPREFIX}/drive_c/windows/syswow64/"
 | 
			
		||||
        create_new_dir "${WINEPREFIX}/drive_c/windows/system32/"
 | 
			
		||||
        [ ! -d "${WINEPREFIX}/dosdevices/c:" ] && try_force_link_dir "${WINEPREFIX}/drive_c/" "${WINEPREFIX}/dosdevices/c:"
 | 
			
		||||
        [ ! -d "${WINEPREFIX}/dosdevices/z:" ] && try_force_link_dir "/" "${WINEPREFIX}/dosdevices/z:"
 | 
			
		||||
        PW_STOP_PROGRESS_BAR
 | 
			
		||||
        PW_START_PROGRESS_BAR_BLOCK "Updating prefix... Please wait..."
 | 
			
		||||
        KILL_PORTWINE
 | 
			
		||||
@@ -629,30 +661,39 @@ PW_INIT_PFX () {
 | 
			
		||||
        KILL_PORTWINE
 | 
			
		||||
        PW_STOP_PROGRESS_BAR
 | 
			
		||||
        PW_START_PROGRESS_BAR_CS "Initialization prefix..."
 | 
			
		||||
        create_new_dir "${WINEPREFIX}/drive_c/windows/Fonts/"
 | 
			
		||||
        try_copy_file "${WINEDIR}/share/fonts/"LiberationSans-Regular.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"arial.ttf
 | 
			
		||||
        try_copy_file "${WINEDIR}/share/fonts/"LiberationSans-Bold.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"arialbd.ttf
 | 
			
		||||
        try_copy_file "${WINEDIR}/share/fonts/"LiberationSerif-Regular.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"times.ttf
 | 
			
		||||
        try_copy_file "${WINEDIR}/share/fonts/"LiberationMono-Regular.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"cour.ttf
 | 
			
		||||
        try_copy_file "${WINEDIR}/share/fonts/"SourceHanSansSCRegular.otf "${WINEPREFIX}/drive_c/windows/Fonts/"msyh.ttf
 | 
			
		||||
    fi
 | 
			
		||||
    [ ! -d "${WINEPREFIX}/dosdevices/c:" ] && try_force_link_dir "${WINEPREFIX}/drive_c/" "${WINEPREFIX}/dosdevices/c:"
 | 
			
		||||
    [ ! -d "${WINEPREFIX}/dosdevices/z:" ] && try_force_link_dir "/" "${WINEPREFIX}/dosdevices/z:"
 | 
			
		||||
    if [ ! -d "${PORT_WINE_PATH}/data/pfx/drive_c/users/${USER}" ]; then
 | 
			
		||||
	    try_force_link_dir "${PORT_WINE_PATH}/data/pfx/drive_c/users/steamuser" "${PORT_WINE_PATH}/data/pfx/drive_c/users/${USER}"
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    create_new_dir "${WINEPREFIX}/drive_c/windows/Fonts/"
 | 
			
		||||
    try_copy_file "${WINEDIR}/share/fonts/"LiberationSans-Regular.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"arial.ttf
 | 
			
		||||
    try_copy_file "${WINEDIR}/share/fonts/"LiberationSans-Bold.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"arialbd.ttf
 | 
			
		||||
    try_copy_file "${WINEDIR}/share/fonts/"LiberationSerif-Regular.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"times.ttf
 | 
			
		||||
    try_copy_file "${WINEDIR}/share/fonts/"LiberationMono-Regular.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"cour.ttf
 | 
			
		||||
    try_copy_file "${WINEDIR}/share/fonts/"SourceHanSansSCRegular.otf "${WINEPREFIX}/drive_c/windows/Fonts/"msyh.ttf
 | 
			
		||||
    if [ ! -d "${PORT_WINE_PATH}/drive_c" ]; then
 | 
			
		||||
	    try_force_link_dir "${PORT_WINE_PATH}/data/pfx/drive_c/" "${PORT_WINE_PATH}/"
 | 
			
		||||
    fi
 | 
			
		||||
    create_new_dir "${WINEPREFIX}/drive_c/users/Public/Documents/Steam"
 | 
			
		||||
    create_new_dir "${WINEPREFIX}/drive_c/users/steamuser/Documents/Steam"
 | 
			
		||||
    var_winedlloverride_update "steam_api,steam_api64,steamclient,steamclient64=n"
 | 
			
		||||
 | 
			
		||||
    export TOTAL_VRAM=`"${WINELIB}/amd64/usr/bin/glxinfo" -B | grep Total | awk -F: '{print $2}' | awk '{print $1}'`
 | 
			
		||||
    echo "TOTAL_VRAM=${TOTAL_VRAM}"
 | 
			
		||||
    try_copy_file "${WINEDIR}/lib/wine/dxvk/dxvk_config.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
 | 
			
		||||
    try_copy_file "${WINEDIR}/lib64/wine/dxvk/dxvk_config.dll" "${WINEPREFIX}/drive_c/windows/system32/"
 | 
			
		||||
    if [ "${PW_VULKAN_USE}" = "0" ]; then
 | 
			
		||||
    # export TOTAL_VRAM=`"${PW_WINELIB}/runtime/bin/glxinfo" -B | grep Total | awk -F: '{print $2}' | awk '{print $1}'`
 | 
			
		||||
    # echo "TOTAL_VRAM=${TOTAL_VRAM}"
 | 
			
		||||
    echo "Try copy native DXGI"
 | 
			
		||||
    if ! try_copy_file "${WINEDIR}"/lib/wine/fakedlls/dxgi.dll "${WINEPREFIX}/drive_c/windows/syswow64/"
 | 
			
		||||
    then try_copy_file "${WINEDIR}"/lib/wine/i386-windows/dxgi.dll "${WINEPREFIX}/drive_c/windows/syswow64/"
 | 
			
		||||
    fi
 | 
			
		||||
    if ! try_copy_file "${WINEDIR}"/lib64/wine/fakedlls/dxgi.dll "${WINEPREFIX}/drive_c/windows/system32/"
 | 
			
		||||
    then try_copy_file "${WINEDIR}"/lib64/wine/x86_64-windows/dxgi.dll "${WINEPREFIX}/drive_c/windows/system32/"
 | 
			
		||||
    fi
 | 
			
		||||
    if [ "${PW_VULKAN_USE}" = "0" ] ; then
 | 
			
		||||
        export MESA_GLSL_CACHE_DIR="${PORT_WINE_TMP_PATH}"
 | 
			
		||||
        export GL_NO_DSO_FINALIZER=1 
 | 
			
		||||
        export GL_YIELD="NOTHING" 
 | 
			
		||||
        export GL_SHARPEN_IGNORE_FILM_GRAIN=0 
 | 
			
		||||
        export GL_SHARPEN_ENABLE=1 
 | 
			
		||||
        export __GL_SHARPEN_VALUE=0 
 | 
			
		||||
        export __GLX_VENDOR_LIBRARY_NAME=nvidia
 | 
			
		||||
        export GL_NO_DSO_FINALIZER=1
 | 
			
		||||
        export GL_YIELD="NOTHING"
 | 
			
		||||
        for wine_build_dll in d3d11 d3d10 d3d10core d3d10_1 d3d9 ; do
 | 
			
		||||
            if ! try_copy_file "${WINEDIR}/lib/wine/${wine_build_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
 | 
			
		||||
            then try_copy_file "${WINEDIR}/lib/wine/i386-windows/${wine_build_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
 | 
			
		||||
@@ -661,55 +702,35 @@ PW_INIT_PFX () {
 | 
			
		||||
            then try_copy_file "${WINEDIR}/lib64/wine/x86_64-windows/${wine_build_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/"
 | 
			
		||||
            fi
 | 
			
		||||
        done
 | 
			
		||||
        if ! try_copy_file "${WINEDIR}"/lib/wine/fakedlls/dxgi.dll "${WINEPREFIX}/drive_c/windows/syswow64/"
 | 
			
		||||
        then try_copy_file "${WINEDIR}"/lib/wine/i386-windows/dxgi.dll "${WINEPREFIX}/drive_c/windows/syswow64/"
 | 
			
		||||
        fi
 | 
			
		||||
        if ! try_copy_file "${WINEDIR}"/lib64/wine/fakedlls/dxgi.dll "${WINEPREFIX}/drive_c/windows/system32/"
 | 
			
		||||
        then try_copy_file "${WINEDIR}"/lib64/wine/x86_64-windows/dxgi.dll "${WINEPREFIX}/drive_c/windows/system32/"
 | 
			
		||||
        fi
 | 
			
		||||
        var_winedlloverride_update "dxgi=b;d3d12="
 | 
			
		||||
        var_winedlloverride_update "d3d11,d3d10,d3d10core,d3d10_1,d3d9,dxgi=b;d3d12="
 | 
			
		||||
        echo "Use OpenGL"
 | 
			
		||||
    elif [ "${PW_VULKAN_USE}" = "dxvk" ]; then
 | 
			
		||||
        for wine_dxvk_dll in d3d11 d3d10 d3d10core d3d10_1 d3d9 dxgi ; do
 | 
			
		||||
            try_copy_file "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}/x32/${wine_dxvk_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
 | 
			
		||||
            try_copy_file "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}/x64/${wine_dxvk_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/"
 | 
			
		||||
    elif [ "${PW_VULKAN_USE}" = "vkd3d" ] ; then
 | 
			
		||||
        echo "Try copy native VKD3D files"
 | 
			
		||||
        for wine_vkd3d_dll in d3d12 libvkd3d-proton-utils-3 ; do
 | 
			
		||||
            try_copy_file "${WINEDIR}/lib/wine/vkd3d-proton/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
 | 
			
		||||
            try_copy_file "${WINEDIR}/lib64/wine/vkd3d-proton/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/"
 | 
			
		||||
            var_winedlloverride_update "${wine_vkd3d_dll}=n"
 | 
			
		||||
            var_winedlloverride_update="dxgi=b"
 | 
			
		||||
        done
 | 
			
		||||
        export VKD3D_FEATURE_LEVEL="12_0"
 | 
			
		||||
        echo "Use VKD3D-PROTON only (DX12 to vulkan)"
 | 
			
		||||
    else
 | 
			
		||||
        export CP_DXVK_FILES="d3d11 d3d10 d3d10core d3d10_1 d3d9 dxgi dxvk_config"
 | 
			
		||||
        echo "Try copy native DXVK files"
 | 
			
		||||
        for wine_dxvk_dll in ${CP_DXVK_FILES} ; do
 | 
			
		||||
            try_copy_file "${WINEDIR}/lib/wine/dxvk/${wine_dxvk_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
 | 
			
		||||
            try_copy_file "${WINEDIR}/lib64/wine/dxvk/${wine_dxvk_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/"
 | 
			
		||||
            var_winedlloverride_update "${wine_dxvk_dll}=n"
 | 
			
		||||
        done
 | 
			
		||||
        var_winedlloverride_update "d3d12="
 | 
			
		||||
        echo "Use DXVK version ${PW_DXVK_VER} (DX9-DX11 to Vulkan)"
 | 
			
		||||
    else
 | 
			
		||||
        for wine_vkd3d_dll in d3d12 ; do
 | 
			
		||||
            try_copy_file "${PW_VULKAN_DLL}/vkd3d-proton-${PW_VKD3D_VER}/x86/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
 | 
			
		||||
            try_copy_file "${PW_VULKAN_DLL}/vkd3d-proton-${PW_VKD3D_VER}/x64/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/"
 | 
			
		||||
        echo "Try copy native VKD3D files"
 | 
			
		||||
        for wine_vkd3d_dll in d3d12 libvkd3d-proton-utils-3 ; do
 | 
			
		||||
            try_copy_file "${WINEDIR}/lib/wine/vkd3d-proton/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
 | 
			
		||||
            try_copy_file "${WINEDIR}/lib64/wine/vkd3d-proton/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/"
 | 
			
		||||
            var_winedlloverride_update "${wine_vkd3d_dll}=n"
 | 
			
		||||
        done
 | 
			
		||||
        if [ ! -z "${PW_DXGI_FROM_DXVK}" ] && [ "${PW_DXGI_FROM_DXVK}" != 0 ] ; then
 | 
			
		||||
            for wine_dxvk_dll in d3d11 d3d10 d3d10core d3d10_1 d3d9 dxgi ; do
 | 
			
		||||
                try_copy_file "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}/x32/${wine_dxvk_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
 | 
			
		||||
                try_copy_file "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}/x64/${wine_dxvk_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/"
 | 
			
		||||
                var_winedlloverride_update "${wine_dxvk_dll}=n"
 | 
			
		||||
            done
 | 
			
		||||
        else
 | 
			
		||||
            if ! try_copy_file "${WINEDIR}"/lib/wine/fakedlls/dxgi.dll "${WINEPREFIX}/drive_c/windows/syswow64/"
 | 
			
		||||
            then try_copy_file "${WINEDIR}"/lib/wine/i386-windows/dxgi.dll "${WINEPREFIX}/drive_c/windows/syswow64/"
 | 
			
		||||
            fi
 | 
			
		||||
            if ! try_copy_file "${WINEDIR}"/lib64/wine/fakedlls/dxgi.dll "${WINEPREFIX}/drive_c/windows/system32/"
 | 
			
		||||
            then try_copy_file "${WINEDIR}"/lib64/wine/x86_64-windows/dxgi.dll "${WINEPREFIX}/drive_c/windows/system32/"
 | 
			
		||||
            fi
 | 
			
		||||
            var_winedlloverride_update "dxgi=b"
 | 
			
		||||
            for wine_build_dll in d3d11 d3d10 d3d10core d3d10_1 d3d9 ; do
 | 
			
		||||
                if ! try_copy_file "${WINEDIR}/lib/wine/${wine_build_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
 | 
			
		||||
                then try_copy_file "${WINEDIR}/lib/wine/i386-windows/${wine_build_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
 | 
			
		||||
                fi
 | 
			
		||||
                if ! try_copy_file "${WINEDIR}/lib64/wine/${wine_build_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/"
 | 
			
		||||
                then try_copy_file "${WINEDIR}/lib64/wine/x86_64-windows/${wine_build_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/"
 | 
			
		||||
                fi
 | 
			
		||||
            done
 | 
			
		||||
        fi
 | 
			
		||||
        export VKD3D_FEATURE_LEVEL="12_0"
 | 
			
		||||
        export PW_WINDOWS_VER="10"
 | 
			
		||||
        echo "Use VKD3D-PROTON version ${PW_VKD3D_VER} (DX12 to vulkan)"
 | 
			
		||||
        echo "Use DXVK + VKD3D-PROTON"
 | 
			
		||||
    fi
 | 
			
		||||
 | 
			
		||||
    PW_OTHER_FIXES
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
@@ -717,28 +738,45 @@ PW_SCRIPTS_UPDATE () {
 | 
			
		||||
    if [ ! -f "${PORT_WINE_TMP_PATH}/scripts_ver" ] ; then
 | 
			
		||||
        echo "1000" > "${PORT_WINE_TMP_PATH}/scripts_ver"
 | 
			
		||||
    fi
 | 
			
		||||
    echo `curl -s --list-only "${PW_FTP_URL}/current_version/scripts_ver"` > "${PORT_WINE_TMP_PATH}/scripts_cur_ver"
 | 
			
		||||
    if [ "$?" == "0" ] ; then
 | 
			
		||||
        read scripts_current_ver < "${PORT_WINE_TMP_PATH}/scripts_cur_ver"
 | 
			
		||||
        try_remove_file "${PORT_WINE_TMP_PATH}/scripts_cur_ver"
 | 
			
		||||
        if [ ! -z "${scripts_current_ver}" ] && [ "${scripts_current_ver}" -gt "${scripts_install_ver}" ] ; then
 | 
			
		||||
            echo "######################################################"
 | 
			
		||||
            echo "Update scripts..."
 | 
			
		||||
            try_remove_file "${PORT_WINE_TMP_PATH}/scripts.tar.xz"
 | 
			
		||||
            if try_download "${PW_FTP_URL}/dist/scripts.tar.xz" "${PORT_WINE_TMP_PATH}/scripts.tar.xz" ; then
 | 
			
		||||
                tar -Jxvf "${PORT_WINE_TMP_PATH}/scripts.tar.xz" -C "${PORT_WINE_PATH}/data/"
 | 
			
		||||
                if [ "$?" == "0" ] ; then
 | 
			
		||||
                    try_remove_file "${PORT_WINE_TMP_PATH}/scripts.tar.xz"
 | 
			
		||||
                    echo "${scripts_current_ver}" > "${PORT_WINE_TMP_PATH}/scripts_ver"
 | 
			
		||||
                    "${pw_yad}" --title="Changelog" --borders=10 \
 | 
			
		||||
                    --text="Скрипты были успешно обновлены.\nДля продолжения запуска порта нажмите ОК." \
 | 
			
		||||
                    --text-align=center --text-info --show-uri --wrap --center --width=1200 --height=550 \
 | 
			
		||||
                    --filename="${PORT_WINE_PATH}/data/changelog" --uri-color=red
 | 
			
		||||
                    [ "$?" == 0 ] && /bin/bash -c ${pw_full_command_line[*]} &
 | 
			
		||||
                    exit 0
 | 
			
		||||
                fi
 | 
			
		||||
            else
 | 
			
		||||
                zenity_error_download && PW_SCRIPTS_UPDATE
 | 
			
		||||
    export scripts_install_ver=`cat "${PORT_WINE_TMP_PATH}/scripts_ver" | head -n 1`
 | 
			
		||||
    if [ ! -f "${PORT_WINE_TMP_PATH}/scripts_update_notifier" ] ; then
 | 
			
		||||
            echo "1" > "${PORT_WINE_TMP_PATH}/scripts_update_notifier"
 | 
			
		||||
    fi
 | 
			
		||||
    read "scripts_update_not" < "${PORT_WINE_TMP_PATH}/scripts_update_notifier"
 | 
			
		||||
    if [ "${scripts_update_not}" = "1" ] ; then
 | 
			
		||||
        if try_download_silent "${PW_FTP_URL}/current_version/scripts_ver" "${PORT_WINE_TMP_PATH}/scripts_cur_ver" ; then
 | 
			
		||||
            read scripts_current_ver < "${PORT_WINE_TMP_PATH}/scripts_cur_ver"
 | 
			
		||||
            try_remove_file "${PORT_WINE_TMP_PATH}/scripts_cur_ver"
 | 
			
		||||
            if [ ! -z "${scripts_current_ver}" ] && [ "${scripts_current_ver}" -gt "${scripts_install_ver}" ] ; then
 | 
			
		||||
                xcsd=`zenity --title  "${scripts_upd1}" --text "${scripts_upd2}" --list --radiolist --height=230 --column="${inst_set}" --column "${scripts_upd3}" \
 | 
			
		||||
                TRUE "${scripts_upd4}" \
 | 
			
		||||
                FALSE "${scripts_upd5}" \
 | 
			
		||||
                FALSE "${scripts_upd6}"`
 | 
			
		||||
                case $xcsd in
 | 
			
		||||
                    "${scripts_upd4}")
 | 
			
		||||
                        echo "######################################################"
 | 
			
		||||
                        echo "Update scripts..."
 | 
			
		||||
                        try_remove_file "${PORT_WINE_TMP_PATH}/scripts.tar.xz"
 | 
			
		||||
                        if try_download_silent "${PW_FTP_URL}/dist/scripts.tar.xz" "${PORT_WINE_TMP_PATH}/scripts.tar.xz" ; then
 | 
			
		||||
                            tar -Jxvf "${PORT_WINE_TMP_PATH}/scripts.tar.xz" -C "${PORT_WINE_PATH}/data/"
 | 
			
		||||
                            if [ "$?" == "0" ] ; then
 | 
			
		||||
                                try_remove_file "${PORT_WINE_TMP_PATH}/scripts.tar.xz"
 | 
			
		||||
                                echo "${scripts_current_ver}" > "${PORT_WINE_TMP_PATH}/scripts_ver"
 | 
			
		||||
                                "${pw_yad}" --title="Changelog" --borders=10 \
 | 
			
		||||
                                --text="Скрипты были успешно обновлены.\nДля продолжения запуска порта нажмите ОК." \
 | 
			
		||||
                                --text-align=center --text-info --show-uri --wrap --center --width=1200 --height=550 \
 | 
			
		||||
                                --filename="${PORT_WINE_PATH}/data/changelog" --uri-color=red
 | 
			
		||||
                                [ "$?" == 0 ] && /bin/bash -c ${pw_full_command_line[*]} &
 | 
			
		||||
                                exit 0
 | 
			
		||||
                            fi
 | 
			
		||||
                        else
 | 
			
		||||
                            zenity_error_download && PW_SCRIPTS_UPDATE
 | 
			
		||||
                        fi ;;
 | 
			
		||||
                    "${scripts_upd5}")
 | 
			
		||||
                        echo " " ;;
 | 
			
		||||
                    "${scripts_upd6}")
 | 
			
		||||
                    echo "0" > "${PORT_WINE_TMP_PATH}/scripts_update_notifier" ;;
 | 
			
		||||
                esac
 | 
			
		||||
            fi
 | 
			
		||||
        fi
 | 
			
		||||
    fi
 | 
			
		||||
@@ -747,7 +785,7 @@ PW_SCRIPTS_UPDATE () {
 | 
			
		||||
PW_RUN () {
 | 
			
		||||
    if [ ! -z "$portwine_exe" ] ; then
 | 
			
		||||
        export PATH_TO_GAME="$( cd "$( dirname "${portwine_exe}" )" >/dev/null 2>&1 && pwd )"
 | 
			
		||||
        cd "$PATH_TO_GAME"
 | 
			
		||||
        cd "${PATH_TO_GAME}"
 | 
			
		||||
    else
 | 
			
		||||
        cd "${WINEPREFIX}/drive_c"
 | 
			
		||||
    fi
 | 
			
		||||
@@ -757,18 +795,22 @@ PW_RUN () {
 | 
			
		||||
        export PW_TERM=""
 | 
			
		||||
        export PW_LOG_TO_FILE="${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
        if [ ! -z "${PW_GAMEMODERUN}" ] && [ "${PW_GAMEMODERUN}" != 0 ] ; then
 | 
			
		||||
            echo "Full command line:  $PW_TERM ${optirun_on} ${PW_RUNTIME} gamemoderun ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}" "&>>${PW_LOG_TO_FILE}"
 | 
			
		||||
            $PW_TERM ${optirun_on} ${PW_RUNTIME} gamemoderun ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} &>>"${PW_LOG_TO_FILE}"
 | 
			
		||||
            echo "Use logging with gamemode"
 | 
			
		||||
            echo "Full command line:  $PW_TERM ${optirun_on} gamemoderun ${PW_RUNTIME} ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}" "&>>${PW_LOG_TO_FILE}"
 | 
			
		||||
            $PW_TERM ${optirun_on} gamemoderun ${PW_RUNTIME} ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} &>>"${PW_LOG_TO_FILE}"
 | 
			
		||||
        else
 | 
			
		||||
            echo "Use logging without gamemode"
 | 
			
		||||
            echo "Full command line: $PW_TERM ${optirun_on} ${PW_RUNTIME} ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}" "&>>${PW_LOG_TO_FILE}"
 | 
			
		||||
            $PW_TERM ${optirun_on} ${PW_RUNTIME} ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} &>>"${PW_LOG_TO_FILE}"
 | 
			
		||||
        fi
 | 
			
		||||
    else
 | 
			
		||||
        [ "${PW_USE_TERMINAL}" != "1" ] && export PW_TERM=""
 | 
			
		||||
        if [ ! -z "${PW_GAMEMODERUN}" ] && [ "${PW_GAMEMODERUN}" != 0 ] ; then
 | 
			
		||||
            echo "Full command line: $PW_TERM ${optirun_on} ${PW_RUNTIME} gamemoderun ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}"
 | 
			
		||||
            $PW_TERM ${optirun_on} ${PW_RUNTIME} gamemoderun ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}
 | 
			
		||||
            echo "Use gamemode without terminal"
 | 
			
		||||
            echo "Full command line: $PW_TERM ${optirun_on} gamemoderun ${PW_RUNTIME} ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}"
 | 
			
		||||
            $PW_TERM ${optirun_on} gamemoderun ${PW_RUNTIME} ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}
 | 
			
		||||
        else
 | 
			
		||||
            echo "Don\`t use gamemode without terminal"
 | 
			
		||||
            echo "Full command line: $PW_TERM ${optirun_on} ${PW_RUNTIME} ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}"
 | 
			
		||||
            $PW_TERM ${optirun_on} ${PW_RUNTIME} ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}
 | 
			
		||||
        fi
 | 
			
		||||
@@ -793,23 +835,11 @@ fi
 | 
			
		||||
 | 
			
		||||
unset MANGOHUD PW_NO_ESYNC PW_NO_FSYNC PW_VULKAN_USE WINEDLLOVERRIDES PW_NO_WRITE_WATCH PW_CHECK_AUTOINSTAL
 | 
			
		||||
var_winedlloverride_update "winemenubuilder.exe="
 | 
			
		||||
export url_mono="https://github.com/madewokherd/wine-mono/releases/download/wine-mono-${mono_ver}/wine-mono-${mono_ver}-x86.tar.xz"
 | 
			
		||||
export url_gecko_x86="https://dl.winehq.org/wine/wine-gecko/${gecko_ver}/wine-gecko-${gecko_ver}-x86.tar.xz"
 | 
			
		||||
export url_gecko_x86_64="https://dl.winehq.org/wine/wine-gecko/${gecko_ver}/wine-gecko-${gecko_ver}-x86_64.tar.xz"
 | 
			
		||||
export urlg="https://portwine-linux.ru/portwine-faq/"
 | 
			
		||||
export PW_FTP_URL="https://portwine-linux.ru/ftp"
 | 
			
		||||
export WINEDIR="${PORT_WINE_PATH}"/data/dist
 | 
			
		||||
export WINELIB="${HOME}/.PortWINE/libs${pw_libs_ver}"
 | 
			
		||||
export WINEPREFIX="${PORT_WINE_PATH}/data/pfx"
 | 
			
		||||
export PW_COMPAT_MEDIA_PATH="${PORT_WINE_TMP_PATH}"
 | 
			
		||||
export WINE_WIN_START="${WINEPREFIX}/drive_c/windows/system32/start.exe"
 | 
			
		||||
export PW_RUNTIME="${WINELIB}/run-in-soldier --remove-game-overlay --share-home --runtime=runtime --"
 | 
			
		||||
export PW_WINELIB="${HOME}/.PortWINE/libs${pw_libs_ver}"
 | 
			
		||||
export PW_GUI_ICON_PATH="${PORT_WINE_PATH}/data/img/gui"
 | 
			
		||||
export PW_VULKAN_DLL="${HOME}/.PortWINE/vulkan"
 | 
			
		||||
export PW_DXVK_VER="${PW_DEF_DXVK_VER}"
 | 
			
		||||
export PW_VKD3D_VER="${PW_DEF_VKD3D_VER}"
 | 
			
		||||
export install_ver=`cat "${PORT_WINE_TMP_PATH}/${portname}_ver" | head -n 1`
 | 
			
		||||
export scripts_install_ver=`cat "${PORT_WINE_TMP_PATH}/scripts_ver" | head -n 1`
 | 
			
		||||
 | 
			
		||||
if [ -z "${INSTALLING_PORT}" ] ; then
 | 
			
		||||
    PW_LOAD_LIBS
 | 
			
		||||
 
 | 
			
		||||
@@ -6,7 +6,6 @@ try_remove_file "${PORT_WINE_TMP_PATH}/update_notifier"
 | 
			
		||||
try_remove_file "${PORT_WINE_TMP_PATH}/init_run_suc"
 | 
			
		||||
 | 
			
		||||
try_remove_file "${PORT_WINE_PATH}/data/port_on"
 | 
			
		||||
try_remove_file "${PORT_WINE_PATH}/data/dxvk.conf"
 | 
			
		||||
try_remove_file "${PORT_WINE_PATH}/settings.desktop"
 | 
			
		||||
try_remove_file "${PORT_WINE_PATH}/debug.desktop"
 | 
			
		||||
try_remove_file "${PORT_WINE_PATH}/restart.desktop"
 | 
			
		||||
@@ -57,11 +56,11 @@ do
 | 
			
		||||
done
 | 
			
		||||
chmod u+x "${PORT_SCRIPTS_PATH}/"*
 | 
			
		||||
 | 
			
		||||
try_force_link_dir "${PORT_WINE_PATH}/data/pfx/drive_c/" "${PORT_WINE_PATH}/"
 | 
			
		||||
 | 
			
		||||
if [ "${s_install}" = "1" ]; then
 | 
			
		||||
	echo "Installation completed successfully."
 | 
			
		||||
else
 | 
			
		||||
	`zenity --info --title "${inst_set_top}" --text "${inst_succ}" --no-wrap ` > /dev/null 2>&1  
 | 
			
		||||
	xdg-open "http://portwine-linux.ru/portwine-faq/" > /dev/null 2>&1 & exit 0
 | 
			
		||||
fi  
 | 
			
		||||
 | 
			
		||||
unset INSTALLING_PORT
 | 
			
		||||
@@ -13,13 +13,13 @@ PORTWINE_LAUNCH () {
 | 
			
		||||
    PORTWINE_BAT=`basename "${portwine_exe}" | grep .bat`
 | 
			
		||||
    if [ ! -z "${PW_VIRTUAL_DESKTOP}" ] && [ "${PW_VIRTUAL_DESKTOP}" == "1" ] ; then
 | 
			
		||||
        pw_screen_resolution=`xrandr --current | grep "*" | awk '{print $1;}' | head -1`
 | 
			
		||||
        PW_RUN explorer "/desktop=portwine,${pw_screen_resolution}" "$WINE_WIN_START" /unix "$portwine_exe"
 | 
			
		||||
        PW_RUN explorer "/desktop=portwine,${pw_screen_resolution}" "$portwine_exe"
 | 
			
		||||
    elif [ ! -z "${PORTWINE_MSI}" ]; then
 | 
			
		||||
        PW_RUN msiexec /i "$portwine_exe"
 | 
			
		||||
    elif [ ! -z "${PORTWINE_BAT}" ] || [ ! -z "${portwine_exe}" ]; then
 | 
			
		||||
        PW_RUN "$WINE_WIN_START" /unix "$portwine_exe"
 | 
			
		||||
        PW_RUN ${WINE_WIN_START} "$portwine_exe"
 | 
			
		||||
    else
 | 
			
		||||
        PW_RUN "$WINE_WIN_START" explorer
 | 
			
		||||
        PW_RUN explorer
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
PORTWINE_CREATE_SHORTCUT () {
 | 
			
		||||
@@ -30,7 +30,11 @@ PORTWINE_CREATE_SHORTCUT () {
 | 
			
		||||
        --title="${sc_path}" --filename="${PORT_WINE_PATH}/data/pfx/drive_c/")
 | 
			
		||||
        if [ $? -eq 1 ];then exit 1; fi
 | 
			
		||||
    fi
 | 
			
		||||
    PORTPROTON_NAME="$(basename "${PORTPROTON_EXE}" | sed s/".exe"/""/gi )"
 | 
			
		||||
    if [ ! -z "${PORTWINE_CREATE_SHORTCUT_NAME}" ] ; then
 | 
			
		||||
        export PORTPROTON_NAME="${PORTWINE_CREATE_SHORTCUT_NAME}"
 | 
			
		||||
    else
 | 
			
		||||
        PORTPROTON_NAME="$(basename "${PORTPROTON_EXE}" | sed s/".exe"/""/gi )"
 | 
			
		||||
    fi
 | 
			
		||||
    PORTPROTON_PATH="$( cd "$( dirname "${PORTPROTON_EXE}" )" >/dev/null 2>&1 && pwd )"
 | 
			
		||||
    if [ -x "`which wrestool 2>/dev/null`" ]; then
 | 
			
		||||
        wrestool -x --output="${PORTPROTON_PATH}/" -t14 "${PORTPROTON_EXE}"
 | 
			
		||||
@@ -80,13 +84,21 @@ PORTWINE_DEBUG () {
 | 
			
		||||
    KILL_PORTWINE
 | 
			
		||||
    export PW_LOG=1
 | 
			
		||||
    export PW_WINEDBG_DISABLE=0
 | 
			
		||||
    START_PORTWINE
 | 
			
		||||
    echo "${port_deb1}" > "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "${port_deb2}" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "-----------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "-------------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "PortWINE version:" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    read install_ver < "${PORT_WINE_TMP_PATH}/${portname}_ver"
 | 
			
		||||
    echo "${portname}-${install_ver}" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "------------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "Scripts version:" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    cat "${PORT_WINE_TMP_PATH}/scripts_ver" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "-----------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    if [ "${PW_USE_RUNTIME}" = 0 ] ; then
 | 
			
		||||
        echo "RUNTIME is disabled" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    else
 | 
			
		||||
        echo "RUNTIME is enabled" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    fi
 | 
			
		||||
    echo "----------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    if [ ! -z "${portwine_exe}" ] ; then
 | 
			
		||||
        echo "Debug for programm:" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
@@ -124,11 +136,11 @@ PORTWINE_DEBUG () {
 | 
			
		||||
    free -m >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "-----------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "Graphic cards and drivers" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    "${WINELIB}/amd64/usr/bin/glxinfo" -B >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    "${PW_WINELIB}/runtime/bin/glxinfo" -B >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "----------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "Vulkan info device name:" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    "${WINELIB}/amd64/usr/bin/vulkaninfo" | grep deviceName >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    "${WINELIB}/amd64/usr/bin/vkcube" --c 50
 | 
			
		||||
    "${PW_WINELIB}/runtime/bin/vulkaninfo" | grep deviceName >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    "${PW_WINELIB}/runtime/bin/vkcube" --c 50
 | 
			
		||||
    if [ $? -eq 0 ]; then
 | 
			
		||||
        echo "Vulkan cube test passed successfully" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    else
 | 
			
		||||
@@ -141,17 +153,20 @@ PORTWINE_DEBUG () {
 | 
			
		||||
    fi
 | 
			
		||||
    echo "--------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "Version WINE in the Port" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    "$WINELOADER" --version 2>&1 | tee -a "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    if [ -f "${WINEDIR}/version" ]
 | 
			
		||||
    then cat "${WINEDIR}/version" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    else ${PW_RUNTIME} "$WINELOADER" --version 2>&1 | tee -a "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    fi
 | 
			
		||||
    echo "-------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "winetricks.log:" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    cat "${WINEPREFIX}/winetricks.log" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    if [ ! -z "${PORTWINE_DB_FILE}" ]; then
 | 
			
		||||
        echo "Use ${PORTWINE_DB_FILE} db file:" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
        cat "${PORTWINE_DB_FILE}" | sed '/##/d' | awk '{print $1 " " $2}' >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
        cat "${PORTWINE_DB_FILE}" | sed '/##/d' >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    else
 | 
			
		||||
        echo "Use ${PORT_SCRIPTS_PATH}/portwine_db/default db file:" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
        cat "${PORT_SCRIPTS_PATH}/portwine_db/default" | sed '/##/d' | awk '{print $1 " " $2}' >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
        cat "${PORT_SCRIPTS_PATH}/portwine_db/default" | sed '/##/d' >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    fi
 | 
			
		||||
    echo "-----------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
    echo "Log WINE:" >> "${PORT_WINE_PATH}/${portname}.log"
 | 
			
		||||
@@ -168,11 +183,11 @@ PORTWINE_DEBUG () {
 | 
			
		||||
}
 | 
			
		||||
PW_WINECFG () {
 | 
			
		||||
    START_PORTWINE
 | 
			
		||||
    PW_RUN "$WINE_WIN_START" winecfg
 | 
			
		||||
    PW_RUN winecfg
 | 
			
		||||
}
 | 
			
		||||
PW_WINEFILE () {
 | 
			
		||||
    START_PORTWINE
 | 
			
		||||
    PW_RUN "$WINE_WIN_START" explorer
 | 
			
		||||
    PW_RUN explorer
 | 
			
		||||
}
 | 
			
		||||
PW_WINECMD () {
 | 
			
		||||
    export PW_USE_TERMINAL=1
 | 
			
		||||
@@ -181,13 +196,13 @@ PW_WINECMD () {
 | 
			
		||||
}
 | 
			
		||||
PW_WINEREG () {
 | 
			
		||||
    START_PORTWINE
 | 
			
		||||
    PW_RUN "$WINE_WIN_START" regedit
 | 
			
		||||
    PW_RUN regedit
 | 
			
		||||
}
 | 
			
		||||
PW_WINETRICKS () {
 | 
			
		||||
    UPDATE_WINETRICKS
 | 
			
		||||
    export PW_USE_TERMINAL=1
 | 
			
		||||
    START_PORTWINE
 | 
			
		||||
    "${PORT_WINE_TMP_PATH}/winetricks" -qr --force
 | 
			
		||||
    ${PW_TERM} "${PORT_WINE_TMP_PATH}/winetricks" -q --force
 | 
			
		||||
}
 | 
			
		||||
PW_EDIT_DB () {
 | 
			
		||||
    xdg-open "${PORTWINE_DB_FILE}"
 | 
			
		||||
@@ -208,7 +223,7 @@ if [ ! -z "${portwine_exe}" ]; then
 | 
			
		||||
            --button='EDIT  DB'!!"${loc_edit_db} ${PORTWINE_DB}":118 \
 | 
			
		||||
            --button='CREATE SHORTCUT'!!"${loc_creat_shortcut}":100 \
 | 
			
		||||
            --button='DEBUG'!!"${loc_debug}":102 \
 | 
			
		||||
            --button='LAUNCH'!!"${loc_launch}":106 )  
 | 
			
		||||
            --button='LAUNCH'!!"${loc_launch}":106 )
 | 
			
		||||
            PW_YAD_SET="$?"
 | 
			
		||||
        elif [ ! -z "${PORTWINE_DB_FILE}" ] && [ -z "${PW_VULKAN_USE}" ]; then
 | 
			
		||||
            if [ -z "${PW_COMMENT_DB}" ] ; then
 | 
			
		||||
@@ -221,7 +236,7 @@ if [ ! -z "${portwine_exe}" ]; then
 | 
			
		||||
            --button='EDIT  DB'!!"${loc_edit_db} ${PORTWINE_DB}":118 \
 | 
			
		||||
            --button='CREATE SHORTCUT'!!"${loc_creat_shortcut}":100 \
 | 
			
		||||
            --button='DEBUG'!!"${loc_debug}":102 \
 | 
			
		||||
            --button='LAUNCH'!!"${loc_launch}":106 )  
 | 
			
		||||
            --button='LAUNCH'!!"${loc_launch}":106 )
 | 
			
		||||
            PW_YAD_SET="$?"
 | 
			
		||||
            export VULKAN_MOD=`echo "$OUTPUT_START" | awk '{print $1}'`
 | 
			
		||||
        else
 | 
			
		||||
@@ -231,7 +246,7 @@ if [ ! -z "${portwine_exe}" ]; then
 | 
			
		||||
            --field="Run with :CB" "DXVK (DX 9-11 to Vulkan)"\!"VKD3D (DX 12 to Vulkan)"\!"OPENGL " \
 | 
			
		||||
            --button='CREATE SHORTCUT'!!"${loc_creat_shortcut}":100 \
 | 
			
		||||
            --button='DEBUG'!!"${loc_debug}":102 \
 | 
			
		||||
            --button='LAUNCH'!!"${loc_launch}":106 )  
 | 
			
		||||
            --button='LAUNCH'!!"${loc_launch}":106 )
 | 
			
		||||
            PW_YAD_SET="$?"
 | 
			
		||||
            export VULKAN_MOD=`echo "$OUTPUT_START" | awk '{print $1}'`
 | 
			
		||||
        fi
 | 
			
		||||
 
 | 
			
		||||
@@ -6,11 +6,11 @@
 | 
			
		||||
#export DXVK_HUD=fps,devinfo
 | 
			
		||||
#export PW_VIRTUAL_DESKTOP=1
 | 
			
		||||
 | 
			
		||||
export PW_FORCE_DISABLED_GAMEMOD=1
 | 
			
		||||
 | 
			
		||||
export PW_DEF_DXVK_VER=1.8.1
 | 
			
		||||
export PW_DEF_VKD3D_VER=2.3.1
 | 
			
		||||
export PW_USE_RUNTIME=1     # 0 - disabled; 1 - enabled
 | 
			
		||||
export PW_RT_MOUNT_RO=("${HOME}/.PortWINE")
 | 
			
		||||
export PW_RT_MOUNT_RW=("/media" "/mnt" "/run/media/${USER}")
 | 
			
		||||
 | 
			
		||||
export PW_USE_GAMEMODE=1
 | 
			
		||||
export PW_FORCE_USE_VSYNC=2
 | 
			
		||||
export PW_LOG=0
 | 
			
		||||
export PW_TERM=""
 | 
			
		||||
@@ -18,16 +18,20 @@ export PW_USE_TERMINAL=0
 | 
			
		||||
 | 
			
		||||
export PW_WINEDBG_DISABLE=1
 | 
			
		||||
 | 
			
		||||
export PW_WINDOWS_VER="7"
 | 
			
		||||
export PW_WINDOWS_VER="10"
 | 
			
		||||
export WINEARCH="win64"
 | 
			
		||||
 | 
			
		||||
export mono_ver=6.1.2
 | 
			
		||||
export gecko_ver=2.47.2
 | 
			
		||||
export pw_libs_ver="_v11"
 | 
			
		||||
export pw_libs_ver="_v14"
 | 
			
		||||
 | 
			
		||||
export PW_FORCE_LARGE_ADDRESS_AWARE=1
 | 
			
		||||
export WINEDIR="${PORT_WINE_PATH}/data/dist"
 | 
			
		||||
export WINEPREFIX="${PORT_WINE_PATH}/data/pfx"
 | 
			
		||||
export WINE_WIN_START="start.exe /i /unix"
 | 
			
		||||
 | 
			
		||||
export porturl="http://portwine-linux.ru/"
 | 
			
		||||
 | 
			
		||||
export PW_MUST_HAVE_DLL="xact xact_x64"
 | 
			
		||||
########################################################################
 | 
			
		||||
ADD_IN_START_PORTWINE ()
 | 
			
		||||
{
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										23267
									
								
								data_from_portwine/tmp/winetricks
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										23267
									
								
								data_from_portwine/tmp/winetricks
									
									
									
									
									
										Executable file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
		Reference in New Issue
	
	Block a user