Compare commits
	
		
			35 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | f869816cb4 | ||
|  | 03deeaa361 | ||
|  | 7eec1f9086 | ||
|  | cb7ad7ec30 | ||
|  | 718af5eb05 | ||
|  | e291a2e90d | ||
|  | ea518e5f21 | ||
|  | 06e3953b19 | ||
|  | 5032d95a77 | ||
|  | 9bcb235657 | ||
|  | 73d12c0f39 | ||
|  | 8700a2c88d | ||
|  | 7415dcbc01 | ||
|  | 00c9d5d926 | ||
|  | 4e59d4b2f4 | ||
|  | 580c5d901a | ||
|  | 0bf4fe7816 | ||
|  | 9f0ad22d37 | ||
|  | 3e40e1bff5 | ||
|  | 088cdecda3 | ||
|  | d88bf7fb38 | ||
|  | 9933accd7f | ||
|  | 0282a77a3c | ||
|  | 5bd52d7a36 | ||
|  | 59826da654 | ||
|  | 603d0d8821 | ||
|  | f4d3684556 | ||
|  | 0391f33674 | ||
|  | df9128143c | ||
|  | 83a18e538a | ||
|  | ebbdaed92d | ||
|  | d32f5b1cc5 | ||
|  | 78552187f0 | ||
|  | 62651c1d93 | ||
|  | 295d028ba7 | 
| @@ -1,16 +1,185 @@ | |||||||
| История изменений и дальнейшие планы: | История изменений и дальнейшие планы: | ||||||
| ----------------------------------------- | ----------------------------------------- | ||||||
| В планах: | В планах: | ||||||
| * создать ветку beta на github и сделать выбор версии внутри порта | * добавить проверку количества db файлов на один exe | ||||||
| * добавить фикс установки dotnet | * перенести скрипты установки порта на github | ||||||
| * добавить кнопку очистки префикса в PortProton | * добавить комментарии описывающие функционал скриптов и db файлов | ||||||
| * проверка версий и обновления скриптов из https://github.com/Castro-Fidel/PortWINE/archive/refs/heads/master.zip | * заниматься только развитием проекта за счет вашей подписки на https://boosty.to/portwine-linux.ru | ||||||
| * EDIT DB открывается не у всех |  | ||||||
| * пересоздать удаление PortProton (чистка ярлыков в меню с помощью grep "путь до порта") |  | ||||||
| * иконка в трей для PortProton (перенести reset в GUI PortProton) |  | ||||||
| * добавить контроль за окнами для правильного отключения прогресс бара |  | ||||||
| * зарабатывать на жизнь развитием проекта с помощью вашей подписки на https://boosty.to/portwine-linux.ru |  | ||||||
| ----------------------------------------- | ----------------------------------------- | ||||||
|  | ###Scripts version 2011### | ||||||
|  | * в GUI AUTOINSTALL добавлены лаунчеры GAMEFORGE (TEST), ANKAMA и GLYPH - Спасибо chal55rus (Sergey P.)! | ||||||
|  | * удален скрипт autoinstall и создан каталог pw_autoinstall (для удобного добавления новых автоустановщиков) | ||||||
|  | * в AUTOINSTALL обновлена версия скачиваемого GOG | ||||||
|  | * в GUI редактора db файлов добавлена кнопка "OPEN DB FILE" для внесение изменений в текстовом редакторе | ||||||
|  | * в функцию pw_other_fixes добавлен поиск и выключение автозапуска PunkBuster в реестре префикса | ||||||
|  |  | ||||||
|  | ###Scripts version 2010### | ||||||
|  | * FIX - исправлено управление мышкой в Overwatch и рекомендованы пар-ры запуска DXVK + PROTON_GE | ||||||
|  | * добавлены все предустановленные шейдеры в vkBasalt.conf | ||||||
|  |  | ||||||
|  | ###Scripts version 2009### | ||||||
|  | * FIX - исправлен перезапуск редактора db файлов при первом включении PW_GUI_DISABLED_CS (отключение запуска GUI) | ||||||
|  |  | ||||||
|  | ###Scripts version 2008### | ||||||
|  | * HOTFIX - исправление функции pw_kill_autostart | ||||||
|  |  | ||||||
|  | ###Scripts version 2007### | ||||||
|  | * HOTFIX - установки WGC | ||||||
|  |  | ||||||
|  | ###Scripts version 2006### | ||||||
|  | * HOTFIX - для AUTOINSTALL | ||||||
|  | * в AUTOINSTALL добавлен MY.GAMES | ||||||
|  |  | ||||||
|  | ###PortProton-95### 02.09.2021 ###Scripts version 2005### | ||||||
|  | * обновлен db файл для steam (под ProtonGE связь с интернетом снова есть) - Спасибо Cefeiko! | ||||||
|  | * обновлен WINE PROTON_GE 6.16-GE1 | ||||||
|  | * переменная PW_GUI_DISABLED_CS сбрасывается при запуске порта (для совместимости со старыми ярлыками которые были созданы на предыдущих версиях порта) | ||||||
|  | * добавлена возможность создавать 32-х битный префикс (необходимо для будущей автоустановки League of Legends) | ||||||
|  | * в GUI AUTOINSTALL добавлены лаунчеры Bethesda.net Launcher и Rockstar-Games-Launcher - Спасибо chal55rus (Sergey P.)! | ||||||
|  | * улучшена функция pw_kill_autostart | ||||||
|  |  | ||||||
|  | ###Scripts version 2004### | ||||||
|  | * HOTFIX - использование и редактирование db файла Battle.NET | ||||||
|  |  | ||||||
|  | ###Scripts version 2003### | ||||||
|  | * HOTFIX - отключение новых обновлений для старых версий PortProton | ||||||
|  |  | ||||||
|  | ###Scripts version 2002### | ||||||
|  | * HOTFIX для настройки db файлов | ||||||
|  |  | ||||||
|  | ###Scripts version 2001### | ||||||
|  | * добавлен графический интерфейс для настройки db файлов | ||||||
|  |  | ||||||
|  | ###PortProton-94### 25.08.2021 ###Scripts version 2000### | ||||||
|  | * добавлено автоматическое скачивание и обновление Proton GE | ||||||
|  | * db файлы создаются автоматически при запуске любого *.exe | ||||||
|  | * последние выбранные режимы запуска сохраняются автоматически в db файлы | ||||||
|  | * добавлены переменные для более точной настройки vkBasalt под каждую игру с помощью db файлов: | ||||||
|  | export PW_VKBASALT_EFFECTS="FakeHDR:cas" - можно изменять на любые эффекты из путь_до_порта/data/vkBasalt.conf | ||||||
|  | export PW_VKBASALT_FFX_CAS="0.7" - изменение резкости в играх (от 0 до 1 с шагом 0.01) | ||||||
|  | так же можно настроить эти пар-ры глобально и для всех игр с помощью: путь_до_порта/data/user.conf | ||||||
|  | PS: не забывает для активации добавить переменную: export ENABLE_VKBASALT=1 в db файл, или для глобального включения в user.conf | ||||||
|  | * добавлены условия для правильного определения переменных LD_LIBRARY_PATH и LD_PRELOAD при автоматическом перезапуске скриптов | ||||||
|  | * запуск нескольких приложений можно запустить только через один и тот же протон | ||||||
|  | * добавлена автоматическая очиста каталога Temp в префиксе порта | ||||||
|  | * создан новый скрипт functions_helper, в который перенесены все вспомогательные функции из runlib | ||||||
|  | * создана новая ветка обновлений скриптов v.2XXX | ||||||
|  | * упрощена структура скрипта runlib | ||||||
|  |  | ||||||
|  | ###Scripts version 1125### | ||||||
|  | * PROTON_STEAM обновлен до v6.3-6b | ||||||
|  | * FIX winetricks и cabextract | ||||||
|  | * множество маленьких изменений и исправлений | ||||||
|  |  | ||||||
|  | ###Scripts version 1124### | ||||||
|  | * выбор версии WINE (PROTON_STEAM v6.3-6rc4; PROTON_GE v6.15.2) | ||||||
|  | * добавлено отображение версии WINE в MANGOHUD | ||||||
|  | * переработан скрипт start.sh (уменьшен код при увеличении удобства использования) | ||||||
|  |  | ||||||
|  | ###Scripts version 1123### | ||||||
|  | * в MANGOHUD по умолчанию добавлен вывод разрешения экрана | ||||||
|  | * добавлен db файл для игры DaysGone (значительно увеличивает FPS) | ||||||
|  |  | ||||||
|  | ###Scripts version 1122### | ||||||
|  | * обновление скриптов для поддержки нового тестового 91 порта включенным FSR по умолчанию (FSR работает только с играми dx9-12 запущеными под vulkan и при выборе разрешения в игре ниже чем поддерживает монитор) | ||||||
|  |  | ||||||
|  | ###Scripts version 1121### | ||||||
|  | * HOTFIX - перенос PW_NO_ESYNC=1 из default db в скрипт var | ||||||
|  | * HOTFIX - для успешного запуска игр WGC на системах где не работали игры WoWS и WoT | ||||||
|  |  | ||||||
|  | ###Scripts version 1120### | ||||||
|  | * перенос unset переменных в разделе main скрипта runlib | ||||||
|  | * после автоустановки windows steam, не перезаписывается ярлык нативного steam в меню. | ||||||
|  | * перед автоустановкой игр добавлена функция kill_portwine | ||||||
|  |  | ||||||
|  | ###Scripts version 1119### | ||||||
|  | * ESYNC отключен по умолчанию из за частой ошибки CXX на некоторых системах. | ||||||
|  | * при включении vkBasalt вместо эффекта Curves используется FakeHDR (минимальное затемнение при увеличении глубины цветопередачи) | ||||||
|  | * при включении vkBasalt уменьшена резкость casSharpness с 0.8 до 0.75 | ||||||
|  |  | ||||||
|  | ###Scripts version 1118### | ||||||
|  | * обновлены libs_v17 с интеграцией MANGOHUD, vkBasalt + reshade | ||||||
|  | * MANGOHUD и vkBasalt польностью интегрированы в контейнер | ||||||
|  | * MANGOHUD снова работает под всеми режимами запуска (OpenGL и Vulkan) включая 32-ух битные игры. | ||||||
|  | * HOTFIX - user.conf корректно переопределяет все переменные | ||||||
|  |  | ||||||
|  | ###Scripts version 1117### | ||||||
|  | * доработка определение месторасполажения установленных шейдеров для vkBasalt | ||||||
|  | * добавлена переменная "PW_SANDBOX_HOME_PATH" при существовании которой закрывается доступ к домашнему каталогу | ||||||
|  |  | ||||||
|  | ###Scripts version 1115 and 1116### | ||||||
|  | * тест обновления скриптов с github | ||||||
|  |  | ||||||
|  | ###Scripts version 1114### | ||||||
|  | * добавлен пользовательский файл конфигурации (путь_до_PortProton/data/user.conf") который при наполнениии замещает настройки скрипта var и db файлов, но при обновлении скриптов остается неизменным, для сохранения ваших настроек. | ||||||
|  | * автоматическое изменение раскладки клавиатуры работает только при установке значении переменной export PW_XKBD_RU_HACK=1 (можно прописывать как в скрипт var, так и в user.conf) | ||||||
|  | * HOTFIX - определение месторасполажения установленных шейдеров для vkBasalt (для работы под Arch и Manjaro) | ||||||
|  | * проверка и обновления скриптов из https://github.com/Castro-Fidel/PortWINE/archive/refs/heads/master.tar.gz | ||||||
|  |  | ||||||
|  | ###Scripts version 1113### | ||||||
|  | * обновлен dxvk до v1.9-51 | ||||||
|  | * обновлен vkd3d до v2.4 | ||||||
|  | * начальная поддержка нативной версии nvapi при условии, что wine его поддерживает | ||||||
|  | * тест vkBasalt (в каталог data добавлен vkBasalt.conf и добавлены переменные в скрипт var) | ||||||
|  |  | ||||||
|  | ###PortProton-90### 28.06.2021 | ||||||
|  | * обновлен Proton 6.3-5 (RELEASE) | ||||||
|  |  | ||||||
|  | ###Scripts version 1112### | ||||||
|  | * mangohud влючаеться по клавишам: правый_шифт+F12 (Shift_R+F12) | ||||||
|  | * HOTFIX - включение vkd3d (dxgi=b) | ||||||
|  |  | ||||||
|  | ###Scripts version 1111### | ||||||
|  | * обновлен DXVK и VKD3D из Proton 6.3-5 (RELEASE) | ||||||
|  | * обновлены библиотеки kerberos и wldap32 (исправляет ошибки подключения к интернету в некоторых играх, например World of Tanks) | ||||||
|  |  | ||||||
|  | ###Scripts version 1110### | ||||||
|  | * mangohud включаеться по клавише F12 при условии, что он установлен в системе | ||||||
|  | * добавлена кнопка очистки префикса в раздел GUI -> SETTINGS | ||||||
|  | * добавлена кнопка удаления порта в раздел GUI -> SETTINGS | ||||||
|  | * добавлена кнопка удаления программ (WINE UNINSTALLER) в раздел GUI -> SETTINGS | ||||||
|  | * добавлена кнопка редактирования скрипта var в раздел GUI -> SETTINGS | ||||||
|  | * обновление winetricks отключенно (опять) и используется доработаная версия от ProtonGE | ||||||
|  | * изменены иконки внутри gui в трее | ||||||
|  |  | ||||||
|  | ###PortProton-89### 25.06.2021 ###Scripts version 1109### | ||||||
|  | * обновлен wine до версии Proton 6.3-5-rc3 | ||||||
|  | * обновлен DXVK и VKD3D из Proton 6.3-5-rc3 | ||||||
|  |  | ||||||
|  | ###Scripts version 1108### | ||||||
|  | * обновлен DXVK и VKD3D из Proton 6.3-5-rc1 | ||||||
|  |  | ||||||
|  | ###Scripts version 1107### | ||||||
|  | * добавлены db: OSU!; FarCry{3,4}; Control; Biomutant; ForzaHorizon4 | ||||||
|  | * включено обновление winetricks (снова отремонтировано скачиваие vcrun20XX) | ||||||
|  |  | ||||||
|  | ###Scripts version 1106### | ||||||
|  | * возвращен VKD3D из Proton 6.3-4b | ||||||
|  |  | ||||||
|  | ###Scripts version 1105### | ||||||
|  | * для распаковки exe файлов при автоматических установках лаунчеров используется 7z вместо 7zr | ||||||
|  | * обновлен DXVK до версии 1.9 | ||||||
|  | * исправлена автоматическая установка GOG | ||||||
|  | * автоматическое создание символьной ссылки users/steamuser/Documents в users/steamuser/My Documents | ||||||
|  | * добавлена иконка в трей для PortProton (завершение всех процессов по ПКМ --> "FORCE EXIT") | ||||||
|  | * добавлена возможность запуска нескольких приложений одновременно и закрывать всё одним нажатием ПКМ --> EXIT | ||||||
|  |  | ||||||
|  | ###Scripts version 1104### | ||||||
|  | * крупное обновлеение контейнера (libs_v16): | ||||||
|  |     - добавлен /bin/yad_new версии 10.1 скомпилированный специально для будущего меню в трее) | ||||||
|  |     - обновлен MANGOHUD (требуется проверка под OpenGL) | ||||||
|  |     - обновлен 7z необходимый для будущей автоматической установки Rockstar Game Launcher | ||||||
|  | * для тестовой поддержки wayland добавлена переменная в скрипт var: GDK_BACKEND="x11" | ||||||
|  | * обновлены DXVK и VKD3D до актуального состояния на 12.06.2021 | ||||||
|  |  | ||||||
|  | ###Scripts version 1103### | ||||||
|  | * HOTFIX - исправление функции pw_kill_autostart | ||||||
|  |  | ||||||
|  | ###Scripts version 1102### | ||||||
|  | * фикс создания ярлыка после автоматической установки STEAM | ||||||
|  | * в AUTOINSTALL добавлена функция pw_kill_autostart для запрета автозапуска лаунчера после автоматической установки | ||||||
|  | * добавлены настройки в ~/.Xresources для корректного отображения текста в xterm, если данного файла нет в корне домашнего каталога | ||||||
|  |  | ||||||
| ###PortProton-87### - RELEASE | ###PortProton-87### - RELEASE | ||||||
| * cтабильная версия wine proton 6.3-4 | * cтабильная версия wine proton 6.3-4 | ||||||
| * стабильные версии новых скриптов 1101 | * стабильные версии новых скриптов 1101 | ||||||
| @@ -24,7 +193,7 @@ | |||||||
| * добавлено отображение скорости интернета и примерный остаток времени при скачивании libs, gecko, mono | * добавлено отображение скорости интернета и примерный остаток времени при скачивании libs, gecko, mono | ||||||
|  |  | ||||||
| ###PortProton-86### | ###PortProton-86### | ||||||
| * обновлен wine до версии Proton 6.9 GE 2 | * обновлен wine до версии  GE 2 | ||||||
| * обновлены либы до версии libs_v15 | * обновлены либы до версии libs_v15 | ||||||
|  |  | ||||||
| ### Скрипты с версии 1095 по 1100 - эксперементальные ### | ### Скрипты с версии 1095 по 1100 - эксперементальные ### | ||||||
| @@ -49,15 +218,13 @@ | |||||||
| * частичный откат кода со скриптов от PortProton-78 | * частичный откат кода со скриптов от PortProton-78 | ||||||
| * контейнерный режим включен по умолчанию и отключается в скрипте "каталог_порта/data/scripts/var" переменной PW_USE_RUNTIME=(1 - включен; 0 - выключен) | * контейнерный режим включен по умолчанию и отключается в скрипте "каталог_порта/data/scripts/var" переменной PW_USE_RUNTIME=(1 - включен; 0 - выключен) | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
| ###PortProton-85### 27.05.2021 ###Scripts version 1090### | ###PortProton-85### 27.05.2021 ###Scripts version 1090### | ||||||
| * для подготовки к релизу используется стабилная версия wine: Proton 6.3-4 | * для подготовки к релизу используется стабилная версия wine: Proton 6.3-4 | ||||||
| * до 4-x прибавка в ФПС в играх DX12 (на моем железе: HZD - x4; Graven - x2; Cyberpunk2077 - x1,25) | * до 4-x прибавка в ФПС в играх DX12 (на моем железе: HZD - x4; Graven - x2; Cyberpunk2077 - x1,25) | ||||||
| * глобальное изменение использование переменных (системных, wine и vulkan) | * глобальное изменение использование переменных (системных, wine и vulkan) | ||||||
| * в лог файл добавлена информация о текущей версии скриптов и используется ли RUNTIME | * в лог файл добавлена информация о текущей версии скриптов и используется ли RUNTIME | ||||||
| * возврат оригинальных значений системных переменных: PATH, LD_LIBRARY_PATH после окончания использования порта | * возврат оригинальных значений системных переменных: PATH, LD_LIBRARY_PATH после окончания использования порта | ||||||
| * HOTFIX - убрано повторное исполнение функции START_PORTWINE во время запуска debug | * HOTFIX - убрано повторное исполнение функции start_portwine во время запуска debug | ||||||
| * HOTFIX - исправлены возможные проблемы старых игр использующие WMF | * HOTFIX - исправлены возможные проблемы старых игр использующие WMF | ||||||
| * HOTFIX - ошибки скачивания vcrun2019 на чистом префиксе | * HOTFIX - ошибки скачивания vcrun2019 на чистом префиксе | ||||||
|  |  | ||||||
| @@ -79,7 +246,7 @@ | |||||||
| * HOTFIX - изменена переменная export WINE_WIN_START="start.exe /b" | * HOTFIX - изменена переменная export WINE_WIN_START="start.exe /b" | ||||||
|  |  | ||||||
| ###Scripts version 1085### | ###Scripts version 1085### | ||||||
| * в скрипт var добавлена и временно включена переменная export PW_USE_RUNTIME=1 (требуется рашение проблемы с загрузкой faudio) | * в скрипт var добавлена и временно включена переменная export PW_USE_RUNTIME=0 (требуется рашение проблемы с загрузкой faudio) | ||||||
| * добавлено автоматическое создание каталога "${WINEPREFIX}/drive_c/users/Public/Documents/Steam" | * добавлено автоматическое создание каталога "${WINEPREFIX}/drive_c/users/Public/Documents/Steam" | ||||||
| * HOTFIX - обновление скриптов после установки происходило только при повторном запуске порта | * HOTFIX - обновление скриптов после установки происходило только при повторном запуске порта | ||||||
|  |  | ||||||
| @@ -148,7 +315,7 @@ | |||||||
|  |  | ||||||
| ###Scripts version 1067### | ###Scripts version 1067### | ||||||
| * HOTFIX - удален аргумент /b при запуске приложений (fix для WGC) | * HOTFIX - удален аргумент /b при запуске приложений (fix для WGC) | ||||||
| * фикс запуска функции PW_OTHER_FIXES | * фикс запуска функции pw_other_fixes | ||||||
| * добавлена проверка повторной установки EVE Online из AUTOINSTALL | * добавлена проверка повторной установки EVE Online из AUTOINSTALL | ||||||
|  |  | ||||||
| ###Scripts version 1066### | ###Scripts version 1066### | ||||||
| @@ -194,7 +361,7 @@ | |||||||
| ###Scripts version 1053### | ###Scripts version 1053### | ||||||
| * HOTFIX - перенос всех функций в скрипте runlib (наверх) | * HOTFIX - перенос всех функций в скрипте runlib (наверх) | ||||||
| * добавлена переменная в default ##export PW_WINE_ALLOW_XIM=1, которая отключает XIM (X input manager) | * добавлена переменная в default ##export PW_WINE_ALLOW_XIM=1, которая отключает XIM (X input manager) | ||||||
| * в функции PW_INIT_PFX добавлено копирование всех dll из библиотек wine/lib(64) в префикс (если префикса не существует) | * в функции pw_init_pfx добавлено копирование всех dll из библиотек wine/lib(64) в префикс (если префикса не существует) | ||||||
|  |  | ||||||
| ###Scripts version 1052### | ###Scripts version 1052### | ||||||
| * отключена автоотчистка ~/.PortWINE | * отключена автоотчистка ~/.PortWINE | ||||||
| @@ -268,7 +435,7 @@ | |||||||
| * добавлена проверка связи с серверами для автономной работы порта | * добавлена проверка связи с серверами для автономной работы порта | ||||||
| * ускорена работа reset скрипта останавливающая все процессы порта | * ускорена работа reset скрипта останавливающая все процессы порта | ||||||
| * исправлены ошибки связанные с остановкой отсутствующих pid-оф yad и процессов wine. | * исправлены ошибки связанные с остановкой отсутствующих pid-оф yad и процессов wine. | ||||||
| * удалено использование wineserver -k в функции KILL_PORTWINE (влияло на инициализацию префикса) | * удалено использование wineserver -k в функции kill_portwine (влияло на инициализацию префикса) | ||||||
| * добавлена отчистка ~/.PortWINE, при условии установки новой версии порта | * добавлена отчистка ~/.PortWINE, при условии установки новой версии порта | ||||||
| * добавлена вся информация из db файла и winetricks.log в debug | * добавлена вся информация из db файла и winetricks.log в debug | ||||||
| * удален каталог vars (из за db файлоа больше в нем нет необходимости) | * удален каталог vars (из за db файлоа больше в нем нет необходимости) | ||||||
| @@ -279,7 +446,7 @@ | |||||||
|  |  | ||||||
| ###PortProton-74### 20.04.2021 ###Scripts version 1037### | ###PortProton-74### 20.04.2021 ###Scripts version 1037### | ||||||
| * обновлен wine до версии Proton 6.3-2 next | * обновлен wine до версии Proton 6.3-2 next | ||||||
| * в setup db изменен список библиотек (фикс  для "xatab") "vcrun6 mfc42 vcrun6sp6 mfc120 vcrun2013" | * в setup db изменен список библиотек (фикс  для "xatab") " mfc42  mfc120 vcrun2013" | ||||||
| * добавить выбор версий dxvk и vkd3d в db файле, с последующей закачкой с github при отсутствии в ~/.PortWINE/vulkan | * добавить выбор версий dxvk и vkd3d в db файле, с последующей закачкой с github при отсутствии в ~/.PortWINE/vulkan | ||||||
| * обновлены libs до v9 (добавлен пакет zstd для реализация функции смены vkd3d) | * обновлены libs до v9 (добавлен пакет zstd для реализация функции смены vkd3d) | ||||||
| * произведена частичная чистка и оптимизация кода | * произведена частичная чистка и оптимизация кода | ||||||
| @@ -289,9 +456,9 @@ | |||||||
| * фикс для StarCraft (db) | * фикс для StarCraft (db) | ||||||
| * фикс работы порта в solus (отключение xterm) | * фикс работы порта в solus (отключение xterm) | ||||||
| * фикс создания циклической ссылки drive_c внутри drive_c | * фикс создания циклической ссылки drive_c внутри drive_c | ||||||
| * удален &>>/dev/null из PW_RUN (ломает запуск неторорых игр и приложений) | * удален &>>/dev/null из pw_run (ломает запуск неторорых игр и приложений) | ||||||
| * очистищен код функции PW_RUN (убрано условие optirun_on за ненадобностью) | * очистищен код функции pw_run (убрано условие optirun_on за ненадобностью) | ||||||
| * исправлен минимальный набор библиотек в default db (vcrun6 vcrun6sp6 mfc42 d3dcompiler_42 d3dcompiler_43 d3dcompiler_47 d3dx9) | * исправлен минимальный набор библиотек в default db (  mfc42 d3dcompiler_42 d3dcompiler_43 d3dcompiler_47 d3dx9) | ||||||
|  |  | ||||||
|  |  | ||||||
| ###PortProton-72###   17.04.2021   ###Scripts version 1035### | ###PortProton-72###   17.04.2021   ###Scripts version 1035### | ||||||
| @@ -306,7 +473,7 @@ | |||||||
| * добавлена кнопка редактирования найденного db файла | * добавлена кнопка редактирования найденного db файла | ||||||
| * ТЕСТ: автоудаление PINNED_LIBS и отключение setup.sh --force | * ТЕСТ: автоудаление PINNED_LIBS и отключение setup.sh --force | ||||||
| * изменение сравнения версий скриптов и портов "$(curl -s --list-only "https://portwine-linux.ru/ftp/current_version/blabla_ver")" | * изменение сравнения версий скриптов и портов "$(curl -s --list-only "https://portwine-linux.ru/ftp/current_version/blabla_ver")" | ||||||
| * автоматическая установка в префикс порта PW_DLL_INSTALL="vcrun2017 vcrun6 vcrun6sp6 mfc42" | * автоматическая установка в префикс порта PW_DLL_INSTALL="vcrun2017   mfc42" | ||||||
| * исправлено создание db файла при создании ярлыков, в именах которых присутствует одниковвые названия запускаемого файла | * исправлено создание db файла при создании ярлыков, в именах которых присутствует одниковвые названия запускаемого файла | ||||||
| * исправили создания префикса на некоторых системах при использования встроенного xterm из ~/PortWINE/libs | * исправили создания префикса на некоторых системах при использования встроенного xterm из ~/PortWINE/libs | ||||||
|  |  | ||||||
|   | |||||||
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/data_from_portwine.tar.gz
									
									
									
									
									
										Normal file
									
								
							
							
						
						
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/Bethesda.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.3 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/Rockstar.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1017 B | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/ankama.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.3 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/gameforge.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.8 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/glyph.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 1.5 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/mygames.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 2.7 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/osu.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 2.6 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/port_changelog.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 16 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/port_exit.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 11 KiB | 
							
								
								
									
										85
									
								
								data_from_portwine/scripts/.Xresources
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,85 @@ | |||||||
|  | xterm*faceSize: 12 | ||||||
|  | xterm*vt100*geometry: 120x20 | ||||||
|  | xterm*saveLines: 16384 | ||||||
|  | xterm*loginShell: true | ||||||
|  | xterm*charClass: 33:48,35:48,37:48,43:48,45-47:48,64:48,95:48,126:48 | ||||||
|  | xterm*termName: xterm-color | ||||||
|  | xterm*eightBitInput: false | ||||||
|  |  | ||||||
|  | !BLK Cursor | ||||||
|  | #define _color0        #000d18 | ||||||
|  | #define _color8        #000d18 | ||||||
|  | !RED Tag | ||||||
|  | #define _color1        #e89393 | ||||||
|  | #define _color9        #e89393 | ||||||
|  | !GRN SpecialKey | ||||||
|  | #define _color2        #9ece13 | ||||||
|  | #define _color10       #9ece13 | ||||||
|  | !YEL Keyword | ||||||
|  | #define _color3        #f0dfaf | ||||||
|  | #define _color11       #f0dfaf | ||||||
|  | !BLU Number | ||||||
|  | #define _color4        #8cd0d3 | ||||||
|  | #define _color12       #8cd0d3 | ||||||
|  | !MAG Precondit | ||||||
|  | #define _color5        #c0bed1 | ||||||
|  | #define _color13       #c0bed1 | ||||||
|  | !CYN Float | ||||||
|  | #define _color6        #dfaf8f | ||||||
|  | #define _color14       #dfaf8f | ||||||
|  | !WHT Search | ||||||
|  | #define _color7        #efefef | ||||||
|  | #define _color15       #efefef | ||||||
|  | !FMT Include, StatusLine, ErrorMsg | ||||||
|  | #define _colorBD       #ffcfaf | ||||||
|  | #define _colorUL       #ccdc90 | ||||||
|  | #define _colorIT       #80d4aa | ||||||
|  | !TXT Normal, Normal, Cursor | ||||||
|  | #define _foreground    #dcdccc | ||||||
|  | #define _background    #1f1f1f | ||||||
|  | #define _cursorColor   #8faf9f | ||||||
|  | URxvt*color0         : _color0 | ||||||
|  | URxvt*color1         : _color1 | ||||||
|  | URxvt*color2         : _color2 | ||||||
|  | URxvt*color3         : _color3 | ||||||
|  | URxvt*color4         : _color4 | ||||||
|  | URxvt*color5         : _color5 | ||||||
|  | URxvt*color6         : _color6 | ||||||
|  | URxvt*color7         : _color7 | ||||||
|  | URxvt*color8         : _color8 | ||||||
|  | URxvt*color9         : _color9 | ||||||
|  | URxvt*color10        : _color10 | ||||||
|  | URxvt*color11        : _color11 | ||||||
|  | URxvt*color12        : _color12 | ||||||
|  | URxvt*color13        : _color13 | ||||||
|  | URxvt*color14        : _color14 | ||||||
|  | URxvt*color15        : _color15 | ||||||
|  | URxvt*colorBD        : _colorBD | ||||||
|  | URxvt*colorIT        : _colorIT | ||||||
|  | URxvt*colorUL        : _colorUL | ||||||
|  | URxvt*foreground     : _foreground | ||||||
|  | URxvt*background     : _background | ||||||
|  | URxvt*cursorColor    : _cursorColor | ||||||
|  | XTerm*color0         : _color0 | ||||||
|  | XTerm*color1         : _color1 | ||||||
|  | XTerm*color2         : _color2 | ||||||
|  | XTerm*color3         : _color3 | ||||||
|  | XTerm*color4         : _color4 | ||||||
|  | XTerm*color5         : _color5 | ||||||
|  | XTerm*color6         : _color6 | ||||||
|  | XTerm*color7         : _color7 | ||||||
|  | XTerm*color8         : _color8 | ||||||
|  | XTerm*color9         : _color9 | ||||||
|  | XTerm*color10        : _color10 | ||||||
|  | XTerm*color11        : _color11 | ||||||
|  | XTerm*color12        : _color12 | ||||||
|  | XTerm*color13        : _color13 | ||||||
|  | XTerm*color14        : _color14 | ||||||
|  | XTerm*color15        : _color15 | ||||||
|  | XTerm*colorBD        : _colorBD | ||||||
|  | XTerm*colorIT        : _colorIT | ||||||
|  | XTerm*colorUL        : _colorUL | ||||||
|  | XTerm*foreground     : _foreground | ||||||
|  | XTerm*background     : _background | ||||||
|  | XTerm*cursorColor    : _cursorColor | ||||||
|  |  | ||||||
| @@ -1,173 +0,0 @@ | |||||||
| #!/bin/bash |  | ||||||
| # Author: Castro-Fidel (PortWINE-Linux.ru) |  | ||||||
| ######################################################################## |  | ||||||
| export PW_USER_TEMP="$WINEPREFIX/drive_c/users/${USER}/Temp" |  | ||||||
| export PW_FORCE_LARGE_ADDRESS_AWARE=0 |  | ||||||
| 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=("/VERYSILENT") |  | ||||||
|     [ "${update_loc}" = "RUS" ] && export WGC_LOC=RU || export WGC_LOC=EU |  | ||||||
|     export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Wargaming_Game_Center_Install_WoT_${WGC_LOC}.exe" |  | ||||||
|     START_PORTWINE |  | ||||||
|     if try_download "https://redirect.wargaming.net/WGC/Wargaming_Game_Center_Install_WoT_${WGC_LOC}.exe" "${PW_AUTOINSTALL_EXE}" |  | ||||||
|     then |  | ||||||
|         PW_START_PROGRESS_BAR_BLOCK "Starting WGC installation..." |  | ||||||
|         while true ; do |  | ||||||
|             if [ "$PW_USE_RUNTIME" != 1 ] ; 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 |  | ||||||
|                 KILL_PORTWINE |  | ||||||
|                 break |  | ||||||
|             fi |  | ||||||
|         done & |  | ||||||
|         PW_RUN "${PW_AUTOINSTALL_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 |  | ||||||
|     fi |  | ||||||
|     STOP_PORTWINE |  | ||||||
| } |  | ||||||
|  |  | ||||||
| PW_ORIGIN () { |  | ||||||
|     export LAUNCH_PARAMETERS=("/silent" ) |  | ||||||
|     export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/OriginSetup.exe" |  | ||||||
|     START_PORTWINE |  | ||||||
|     if try_download "https://download.dm.origin.com/origin/live/OriginSetup.exe" "${PW_AUTOINSTALL_EXE}" |  | ||||||
|     then |  | ||||||
|         PW_START_PROGRESS_BAR_BLOCK "Installing the Origin. Please wait..." |  | ||||||
|         PW_RUN "${PW_AUTOINSTALL_EXE}" |  | ||||||
|         portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/Origin/Origin.exe" |  | ||||||
|         PW_STOP_PROGRESS_BAR |  | ||||||
|         try_remove_file "${PW_AUTOINSTALL_EXE}" |  | ||||||
|         KILL_PORTWINE |  | ||||||
|         PORTWINE_CREATE_SHORTCUT |  | ||||||
|     fi |  | ||||||
|     STOP_PORTWINE |  | ||||||
| } |  | ||||||
|  |  | ||||||
| PW_BATTLE_NET () { |  | ||||||
|     [ "${update_loc}" = "RUS" ] && export BN_LOC=ruRU || export BN_LOC=enUS |  | ||||||
|     export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Battle.net-Setup-${BN_LOC}.exe" |  | ||||||
|     START_PORTWINE |  | ||||||
|     if try_download "http://dist.blizzard.com/downloads/bna-installers/322d5bb9ae0318de3d4cde7641c96425/retail.1/Battle.net-Setup-${BN_LOC}.exe" "${PW_AUTOINSTALL_EXE}" |  | ||||||
|     then |  | ||||||
|         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 |  | ||||||
|         portwine_exe=`find "$WINEPREFIX/drive_c/" -type f -name "Battle.net.exe"` |  | ||||||
|         PW_STOP_PROGRESS |  | ||||||
|         PORTWINE_CREATE_SHORTCUT |  | ||||||
|         try_remove_file "${PW_AUTOINSTALL_EXE}" |  | ||||||
|     fi |  | ||||||
|     STOP_PORTWINE |  | ||||||
| } |  | ||||||
|  |  | ||||||
| PW_EPIC () { |  | ||||||
|     export LAUNCH_PARAMETERS=("/q" ) |  | ||||||
|     export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/EpicGamesLauncherInstaller.msi" |  | ||||||
|     START_PORTWINE |  | ||||||
|     if try_download "https://launcher-public-service-prod06.ol.epicgames.com/launcher/api/installer/download/EpicGamesLauncherInstaller.msi" "${PW_AUTOINSTALL_EXE}" |  | ||||||
|     then |  | ||||||
|         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 |  | ||||||
|                 [ ! -z `pgrep rundll32* | head -n 1` ] && kill -n 9 `pgrep rundll32* | head -n 1` && echo "Kill rundll32.exe" |  | ||||||
|                 sleep 5 |  | ||||||
|             done |  | ||||||
|         fi |  | ||||||
|         portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/Epic Games/Launcher/Portal/Binaries/Win32/EpicGamesLauncher.exe" |  | ||||||
|         try_remove_file "${PW_AUTOINSTALL_EXE}" |  | ||||||
|         KILL_PORTWINE |  | ||||||
|         PW_STOP_PROGRESS_BAR |  | ||||||
|         PORTWINE_CREATE_SHORTCUT |  | ||||||
|     fi |  | ||||||
|     STOP_PORTWINE |  | ||||||
| } |  | ||||||
|  |  | ||||||
| PW_GOG () { |  | ||||||
|     export LAUNCH_PARAMETERS=("/runWithoutUpdating" "/deelevated" ) |  | ||||||
|     export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/OriginSetup.exe" |  | ||||||
|     START_PORTWINE |  | ||||||
|     if try_download "https://content-system.gog.com/open_link/download?path=/open/galaxy/client/2.0.35.19/setup_galaxy_2.0.35.19a.exe" "${PW_AUTOINSTALL_EXE}" |  | ||||||
|     then |  | ||||||
|         PW_START_PROGRESS_BAR_CS "Installing the GOG Galaxy. Please wait..." |  | ||||||
|         PW_RUN "${PW_AUTOINSTALL_EXE}" |  | ||||||
|         portwine_exe=`find "$WINEPREFIX/drive_c/" -type f -name "GalaxyClient.exe"` |  | ||||||
|         try_remove_file "${PW_AUTOINSTALL_EXE}" |  | ||||||
|         KILL_PORTWINE |  | ||||||
|         PW_STOP_PROGRESS_BAR |  | ||||||
|         PORTWINE_CREATE_SHORTCUT |  | ||||||
|     fi |  | ||||||
|     STOP_PORTWINE |  | ||||||
| } |  | ||||||
|  |  | ||||||
| PW_EVE () { |  | ||||||
|     export PW_WINDOWS_VER=10 |  | ||||||
|     export PW_DLL_INSTALL="vcrun2017" |  | ||||||
|     export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/EveLauncher-1892908.exe" |  | ||||||
|     START_PORTWINE |  | ||||||
|     if try_download "https://binaries.eveonline.com/EveLauncher-1892908.exe" "${PW_AUTOINSTALL_EXE}" |  | ||||||
|     then |  | ||||||
|         PW_START_PROGRESS_BAR_BLOCK "Installing the EVE Launcher. Please wait..." |  | ||||||
|         if [ ! -f "$WINEPREFIX/drive_c/Games/EVE Online/Launcher/evelauncher.exe" ] ; then |  | ||||||
|             try_remove_dir "$WINEPREFIX/drive_c/Games/EVE Online" |  | ||||||
|             dd if="${PW_AUTOINSTALL_EXE}" of="${PW_AUTOINSTALL_EXE}".7z bs=1M skip=31646603 count=196171208 iflag=skip_bytes,count_bytes |  | ||||||
|             "$pw_7z" x "${PW_AUTOINSTALL_EXE}".7z -o"$WINEPREFIX/drive_c/Games/EVE Online" |  | ||||||
|             try_remove_file "${PW_AUTOINSTALL_EXE}" |  | ||||||
|             try_remove_file "${PW_AUTOINSTALL_EXE}".7z |  | ||||||
|         fi |  | ||||||
|         portwine_exe="$WINEPREFIX/drive_c/Games/EVE Online/Launcher/evelauncher.exe" |  | ||||||
|         PW_STOP_PROGRESS_BAR |  | ||||||
|         PORTWINE_CREATE_SHORTCUT |  | ||||||
|     fi |  | ||||||
|     STOP_PORTWINE |  | ||||||
| } |  | ||||||
|  |  | ||||||
| PW_UBC () { |  | ||||||
| 	export LAUNCH_PARAMETERS=("/S" "/D=c:\Program Files (x86)\Ubisoft Game Launcher") |  | ||||||
|     export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/UbisoftConnectInstaller.exe" |  | ||||||
|     START_PORTWINE |  | ||||||
|     if try_download "https://ubistatic3-a.akamaihd.net/orbit/launcher_installer/UbisoftConnectInstaller.exe" "${PW_AUTOINSTALL_EXE}" |  | ||||||
|     then |  | ||||||
| 		PW_START_PROGRESS_BAR_CS "Installing the Ubisoft Connect. Please wait..." |  | ||||||
| 		PW_RUN "${PW_AUTOINSTALL_EXE}" |  | ||||||
| 		portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/Ubisoft Game Launcher/UbisoftConnect.exe" |  | ||||||
| 		try_remove_file "${PW_AUTOINSTALL_EXE}" |  | ||||||
| 		KILL_PORTWINE |  | ||||||
| 		PW_STOP_PROGRESS_BAR |  | ||||||
| 		PORTWINE_CREATE_SHORTCUT |  | ||||||
|     fi |  | ||||||
|     STOP_PORTWINE |  | ||||||
| } |  | ||||||
|  |  | ||||||
| PW_STEAM () { |  | ||||||
| 	export LAUNCH_PARAMETERS=("/S" "/D=c:\Program Files (x86)\Steam") |  | ||||||
|     export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/SteamSetup.exe" |  | ||||||
|     START_PORTWINE |  | ||||||
|     if try_download "https://cdn.cloudflare.steamstatic.com/client/installer/SteamSetup.exe" "${PW_AUTOINSTALL_EXE}" |  | ||||||
|     then |  | ||||||
| 		PW_START_PROGRESS_BAR_CS "Installing the Steam. Please wait..." |  | ||||||
| 		PW_RUN "${PW_AUTOINSTALL_EXE}" |  | ||||||
| 		portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/Steam/Steam.exe" |  | ||||||
| 		try_remove_file "${PW_AUTOINSTALL_EXE}" |  | ||||||
| 		KILL_PORTWINE |  | ||||||
| 		PW_STOP_PROGRESS_BAR |  | ||||||
| 		PORTWINE_CREATE_SHORTCUT |  | ||||||
|     fi |  | ||||||
|     STOP_PORTWINE |  | ||||||
| } |  | ||||||
							
								
								
									
										681
									
								
								data_from_portwine/scripts/functions_helper
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,681 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | # Author: Castro-Fidel (PortWINE-Linux.ru) | ||||||
|  | ######################################################################## | ||||||
|  | pw_ping_test () { | ||||||
|  |     ping -w3 -c1 github.com &> /dev/null | ||||||
|  |     [ "$?" == "0" ] && return 0 || return 1 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | print_error () { | ||||||
|  |     echo "ERROR: $@" | ||||||
|  | } | ||||||
|  |  | ||||||
|  | print_info () { | ||||||
|  |     echo "INFO: $@" | ||||||
|  | } | ||||||
|  |  | ||||||
|  | print_var () { | ||||||
|  |     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 | ||||||
|  |     elif [ -z "$2" ] ; then	print_error "no way to copy file $1" && return 1 | ||||||
|  |     else | ||||||
|  |         cp -f "$1" "$2" | ||||||
|  |         if [ "$?" != 0 ] | ||||||
|  |         then print_error "failed to copy file $1 to $2" || return 1 | ||||||
|  |         else print_info "copy file $1 to $2 was successful" || return 0 | ||||||
|  |         fi | ||||||
|  |     fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | try_copy_dir () { | ||||||
|  |     if [ ! -d "$1" ] ; then	print_info "directory $1 not found for copy" | ||||||
|  |     elif [ -z "$2" ] ; then	print_error "no way to copy directory $1" | ||||||
|  |     else | ||||||
|  |         cp -fr "$1" "$2" | ||||||
|  |         [ "$?" != 0 ] && print_error "failed to copy directory $1 to $2" || return 0 | ||||||
|  |     fi | ||||||
|  |     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 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | try_remove_dir () { | ||||||
|  |     if [ -d "$1" ] ; then | ||||||
|  |         rm -fr "$1" | ||||||
|  |         [ "$?" != 0 ] && print_error "failed to remove directory $1" || return 0 | ||||||
|  |     fi | ||||||
|  |     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 | ||||||
|  |         ln -sf "$1" "$2" | ||||||
|  |         [ "$?" != 0 ] && print_error "failed to link file $1 to $2" || return 0 | ||||||
|  |     fi | ||||||
|  |     return 1 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | try_force_link_dir () { | ||||||
|  |     if [ ! -d "$1" ] ; then	print_info "directory $1 not found for link" | ||||||
|  |     elif [ -z "$2" ] ; then	print_error "no way to link directory $1" | ||||||
|  |     else | ||||||
|  |         ln -sf "$1" "$2" | ||||||
|  |         [ "$?" != 0 ] && print_error "failed to link directory $1 to $2" || return 0 | ||||||
|  |     fi | ||||||
|  |     return 1 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | try_download () { | ||||||
|  |     set -o pipefail | ||||||
|  |     wget -c -t 5 -T 2 "$1" --output-document="$2" 2>&1 | \ | ||||||
|  |     sed -u 's/.* \([0-9]\+%\)\ \+\([0-9,.]\+.\) \(.*\)/\1\n#Downloading at \1\/, \2\/s, ETA \3/; 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 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | 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 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | create_new_dir () { | ||||||
|  |     if [ ! -d "$1" ] ; then | ||||||
|  |         mkdir -p "$1" | ||||||
|  |     fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | var_winedlloverride_update () { | ||||||
|  |     if [ ! -z "${WINEDLLOVERRIDES}" ] | ||||||
|  |     then export WINEDLLOVERRIDES="${1};${WINEDLLOVERRIDES}" | ||||||
|  |     else export WINEDLLOVERRIDES="${1}" | ||||||
|  |     fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | var_vkd3d_config_update () { | ||||||
|  |     if [ ! -z "${VKD3D_CONFIG}" ] | ||||||
|  |     then export VKD3D_CONFIG="${1};${VKD3D_CONFIG}" | ||||||
|  |     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 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | unpack_tar_gz () { | ||||||
|  |     set -o pipefail | ||||||
|  |     tar -xzvf "$1" -C "$2" | sszen | ||||||
|  |     [ "${PIPESTATUS[0]}" != 0 ] && print_error "File unpacking error." && return 1 || return 0 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | pw_mangohud_check () { | ||||||
|  |     export RUN_MANGOHUD="" | ||||||
|  |     if [ "${PW_MANGOHUD}" == "1" ] ; then | ||||||
|  |         if [ "${PW_VULKAN_USE}" = "0" ] | ||||||
|  |         then export RUN_MANGOHUD="mangohud --dlsym" | ||||||
|  |         else export RUN_MANGOHUD="mangohud" | ||||||
|  |         fi | ||||||
|  |     else | ||||||
|  |         export DISABLE_MANGOHUD=1 | ||||||
|  |     fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | pw_vkbasalt_check () { | ||||||
|  |     if [ ! -z "${ENABLE_VKBASALT}" ] && [ "${ENABLE_VKBASALT}" == 1 ] ; then | ||||||
|  |         if [ -z "${PW_VKBASALT_EFFECTS}" ] ; then | ||||||
|  |             export PW_VKBASALT_EFFECTS="FakeHDR:cas"  | ||||||
|  |         fi | ||||||
|  |         sed -ri "s/effects = .*/effects = ${PW_VKBASALT_EFFECTS}/g" "${PORT_WINE_PATH}/data/vkBasalt.conf" | ||||||
|  |         if [ -z "${PW_VKBASALT_FFX_CAS}" ] ; then | ||||||
|  |             export PW_VKBASALT_FFX_CAS="0.7"  | ||||||
|  |         fi | ||||||
|  |         sed -ri "s/casSharpness = .*/casSharpness = ${PW_VKBASALT_FFX_CAS}/g" "${PORT_WINE_PATH}/data/vkBasalt.conf" | ||||||
|  |         export VKBASALT_CONFIG_FILE="${PORT_WINE_PATH}/data/vkBasalt.conf" | ||||||
|  |     else | ||||||
|  |         export DISABLE_VKBASALT=1 | ||||||
|  |     fi | ||||||
|  |  | ||||||
|  | } | ||||||
|  |  | ||||||
|  | gui_question () { | ||||||
|  |     `zenity --question --title "${inst_set}." --text "$1" --no-wrap ` &> /dev/null | ||||||
|  |      [ $? -eq "0" ] && return 0 || return 1 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | pw_clear_pfx () { | ||||||
|  |     try_remove_file "${WINEPREFIX}/system.reg" | ||||||
|  |     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 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | check_user_conf () { | ||||||
|  |     if [ ! -f "${USER_CONF}" ]; then | ||||||
|  |         echo "#!/bin/bash" > "${USER_CONF}" | ||||||
|  |         echo "# User overides db and var settings..." >> "${USER_CONF}" | ||||||
|  |         chmod u+x "${USER_CONF}" | ||||||
|  |     fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | init_wine_ver () { | ||||||
|  |     if [ ! -z "${PW_WINE_VER}" ] && [ `echo "${PW_WINE_VER}" | grep "PROTON_GE"` ]  | ||||||
|  |     then export PW_WINE_USE=proton_ge | ||||||
|  |     elif [ ! -z "${PW_WINE_VER}" ] && [ `echo "${PW_WINE_VER}" | grep "PROTON_STEAM"` ]  | ||||||
|  |     then export PW_WINE_USE=proton_steam | ||||||
|  |     fi | ||||||
|  |     unset PW_WINE_VER | ||||||
|  |     export WINEDIR="${PORT_WINE_PATH}/data/dist/${PW_WINE_USE}" | ||||||
|  |     export GST_PLUGIN_SYSTEM_PATH_1_0="${WINEDIR}/lib64/gstreamer-1.0:${WINEDIR}/lib/gstreamer-1.0" | ||||||
|  |     export WINE="${WINEDIR}/bin/wine" | ||||||
|  |     export WINELOADER="${WINEDIR}/bin/wine" | ||||||
|  |     export WINESERVER="${WINEDIR}/bin/wineserver" | ||||||
|  |     export WINEDLLPATH="${WINEDIR}/lib64/wine:${WINEDIR}/lib/wine" | ||||||
|  |  | ||||||
|  |     if [ ! -z ${LD_LIBRARY_PATH_TMP} ] | ||||||
|  |     then export LD_LIBRARY_PATH="${LD_LIBRARY_PATH_TMP}" | ||||||
|  |     else export LD_LIBRARY_PATH_TMP=${LD_LIBRARY_PATH} | ||||||
|  |     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/" | ||||||
|  |     fi | ||||||
|  |     if [ ! -z ${PATH_TMP} ] | ||||||
|  |     then export PATH="${PATH_TMP}" | ||||||
|  |     else export PATH_TMP="${PATH}" | ||||||
|  |     fi | ||||||
|  |     if [ ! -z "${PATH}" ] | ||||||
|  |     then export PATH="${WINEDIR}/bin:${PATH}" | ||||||
|  |     else export PATH="${WINEDIR}/bin" | ||||||
|  |     fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | cabextract_fix () { | ||||||
|  |     [ ! -f "${WINEDIR}/bin/cabextract" ] && try_copy_file "${PW_WINELIB}/runtime/bin/cabextract" "${WINEDIR}/bin/cabextract" | ||||||
|  |     [ ! -f "${WINEDIR}/lib64/libmspack.so.0" ] && try_copy_file "${PW_WINELIB}/runtime/lib/x86_64-linux-gnu/libmspack.so.0" "${WINEDIR}/lib64/libmspack.so.0" | ||||||
|  |     [ ! -f "${WINEDIR}/lib64/libmspack.so.0.1.0" ] && try_copy_file "${WINEDIR}/lib64/libmspack.so.0" "${WINEDIR}/lib64/libmspack.so.0.1.0" | ||||||
|  | } | ||||||
|  |  | ||||||
|  | sszen() { | ||||||
|  |     zenity --progress --title="Settings..." --text="Updating parameters" --pulsate --auto-close --width=500 --height=90 --no-cancel | ||||||
|  | } | ||||||
|  |  | ||||||
|  | pw_start_progress_bar_cs () { | ||||||
|  |     "${pw_yad}" --progress --progress-text="$@" --pulsate --close-on-unfocus \ | ||||||
|  |     --no-buttons --undecorated --center --skip-taskbar --width=500 --wrap-width=500 & | ||||||
|  |     echo "" | ||||||
|  | } | ||||||
|  |  | ||||||
|  | pw_start_progress_bar_block () { | ||||||
|  |     "${pw_yad}" --progress --progress-text="$@" --pulsate \ | ||||||
|  |     --no-buttons --undecorated --center --skip-taskbar --width=500 --wrap-width=500 & | ||||||
|  |     echo "" | ||||||
|  | } | ||||||
|  |  | ||||||
|  | pw_stop_progress_bar () { | ||||||
|  |     while [ ! -z "`pgrep -a yad | grep "\-\-progress" | awk '{print $1}'`" ] | ||||||
|  |     do kill -n 9 `pgrep -a yad | grep "\-\-progress" | awk '{print $1}' | head -n 1` &> /dev/null | ||||||
|  |     done | ||||||
|  | } | ||||||
|  |  | ||||||
|  | pw_download_libs () { | ||||||
|  |     if [ ! -e "${PW_WINELIB}/runtime/bin/yad" ] || [ ! -e "${PW_WINELIB}/runtime/lib/p7zip/7z" ] \ | ||||||
|  |     || [ ! -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 | ||||||
|  |             if unpack_tar_xz "${HOME}/.PortWINE/tmp/libs${PW_LIBS_VER}.tar.xz" "${HOME}/.PortWINE/" ; then | ||||||
|  |                 try_remove_file "${HOME}/.PortWINE/tmp/libs${PW_LIBS_VER}.tar.xz" | ||||||
|  |             else | ||||||
|  |                 try_remove_dir "${HOME}/.PortWINE/libs${PW_LIBS_VER}" | ||||||
|  |                 try_remove_file "${HOME}/.PortWINE/tmp/libs${PW_LIBS_VER}.tar.xz" | ||||||
|  |                 `zenity --error --title "Error..." \ | ||||||
|  |                 --text "Failed to install runtime libraries.\nCheck internet connection and press OK" \ | ||||||
|  |                 --no-wrap ` > /dev/null 2>&1 && pw_download_libs | ||||||
|  |             fi | ||||||
|  |         else | ||||||
|  |             `zenity --error --title "Error..." \ | ||||||
|  |             --text "Failed to download runtime libraries.\nCheck internet connection and press OK" \ | ||||||
|  |             --no-wrap ` > /dev/null 2>&1 && pw_download_libs | ||||||
|  |         fi | ||||||
|  |     fi | ||||||
|  |     export pw_yad="${PW_WINELIB}/runtime/bin/yad" | ||||||
|  |     export pw_yad_new="${PW_WINELIB}/runtime/bin/yad_new" | ||||||
|  |     export pw_zstd="${PW_WINELIB}/runtime/bin/zstd" | ||||||
|  |     export pw_7z="${PW_WINELIB}/runtime/lib/p7zip/7z" | ||||||
|  |     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="${PW_WINELIB}/runtime/bin/xterm -geometry 159x37 -e" | ||||||
|  |     fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | pw_download_mono () { | ||||||
|  |     if [ ! -d "${HOME}/.PortWINE/mono/wine-mono-${PW_MONO_VER}" ] ; then | ||||||
|  |         export url_mono="https://github.com/madewokherd/wine-mono/releases/download/wine-mono-${PW_MONO_VER}/wine-mono-${PW_MONO_VER}-x86.tar.xz" | ||||||
|  |         echo "######################################################" | ||||||
|  |         print_info "Download and install wine mono..." | ||||||
|  |         if try_download "${url_mono}" "${HOME}/.PortWINE/tmp/wine-mono-${PW_MONO_VER}-x86.tar.xz" ; then | ||||||
|  |             create_new_dir "${HOME}/.PortWINE/mono" | ||||||
|  |             if ! unpack_tar_xz "${HOME}/.PortWINE/tmp/wine-mono-${PW_MONO_VER}-x86.tar.xz" "${HOME}/.PortWINE/mono/" | ||||||
|  |             then | ||||||
|  |                 try_remove_dir "${HOME}/.PortWINE/mono/wine-mono-${PW_MONO_VER}-x86" | ||||||
|  |                 zenity_error_download && pw_download_mono | ||||||
|  |             fi | ||||||
|  |             try_remove_file "${HOME}/.PortWINE/tmp/wine-mono-${PW_MONO_VER}-x86.tar.xz" | ||||||
|  |         else | ||||||
|  |             zenity_error_download && pw_download_mono | ||||||
|  |         fi | ||||||
|  |     fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | pw_download_gecko () { | ||||||
|  |     if [ ! -d "${HOME}/.PortWINE/gecko/wine-gecko-${PW_GECKO_VER}-x86" ] ; then | ||||||
|  |         export url_gecko_x86="https://dl.winehq.org/wine/wine-gecko/${PW_GECKO_VER}/wine-gecko-${PW_GECKO_VER}-x86.tar.xz" | ||||||
|  |         echo "######################################################" | ||||||
|  |         echo "Download and install wine gecko x86..." | ||||||
|  |         if try_download "${url_gecko_x86}" "${HOME}/.PortWINE/tmp/wine-gecko-${PW_GECKO_VER}-x86.tar.xz" ; then | ||||||
|  |             create_new_dir "${HOME}/.PortWINE/gecko" | ||||||
|  |             if ! unpack_tar_xz "${HOME}/.PortWINE/tmp/wine-gecko-${PW_GECKO_VER}-x86.tar.xz" "${HOME}/.PortWINE/gecko/" | ||||||
|  |             then | ||||||
|  |                 try_remove_dir "${HOME}/.PortWINE/gecko/wine-gecko-${PW_GECKO_VER}-x86" | ||||||
|  |                 zenity_error_download && pw_download_gecko | ||||||
|  |             fi | ||||||
|  |             try_remove_file "${HOME}/.PortWINE/tmp/wine-gecko-${PW_GECKO_VER}-x86.tar.xz" | ||||||
|  |         else | ||||||
|  |             zenity_error_download && pw_download_gecko | ||||||
|  |         fi | ||||||
|  |     fi | ||||||
|  |     if [ ! -d "${HOME}/.PortWINE/gecko/wine-gecko-${PW_GECKO_VER}-x86_64" ] ; then | ||||||
|  |         export url_gecko_x86_64="https://dl.winehq.org/wine/wine-gecko/${PW_GECKO_VER}/wine-gecko-${PW_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-${PW_GECKO_VER}-x86_64.tar.xz" ; then | ||||||
|  |             create_new_dir "${HOME}/.PortWINE/gecko" | ||||||
|  |             if ! unpack_tar_xz "${HOME}/.PortWINE/tmp/wine-gecko-${PW_GECKO_VER}-x86_64.tar.xz" "${HOME}/.PortWINE/gecko/" | ||||||
|  |             then | ||||||
|  |                 try_remove_dir "${HOME}/.PortWINE/gecko/wine-gecko-${PW_GECKO_VER}-x86_64" | ||||||
|  |                 zenity_error_download && pw_download_gecko | ||||||
|  |             fi | ||||||
|  |             try_remove_file "${HOME}/.PortWINE/tmp/wine-gecko-${PW_GECKO_VER}-x86_64.tar.xz" | ||||||
|  |         else | ||||||
|  |             zenity_error_download && pw_download_gecko | ||||||
|  |         fi | ||||||
|  |     fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | update_winetricks () { | ||||||
|  |     W_TRX_URL="https://raw.githubusercontent.com/Winetricks/winetricks/master/src/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" ] && [ ! -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})"  | ||||||
|  |             chmod u+x "${PORT_WINE_TMP_PATH}/winetricks" | ||||||
|  |         fi | ||||||
|  |     fi | ||||||
|  |     if  [ -f "${PORT_WINE_TMP_PATH}/winetricks" ] ; then | ||||||
|  |         sed -i 's/w_metadata vcrun2015 dlls \\/w_metadata !dont_use_2015! dlls \\/' "${PORT_WINE_TMP_PATH}/winetricks" | ||||||
|  |         sed -i 's/w_metadata vcrun2017 dlls \\/w_metadata !dont_use_2017! dlls \\/' "${PORT_WINE_TMP_PATH}/winetricks" | ||||||
|  |     fi | ||||||
|  | } | ||||||
|  | wait_wineserver () { | ||||||
|  |     sleep 3 | ||||||
|  |     while [ ! -z "$(ls -l /proc/*/exe 2>/dev/null | grep -ie ${portname} | grep -E 'wine(64)?-preloader|wineserver' | awk -F/ '{print $3}')" ] ; do | ||||||
|  |         sleep 1 | ||||||
|  |     done | ||||||
|  | } | ||||||
|  |  | ||||||
|  | kill_portwine () { | ||||||
|  |     wine_pids=`ls -l /proc/*/exe 2>/dev/null | grep -ie ${portname} | grep -E 'wine(64)?-preloader| ' | awk -F/ '{print $3}'` | ||||||
|  |     if  [ ! -z "${wine_pids}" ] ; then | ||||||
|  |         for pw_kill_pids in ${wine_pids} ; do | ||||||
|  |             if [ "`ps cax | grep ${pw_kill_pids}`" ] ; then | ||||||
|  |                 kill -n 9 ${pw_kill_pids} | ||||||
|  |             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 | ||||||
|  | } | ||||||
|  | export -f kill_portwine | ||||||
|  |  | ||||||
|  | stop_portwine () { | ||||||
|  |     wait_wineserver | ||||||
|  |     add_in_stop_portwine | ||||||
|  |     if [ "$int_xneur" = "1"  ]; then | ||||||
|  |         xneur & | ||||||
|  |     fi | ||||||
|  |     if [ ! -z ${PW_XKBD} ]; then | ||||||
|  |         setxkbmap ${PW_XKBD} | ||||||
|  |     fi | ||||||
|  |     pw_stop_progress_bar | ||||||
|  |     try_remove_file "${PORT_SCRIPTS_PATH}/0" | ||||||
|  |     try_remove_file "${PORT_SCRIPTS_PATH}/1" | ||||||
|  |     kill_portwine | ||||||
|  |     if [ ! -z "`pgrep -a yad_new | grep "\-\-notification" | awk '{print $1}'`" ] | ||||||
|  |     then kill -s SIGUSR1 "`pgrep -a yad_new | grep "\-\-notification" | awk '{print $1}'`" | ||||||
|  |     fi | ||||||
|  |     if [  ! -z "`ls "${WINEPREFIX}"/drive_c/users/steamuser/Temp/ | head -n 1`" ] ; then | ||||||
|  |         chmod -R 755 "${WINEPREFIX}"/drive_c/users/steamuser/Temp/ | ||||||
|  |         rm -fr "${WINEPREFIX}"/drive_c/users/steamuser/Temp/* | ||||||
|  |     fi | ||||||
|  |     if [  ! -z "`ls "${WINEPREFIX}"/drive_c/ | grep -m 1 ".tmp"`" ] ; then | ||||||
|  |         rm -f "${WINEPREFIX}"/drive_c/*.tmp | ||||||
|  |     fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | pw_tray_icon () { | ||||||
|  |     if [ -z "`pgrep -a yad_new | grep "\-\-notification" | awk '{print $1}'`" ] ; then | ||||||
|  |         tray_icon_click() { | ||||||
|  |             echo "" | ||||||
|  |         } | ||||||
|  |         export -f tray_icon_click | ||||||
|  |         tray_icon_click_exit() { | ||||||
|  |             kill_portwine | ||||||
|  |             if [ ! -z "`pgrep -a yad_new | grep "\-\-notification" | awk '{print $1}'`" ] | ||||||
|  |             then kill -s SIGUSR1 "`pgrep -a yad_new | grep "\-\-notification" | awk '{print $1}'`" | ||||||
|  |             fi | ||||||
|  |             killall start.sh | ||||||
|  |         } | ||||||
|  |         export -f tray_icon_click_exit | ||||||
|  |  | ||||||
|  |         "${pw_yad_new}" --notification --no-middle --text="PortProton" \ | ||||||
|  |         --window-icon="$PW_GUI_ICON_PATH/port_proton.png" \ | ||||||
|  |         --image="$PW_GUI_ICON_PATH/port_proton.png" \ | ||||||
|  |         --command="bash -c tray_icon_click" \ | ||||||
|  |         --tooltip="PortProton" \ | ||||||
|  |         --menu="| \ | ||||||
|  | <<< CHANGE LOG >>>!bash -c open_changelog!"$PW_GUI_ICON_PATH/port_changelog.png"| \ | ||||||
|  | <<<   FORCE EXIT   >>>!bash -c tray_icon_click_exit!"$PW_GUI_ICON_PATH/port_exit.png"|" | ||||||
|  |     fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | pw_init_db () { | ||||||
|  |     if [ ! -z "${portwine_exe}" ]; then | ||||||
|  |         export PORTWINE_DB=`echo "${portwine_exe}" | awk -F '/' 'NF>1{print $NF}' | sed s/".exe"/""/gi` | ||||||
|  | #        export PATH_TO_GAME="$( cd "$( dirname "${portwine_exe}" )" >/dev/null 2>&1 && pwd )" | ||||||
|  | #        export WIN_PATH_TO_GAME=`echo "C:${PATH_TO_GAME}" | sed "s%$WINEPREFIX%%g" | sed "s/drive_c//g" | sed 's#/#\\\#g'` | ||||||
|  |     fi | ||||||
|  |     if [ ! -z "${PORTWINE_DB}" ]; then | ||||||
|  |         PORTWINE_DB_FILE=`grep -ilw "#${PORTWINE_DB}" "${PORT_SCRIPTS_PATH}/portwine_db"/* | sed s/".exe"/""/gi` | ||||||
|  |         if [ ! -z "${PORTWINE_DB_FILE}" ]; then | ||||||
|  |             . "${PORTWINE_DB_FILE}" | ||||||
|  |             echo "Use ${PORTWINE_DB_FILE} db file." | ||||||
|  |         else | ||||||
|  |             . "${PORT_SCRIPTS_PATH}/portwine_db/default" | ||||||
|  |             echo "Use default db file." | ||||||
|  |         fi | ||||||
|  |     fi | ||||||
|  |     init_wine_ver | ||||||
|  | } | ||||||
|  |  | ||||||
|  | pw_update_notifier () { | ||||||
|  |     if [ ! -f "${PORT_WINE_TMP_PATH}/${portname}_ver" ] ; then | ||||||
|  |         echo "10" > "${PORT_WINE_TMP_PATH}/${portname}_ver" | ||||||
|  |     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" | ||||||
|  |     if [ "${update_not}" = "1" ] ; 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=240 --column="${inst_set}" --column "${port_upd3}" \ | ||||||
|  |                 TRUE "${port_upd4}" \ | ||||||
|  |                 FALSE "${port_upd5}" \ | ||||||
|  |                 FALSE "${port_upd6}" ` | ||||||
|  |                 case $xsd in | ||||||
|  |                     "${port_upd4}") | ||||||
|  |                         kill_portwine | ||||||
|  |                         xdg-open $PORTWINE_URL | ||||||
|  |                         exit 0 ;; | ||||||
|  |                     "${port_upd5}") | ||||||
|  |                         echo " " ;; | ||||||
|  |                     "${port_upd6}") | ||||||
|  |                     echo "0" > "${PORT_WINE_TMP_PATH}/update_notifier" ;; | ||||||
|  |                 esac | ||||||
|  |             fi | ||||||
|  |         fi | ||||||
|  |     fi | ||||||
|  |     if [ ! -f "${HOME}/.config/.PortTime" ] ; then | ||||||
|  |         echo "10" > "${HOME}/.config/.PortTime" | ||||||
|  |     fi | ||||||
|  |     read "port_time" < "${HOME}/.config/.PortTime" | ||||||
|  |     if [ "${port_time}" -gt "1" ] ; then | ||||||
|  |         port_time=$((${port_time}-1)) | ||||||
|  |         echo "${port_time}" > "${HOME}/.config/.PortTime" | ||||||
|  |     else | ||||||
|  |         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 | ||||||
|  |             echo "1" > "${HOME}/.config/.PortTime" | ||||||
|  |         else | ||||||
|  |             case $xsd2 in | ||||||
|  |                 "${port_time4}") | ||||||
|  |                     xdg-open "$urlg" & | ||||||
|  |                     echo "300" > "${HOME}/.config/.PortTime" | ||||||
|  |                     exit 0 ;; | ||||||
|  |                 "${port_time5}") | ||||||
|  |                     echo "75" > "${HOME}/.config/.PortTime" ;; | ||||||
|  |                 "${port_time6}") | ||||||
|  |                     echo "150" > "${HOME}/.config/.PortTime" ;; | ||||||
|  |             esac | ||||||
|  |         fi | ||||||
|  |     fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | pw_scripts_update () { | ||||||
|  |     if [ ! -f "${PORT_WINE_TMP_PATH}/scripts_ver" ] ; then | ||||||
|  |         echo "2000" > "${PORT_WINE_TMP_PATH}/scripts_ver" | ||||||
|  |     fi | ||||||
|  |     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 "https://github.com/Castro-Fidel/PortWINE/raw/master/data_from_portwine/scripts/var" "${PORT_WINE_TMP_PATH}/scripts_cur_ver" ; then | ||||||
|  |             export scripts_current_ver=`cat "${PORT_WINE_TMP_PATH}/scripts_cur_ver" | grep SCRIPTS_NEXT_VERSION | awk -F "=" '{print $2}'` | ||||||
|  |             try_remove_file "${PORT_WINE_TMP_PATH}/scripts_cur_ver" | ||||||
|  |             echo "Scripts version in github = ${scripts_current_ver}" | ||||||
|  |             echo "Scripts version local = ${scripts_install_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=240 --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}/PortWINE-master.tar.gz" | ||||||
|  |                         if try_download "https://github.com/Castro-Fidel/PortWINE/archive/refs/heads/master.tar.gz" "${PORT_WINE_TMP_PATH}/PortWINE-master.tar.gz" ; then | ||||||
|  |                             tar -xvzf "${PORT_WINE_TMP_PATH}/PortWINE-master.tar.gz" -C "${PORT_WINE_TMP_PATH}" | ||||||
|  |                             if [ "$?" == "0" ] ; then | ||||||
|  |                                 cp -fr "${PORT_WINE_TMP_PATH}/PortWINE-master/data_from_portwine/"* "${PORT_WINE_PATH}/data/" | ||||||
|  |                                 try_remove_file "${PORT_WINE_TMP_PATH}/PortWINE-master.tar.gz" | ||||||
|  |                                 try_remove_dir "${PORT_WINE_TMP_PATH}/PortWINE-master/" | ||||||
|  |                                 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 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | pw_kill_autostart () { | ||||||
|  |     if [ "$PW_USE_RUNTIME" != 1 ] | ||||||
|  |     then echo "PW_USE_RUNTIME: `echo $PW_USE_RUNTIME`" | ||||||
|  |     else | ||||||
|  |         sleep 10 | ||||||
|  |         while true ; do | ||||||
|  |             if  [ -z "`ps aux | grep -m 1 "$1" | grep -v grep | awk '{print $2}'`" ] && [ ! -z "`pgrep wrap | head -n 1`" ]; then | ||||||
|  |                 echo -e "PID "$1" not found" | ||||||
|  |                 sleep 1 | ||||||
|  |             else | ||||||
|  |                 kill_portwine | ||||||
|  |                 break | ||||||
|  |             fi | ||||||
|  |         done | ||||||
|  |     fi | ||||||
|  |     if [  ! -z "`ls "${WINEPREFIX}"/drive_c/ | grep -m 1 ".tmp"`" ] ; then | ||||||
|  |         rm -f "${WINEPREFIX}"/drive_c/*.tmp | ||||||
|  |     fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | edit_db_from_gui () { | ||||||
|  |     for mod_db in $@ ; do | ||||||
|  |         echo "${mod_db}=${!mod_db}" | ||||||
|  |         if [ -z "`cat "${PORTWINE_DB_FILE}" | grep "export ${mod_db}="`" ] ; then | ||||||
|  |             echo "export ${mod_db}=${!mod_db}" >> "${PORTWINE_DB_FILE}" | ||||||
|  |         elif [ "`cat "${PORTWINE_DB_FILE}" | grep "export ${mod_db}=" | grep -v "#"`" ] ; then | ||||||
|  |             if [ "`cat "${PORTWINE_DB_FILE}" | grep "export ${mod_db}=" | grep -v "#"`" != "export ${mod_db}=${!mod_db}" ] ; then | ||||||
|  |                 sed -ri "s/^export ${mod_db}=.*/export ${mod_db}=${!mod_db}/" "${PORTWINE_DB_FILE}" | ||||||
|  |             fi | ||||||
|  |         elif [ "`cat "${PORTWINE_DB_FILE}" | grep "export ${mod_db}="`" != "export ${mod_db}=${!mod_db}" ] ; then | ||||||
|  |             sed -ri "s/.*export ${mod_db}=.*/export ${mod_db}=${!mod_db}/g" "${PORTWINE_DB_FILE}" | ||||||
|  |         fi | ||||||
|  |     done | ||||||
|  | } | ||||||
|  |  | ||||||
|  | pw_gui_for_edit_db () { | ||||||
|  |     unset ADD_CHK_BOX_EDIT_DB | ||||||
|  |     edit_db_field_add () { | ||||||
|  |         for int_to_boole in $@ ; do | ||||||
|  |             if [ "${!int_to_boole}" == "1" ] | ||||||
|  |             then export ${int_to_boole}="TRUE" | ||||||
|  |             else export ${int_to_boole}="FALSE" | ||||||
|  |             fi | ||||||
|  |             ADD_CHK_BOX_EDIT_DB="${ADD_CHK_BOX_EDIT_DB} --field="${int_to_boole}:CHK" "${!int_to_boole}"" | ||||||
|  |         done | ||||||
|  |     } | ||||||
|  |     edit_db_field_add $@ | ||||||
|  |     output_yad_edit_db=`"${pw_yad}" --title "EDIT_DB" --text-align=center --text "Change settings in database file for ${PORTWINE_DB}\n" \ | ||||||
|  |     --columns=4 --form --separator=" " --borders=10 --center  ${ADD_CHK_BOX_EDIT_DB} \ | ||||||
|  |     --button="CANCEL":1 --button="OPEN DB FILE":150 --button="SAVE CHANGES":0 ` | ||||||
|  |     YAD_STATUS="$?" | ||||||
|  |     if [ "$YAD_STATUS" == "1" ] || [ "$YAD_STATUS" == "252" ] ; then exit 0 | ||||||
|  |     elif [ "$YAD_STATUS" == "150" ] ; then | ||||||
|  |         xdg-open "${PORTWINE_DB_FILE}" & | ||||||
|  |         exit 0 | ||||||
|  |     fi | ||||||
|  |     export output_yad_edit_db=($output_yad_edit_db) | ||||||
|  |     export bool_from_yad=0 | ||||||
|  |     edit_db_field_read () { | ||||||
|  |         for boole_to_int in $@ ; do | ||||||
|  |             export ${boole_to_int}=${output_yad_edit_db[$bool_from_yad]} | ||||||
|  |             if [ "${!boole_to_int}" == "TRUE" ] | ||||||
|  |             then export ${boole_to_int}="1" | ||||||
|  |             else export ${boole_to_int}="0" | ||||||
|  |             fi | ||||||
|  |             export bool_from_yad=$(( ${bool_from_yad} + 1 )) | ||||||
|  |         done | ||||||
|  |     } | ||||||
|  |     edit_db_field_read $@ | ||||||
|  |     edit_db_from_gui $@ | ||||||
|  |     PW_DB_TMP=`cat "${PORTWINE_DB_FILE}"` | ||||||
|  |     echo "${PW_DB_TMP}" | awk '! a[$0]++' > "${PORTWINE_DB_FILE}" | ||||||
|  |     unset PW_DB_TMP | ||||||
|  |     return 0 | ||||||
|  | } | ||||||
|  |  | ||||||
|  | pw_check_and_download_wine () { | ||||||
|  |     if [ "${1}" == "proton_ge" ] ; then | ||||||
|  |         if [ "`cat "${PORT_WINE_PATH}"/data/dist/proton_ge/version | head -n 1`" != "${PW_PROTON_GE_VER}" ] | ||||||
|  |         then try_remove_dir "${PORT_WINE_PATH}/data/dist/proton_ge/" | ||||||
|  |         fi | ||||||
|  |         if [ ! -d "${PORT_WINE_PATH}/data/dist/proton_ge" ] ; then | ||||||
|  |             print_info "Download and install proton_ge..." | ||||||
|  |             if try_download "https://github.com/GloriousEggroll/proton-ge-custom/releases/download/${PW_PROTON_GE_VER}/Proton-${PW_PROTON_GE_VER}.tar.gz" "${PORT_WINE_PATH}/data/tmp/Proton-${PW_PROTON_GE_VER}.tar.gz" ; then | ||||||
|  |                 if unpack_tar_gz "${PORT_WINE_PATH}/data/tmp/Proton-${PW_PROTON_GE_VER}.tar.gz" "${PORT_WINE_PATH}/data/tmp/" ; then | ||||||
|  |                     mv -f "${PORT_WINE_PATH}/data/tmp/Proton-${PW_PROTON_GE_VER}/files" "${PORT_WINE_PATH}/data/dist/proton_ge" | ||||||
|  |                     echo "${PW_PROTON_GE_VER}" > "${PORT_WINE_PATH}/data/dist/proton_ge/version" | ||||||
|  |                     try_remove_file "${PORT_WINE_PATH}/data/tmp/Proton-${PW_PROTON_GE_VER}.tar.gz" | ||||||
|  |                     try_remove_dir "${PORT_WINE_PATH}/data/tmp/Proton-${PW_PROTON_GE_VER}" | ||||||
|  |                     try_remove_dir "${PORT_WINE_PATH}/data/dist/proton_ge/share/default_pfx/" | ||||||
|  |                 else | ||||||
|  |                     try_remove_file "${PORT_WINE_PATH}/data/tmp/Proton-${PW_PROTON_GE_VER}.tar.gz" | ||||||
|  |                     try_remove_dir "${PORT_WINE_PATH}/data/tmp/Proton-${PW_PROTON_GE_VER}" | ||||||
|  |                     try_remove_dir "${PORT_WINE_PATH}/data/dist/proton_ge" | ||||||
|  |  | ||||||
|  |                     `zenity --error --title "Error..." \ | ||||||
|  |                     --text "Failed to download WINE: proton_ge.\nCheck internet connection and press OK" \ | ||||||
|  |                     --no-wrap ` > /dev/null 2>&1 && pw_check_and_download_wine | ||||||
|  |                 fi | ||||||
|  |             else | ||||||
|  |                 `zenity --error --title "Error..." \ | ||||||
|  |                 --text "Failed to download WINE: proton_ge.\nCheck internet connection and press OK" \ | ||||||
|  |                 --no-wrap ` > /dev/null 2>&1 && pw_check_and_download_wine | ||||||
|  |             fi | ||||||
|  |         fi | ||||||
|  |     fi | ||||||
|  | } | ||||||
| @@ -36,8 +36,10 @@ then | |||||||
| 	export scripts_upd5="Напомнить позже" | 	export scripts_upd5="Напомнить позже" | ||||||
| 	export scripts_upd6="Больше не напоминать" | 	export scripts_upd6="Больше не напоминать" | ||||||
|  |  | ||||||
|  | 	export port_clear_pfx="Вы действительно хотите очистить префикс PortProton?" | ||||||
|  |  | ||||||
| 	export port_del1="Удаление $portname" | 	export port_del1="Удаление $portname" | ||||||
| 	export port_del2="Вы действительно хотите удалить $portname,\nс установленным в него клиентом?\n" | 	export port_del2="Вы действительно хотите полностью удалить PortProton?" | ||||||
| 	export port_del3="Удалить?!" | 	export port_del3="Удалить?!" | ||||||
| 	export port_del4="Нет, не удалять!" | 	export port_del4="Нет, не удалять!" | ||||||
| 	export port_del5="Да, удалить!" | 	export port_del5="Да, удалить!" | ||||||
| @@ -130,8 +132,10 @@ then | |||||||
| 	export scripts_upd5="Remind me later" | 	export scripts_upd5="Remind me later" | ||||||
| 	export scripts_upd6="Do not remind me" | 	export scripts_upd6="Do not remind me" | ||||||
|  |  | ||||||
|  | 	export port_clear_pfx="Do you want to clear prefix in PortProton?" | ||||||
|  |  | ||||||
| 	export port_del1="Remove $portname" | 	export port_del1="Remove $portname" | ||||||
| 	export port_del2="Are you sure you want to delete the ${portname}?\n" | 	export port_del2="Are you sure you want to delete the PortProton" | ||||||
| 	export port_del3="Remove?!" | 	export port_del3="Remove?!" | ||||||
| 	export port_del4="No!" | 	export port_del4="No!" | ||||||
| 	export port_del5="Yes!" | 	export port_del5="Yes!" | ||||||
|   | |||||||
| @@ -17,7 +17,7 @@ export WINEDLLOVERRIDES="xinput1_3,d3dcompiler_43=n,b" | |||||||
| ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 | ##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_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -36,4 +36,4 @@ export WINEDLLOVERRIDES="xinput1_3,d3dcompiler_43=n,b" | |||||||
| ##export PW_DXGI_FROM_DXVK=0 | ##export PW_DXGI_FROM_DXVK=0 | ||||||
| ##export WINEARCH=win32                           # defaut = win64 | ##export WINEARCH=win32                           # defaut = win64 | ||||||
| ##export WINEPREFIX= | ##export WINEPREFIX= | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -15,7 +15,7 @@ export PW_VULKAN_USE=dxvk | |||||||
| ##export PW_VKD3D_VER=2.2 | ##export PW_VKD3D_VER=2.2 | ||||||
| ##export PW_DXR_ON=1 | ##export PW_DXR_ON=1 | ||||||
| ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_OLD_GL_STRING=1 | ##export PW_OLD_GL_STRING=1 | ||||||
| ##export PW_HIDE_NVIDIA_GPU=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_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ||||||
| @@ -38,4 +38,4 @@ export PULSE_LATENCY_MSEC=90                    # Fix crackling audio in games | |||||||
| ##export PW_USE_TERMINAL=1                        # Force run in terminal | ##export PW_USE_TERMINAL=1                        # Force run in terminal | ||||||
| ##export PW_LOG=1                                 # Enable debug mode fo terminal  | ##export PW_LOG=1                                 # Enable debug mode fo terminal  | ||||||
| ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -5,16 +5,19 @@ | |||||||
| #Battle.net.exe | #Battle.net.exe | ||||||
| #Rating=5 | #Rating=5 | ||||||
| ################################################ | ################################################ | ||||||
| ##export PW_VULKAN_USE=dxvk | export PW_COMMENT_DB="We recommend using PROTON_GE + DXVK!" | ||||||
|  | export PW_WINE_USE=proton_ge | ||||||
|  | export PW_VULKAN_USE=dxvk | ||||||
| export LAUNCH_PARAMETERS="" | export LAUNCH_PARAMETERS="" | ||||||
| export WINEDLLOVERRIDES="locationapi=" | export WINEDLLOVERRIDES="locationapi=" | ||||||
| export PW_DLL_INSTALL="vcrun2019 d3dx11_42 d3dx11_43" | export PW_DLL_INSTALL="vcrun2019 d3dx11_42 d3dx11_43" | ||||||
| export PW_WINDOWS_VER=10 | export PW_WINDOWS_VER=10 | ||||||
| export PW_NVAPI_DISABLE=1 | export PW_USE_NVAPI=0 | ||||||
|  |  | ||||||
| ADD_IN_START_PORTWINE () { | add_in_start_portwine () { | ||||||
|     rm -fr "${PORT_WINE_PATH}/data/pfx/drive_c/ProgramData/Agent/data" |     rm -fr "${PORT_WINE_PATH}/data/pfx/drive_c/ProgramData/Agent/data" | ||||||
|     rm -fr "${PORT_WINE_PATH}/data/pfx/drive_c/users/${USER}/Blizzard Entertainment/Battle.net/Cache" |     rm -fr "${PORT_WINE_PATH}/data/pfx/drive_c/users/${USER}/Blizzard Entertainment/Battle.net/Cache" | ||||||
|     rm -fr "${PORT_WINE_PATH}/data/pfx/drive_c/users/Public/Blizzard Entertainment/Battle.net/Cache" |     rm -fr "${PORT_WINE_PATH}/data/pfx/drive_c/users/Public/Blizzard Entertainment/Battle.net/Cache" | ||||||
|     try_remove_file "${PORT_WINE_PATH}/data/pfx/drive_c/windows/Fonts/sourcehansans.ttc" |     try_remove_file "${PORT_WINE_PATH}/data/pfx/drive_c/windows/Fonts/sourcehansans.ttc" | ||||||
|  |     sed -i 's/"GrabFullscreen"="Y"/"GrabFullscreen"="N"/' "${WINEPREFIX}/user.reg" | ||||||
| } | } | ||||||
							
								
								
									
										33
									
								
								data_from_portwine/scripts/portwine_db/Biomutant
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,33 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | #Author: kosta | ||||||
|  | #Biomutant.exe | ||||||
|  | #Rating=1-5 | ||||||
|  | ######################################################## | ||||||
|  | export PW_VULKAN_USE=vkd3d | ||||||
|  | #####################examples########################### | ||||||
|  | ##export PW_COMMENT_DB="blablabla" | ||||||
|  | ##export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP | ||||||
|  | export PW_DLL_INSTALL="vcrun2019"               # 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_DXR_ON=1 | ||||||
|  | ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ||||||
|  | ##export PW_USE_NVAPI=0 | ||||||
|  | ##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_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_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_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ||||||
|  | ##add_in_start_portwine () { commands ; } | ||||||
							
								
								
									
										38
									
								
								data_from_portwine/scripts/portwine_db/Control_DX11
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,38 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | #Author: user | ||||||
|  | #Control_DX11.exe | ||||||
|  | #Rating=1-5 | ||||||
|  | ######################################################## | ||||||
|  | export PW_VULKAN_USE=dxvk | ||||||
|  | ##export PW_MANGOHUD=1 | ||||||
|  | export PW_COMMENT_DB="Control (DX11)" | ||||||
|  | export PW_DLL_INSTALL="physx" | ||||||
|  | ##export WINEDLLOVERRIDES="d3d12,d3d_rmdwin10_f,renderer_rmdwin10_f,app_rmdwin10_f,input_rmdwin10_f,renderer_rmdwin10_f,physics_rmdwin10_f,snd_rmdwin10_f,ui_rmdwin10_f=n" | ||||||
|  | #####################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_USE_NVAPI=0 | ||||||
|  | ##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_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_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_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ||||||
|  | ##add_in_start_portwine () { commands ; } | ||||||
							
								
								
									
										38
									
								
								data_from_portwine/scripts/portwine_db/Control_DX12
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,38 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | #Author: user | ||||||
|  | #Control_DX12.exe | ||||||
|  | #Rating=1-5 | ||||||
|  | ######################################################## | ||||||
|  | export PW_VULKAN_USE=vkd3d | ||||||
|  | export PW_COMMENT_DB="Control (DX12)" | ||||||
|  | ##export PW_DXR_ON=1 | ||||||
|  | ##export PW_MANGOHUD=1 | ||||||
|  | export PW_DLL_INSTALL="physx" | ||||||
|  | export WINEDLLOVERRIDES="d3d12,d3d_rmdwin10_f,renderer_rmdwin10_f,app_rmdwin10_f,input_rmdwin10_f,renderer_rmdwin10_f,physics_rmdwin10_f,snd_rmdwin10_f,ui_rmdwin10_f=n" | ||||||
|  | #####################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 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_USE_NVAPI=0 | ||||||
|  | ##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_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_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_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ||||||
|  | ##add_in_start_portwine () { commands ; } | ||||||
| @@ -13,7 +13,7 @@ export WINEDLLOVERRIDES="Crash*,REDEngineErrorReporter.exe=" | |||||||
| ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=1 | ##export PW_VKD3D_FEATURE_LEVEL=1 | ||||||
| ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -32,4 +32,4 @@ export PW_HEAP_DELAY_FREE=0 | |||||||
| ##export PW_DXGI_FROM_DXVK=0 | ##export PW_DXGI_FROM_DXVK=0 | ||||||
| ##export WINEARCH=win32                           # defaut = win64 | ##export WINEARCH=win32                           # defaut = win64 | ||||||
| ##export WINEPREFIX= | ##export WINEPREFIX= | ||||||
| #ADD_IN_START_PORTWINE () { "${PW_RUNTIME}" "$WINESERVER" -w } | #add_in_start_portwine () { "${pw_runtime}" "$WINESERVER" -w } | ||||||
|   | |||||||
| @@ -11,7 +11,7 @@ export PW_NO_ESYNC=1        # Do not use eventfd-based in-process synchronizatio | |||||||
| #export PW_VULKAN_NO_ASYNC=1 | #export PW_VULKAN_NO_ASYNC=1 | ||||||
| #export PW_USE_TERMINAL=1 | #export PW_USE_TERMINAL=1 | ||||||
| #export PW_OLD_GL_STRING=0 | #export PW_OLD_GL_STRING=0 | ||||||
| #export PW_NVAPI_DISABLE=1 | #export PW_USE_NVAPI=0 | ||||||
| #export PW_VKD3D_FEATURE_LEVEL=0 | #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_NO_WRITE_WATCH=0          # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| #export PW_HIDE_NVIDIA_GPU=0 | #export PW_HIDE_NVIDIA_GPU=0 | ||||||
|   | |||||||
							
								
								
									
										33
									
								
								data_from_portwine/scripts/portwine_db/DaysGone
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,33 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | #Author: xuser | ||||||
|  | #DaysGone.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="vcrun2019"               # 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_DXR_ON=1 | ||||||
|  | ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ||||||
|  | ##export PW_USE_NVAPI=0 | ||||||
|  | ##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_VIRTUAL_DESKTOP=1 | ||||||
|  | ##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue | ||||||
|  | ##export ENABLE_VKBASALT=1 | ||||||
|  | export PW_NO_FSYNC=0                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||||
|  | export PW_NO_ESYNC=0                            # Do not use eventfd-based in-process synchronization primitives | ||||||
|  | ##export PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games | ||||||
|  | ##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_GUI_DISABLED_CS=1                     # 1 = disabled GUI | ||||||
|  | ##add_in_start_portwine () { commands ; } | ||||||
| @@ -7,14 +7,14 @@ export PW_VULKAN_USE=0 | |||||||
| #####################examples########################### | #####################examples########################### | ||||||
| ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ||||||
| ##export WINEDLLOVERRIDES="blabla=n,b" | ##export WINEDLLOVERRIDES="blabla=n,b" | ||||||
| ##export PW_DLL_INSTALL="vcrun2019 vcrun6"        # Install DDL in port prefix (used winetricks)  | ##export PW_DLL_INSTALL="vcrun2019 "        # Install DDL in port prefix (used winetricks)  | ||||||
| ##export PW_LOG=0                                 # Enable debug mode fo terminal  | ##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_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||||
| ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ||||||
| ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 | ##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_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -28,4 +28,4 @@ export PW_VULKAN_USE=0 | |||||||
| ##export VKD3D_CONFIG=force_bindless_texel_buffer | ##export VKD3D_CONFIG=force_bindless_texel_buffer | ||||||
| ##export PW_WINDOWS_VER=10                      # Set windows version 10, 7 or XP | ##export PW_WINDOWS_VER=10                      # Set windows version 10, 7 or XP | ||||||
| ##export PW_VIRTUAL_DESKTOP=1 | ##export PW_VIRTUAL_DESKTOP=1 | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -6,9 +6,3 @@ | |||||||
| export PW_VULKAN_USE=dxvk | export PW_VULKAN_USE=dxvk | ||||||
| export LAUNCH_PARAMETERS="" | export LAUNCH_PARAMETERS="" | ||||||
| export PW_DLL_INSTALL="" | export PW_DLL_INSTALL="" | ||||||
|  |  | ||||||
| ADD_IN_START_PORTWINE () |  | ||||||
| { |  | ||||||
| ${PW_XTERM} wget -c -T 3 --output-document="${PORT_WINE_TMP_PATH}/wine-mono-5.1.1.2_ED-x86.msi" "https://github.com/redmcg/wine-mono/releases/download/wine-mono-5.1.1.2_ED/wine-mono-5.1.1.2_ED-x86.msi" |  | ||||||
| ${PW_XTERM} "${WINELOADER}" msiexec /i "${PORT_WINE_TMP_PATH}/wine-mono-5.1.1.2_ED-x86.msi" |  | ||||||
| } |  | ||||||
							
								
								
									
										32
									
								
								data_from_portwine/scripts/portwine_db/Esprit_Games
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,32 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | #Author: fff555w | ||||||
|  | #Esprit Games.exe | ||||||
|  | #Rating=1-5 | ||||||
|  | #####################examples########################### | ||||||
|  | ##export PW_COMMENT_DB="blablabla" | ||||||
|  | export PW_WINDOWS_VER=7                        # 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_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_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_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ||||||
|  | ##add_in_start_portwine () { commands ; } | ||||||
| @@ -15,7 +15,7 @@ export WINEDLLOVERRIDES="FLEngine,FLEngine_x64=n" | |||||||
| ##export PW_VKD3D_VER=2.2 | ##export PW_VKD3D_VER=2.2 | ||||||
| ##export PW_DXR_ON=1 | ##export PW_DXR_ON=1 | ||||||
| ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| ##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ||||||
| @@ -36,4 +36,4 @@ export PW_FORCE_DISABLED_GAMEMOD=1              # Force disabele gamemod | |||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_LOG=0                                 # Enable debug mode fo terminal  | ##export PW_LOG=0                                 # Enable debug mode fo terminal  | ||||||
| ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -11,7 +11,7 @@ export PW_NO_ESYNC=1        # Do not use eventfd-based in-process synchronizatio | |||||||
| export PW_DXVK_ASYNC=0 | export PW_DXVK_ASYNC=0 | ||||||
| #export PW_USE_TERMINAL=0 | #export PW_USE_TERMINAL=0 | ||||||
| export PW_OLD_GL_STRING=1 | export PW_OLD_GL_STRING=1 | ||||||
| #export PW_NVAPI_DISABLE=1 | #export PW_USE_NVAPI=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_NO_WRITE_WATCH=0          # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| #export PW_HIDE_NVIDIA_GPU=0 | #export PW_HIDE_NVIDIA_GPU=0 | ||||||
| #export PW_FORCE_USE_VSYNC=2         # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | #export PW_FORCE_USE_VSYNC=2         # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ||||||
|   | |||||||
| @@ -7,14 +7,14 @@ | |||||||
| #####################examples########################### | #####################examples########################### | ||||||
| ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ||||||
| ##export WINEDLLOVERRIDES="blabla=n,b" | ##export WINEDLLOVERRIDES="blabla=n,b" | ||||||
| ##export PW_DLL_INSTALL="vcrun2019 vcrun6"        # Install DDL in port prefix (used winetricks)  | ##export PW_DLL_INSTALL="vcrun2019 "        # Install DDL in port prefix (used winetricks)  | ||||||
| ##export PW_LOG=0                                 # Enable debug mode fo terminal  | ##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_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||||
| ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ||||||
| ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 | ##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_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -31,4 +31,4 @@ | |||||||
| ##export DXVK_HUD=fps,devinfo | ##export DXVK_HUD=fps,devinfo | ||||||
| ##export PW_HEAP_DELAY_FREE=0 | ##export PW_HEAP_DELAY_FREE=0 | ||||||
| ##export PW_DXGI_FROM_DXVK=0 | ##export PW_DXGI_FROM_DXVK=0 | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
							
								
								
									
										36
									
								
								data_from_portwine/scripts/portwine_db/Far_Cry_3_d3d11
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,36 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | #Author: nixon | ||||||
|  | #farcry3_d3d11.exe | ||||||
|  | #Rating=1-5 | ||||||
|  | ######################################################## | ||||||
|  | export PW_VULKAN_USE=dxvk | ||||||
|  | #export PW_MANGOHUD=1 | ||||||
|  | export PW_DLL_INSTALL="d3dx11_42 d3dx11_43" | ||||||
|  | #export WINEDLLOVERRIDES="blabla=n,b" | ||||||
|  | #####################examples########################### | ||||||
|  | ##export PW_COMMENT_DB="blablabla" | ||||||
|  | ##export PW_WINDOWS_VER=7                        # Set windows version 10, 7 or XP | ||||||
|  | ##export PW_DLL_INSTALL="vcrun2017"               # Install DDL in port prefix (used winetricks)  | ||||||
|  | ##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_USE_NVAPI=0 | ||||||
|  | ##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_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_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_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ||||||
|  | ##add_in_start_portwine () { commands ; } | ||||||
							
								
								
									
										36
									
								
								data_from_portwine/scripts/portwine_db/Far_Cry_3_d3d9
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,36 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | #Author: nixon | ||||||
|  | #farcry3.exe | ||||||
|  | #Rating=1-5 | ||||||
|  | ######################################################## | ||||||
|  | export PW_VULKAN_USE=0 | ||||||
|  | #export PW_DLL_INSTALL=""   | ||||||
|  | #export PW_MANGOHUD_DLSYM=1 | ||||||
|  | #####################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_USE_NVAPI=0 | ||||||
|  | ##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_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_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_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ||||||
|  | ##add_in_start_portwine () { commands ; } | ||||||
							
								
								
									
										34
									
								
								data_from_portwine/scripts/portwine_db/Far_Cry_4
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,34 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | #Author: nixon | ||||||
|  | #FarCry4.exe | ||||||
|  | #Rating=1-5 | ||||||
|  | ######################################################## | ||||||
|  | export PW_VULKAN_USE=dxvk | ||||||
|  | export PW_DLL_INSTALL="d3dcompiler_43 d3dcompiler_47"               # Install DDL in port prefix (used winetricks)  | ||||||
|  | #####################examples########################### | ||||||
|  | ##export PW_COMMENT_DB="blablabla" | ||||||
|  | ##export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP | ||||||
|  | ##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_USE_NVAPI=0 | ||||||
|  | ##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_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_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_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ||||||
|  | ##add_in_start_portwine () { commands ; } | ||||||
							
								
								
									
										7
									
								
								data_from_portwine/scripts/portwine_db/ForzaHorizon4
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,7 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | #Author: garrett | ||||||
|  | #ForzaHorizon4.exe  | ||||||
|  | #Rating=5 | ||||||
|  | ################################################ | ||||||
|  | export PW_DLL_INSTALL="vcrun2019"  | ||||||
|  | export PW_VULKAN_USE=vkd3d | ||||||
| @@ -6,6 +6,5 @@ | |||||||
| export PW_VULKAN_USE=dxvk | export PW_VULKAN_USE=dxvk | ||||||
| export PW_NO_ESYNC=1    | export PW_NO_ESYNC=1    | ||||||
| export PW_NO_FSYNC=1 | export PW_NO_FSYNC=1 | ||||||
| export LAUNCH_PARAMETERS="-nomemrestrict -norestrictions -percentvidmem 100 -availablevidmem 2048 -novblank" # Change -availablevidmem 2048 if you have less than 2 Gb video memory |  | ||||||
|  |  | ||||||
| ##export RADV_DEBUG=nodcc # Enable if you have Big Navi videocard (Radeon RX 60xx) | ##export RADV_DEBUG=nodcc # Enable if you have Big Navi videocard (Radeon RX 60xx) | ||||||
|  | export LAUNCH_PARAMETERS="('"-nomemrestrict"' '"-norestrictions"' '"-percentvidmem 100"' '"-availablevidmem 2048"' '"-noprecache"' '"-novblank"' '"-heapsize 2097152"')"                # Additional launch options | ||||||
|   | |||||||
| @@ -6,8 +6,8 @@ | |||||||
| ################################################ | ################################################ | ||||||
| export WINEDLLOVERRIDES="galaxycommunication.exe=n;libglesv2=" | export WINEDLLOVERRIDES="galaxycommunication.exe=n;libglesv2=" | ||||||
| export LAUNCH_PARAMETERS="/runWithoutUpdating /deelevated" | export LAUNCH_PARAMETERS="/runWithoutUpdating /deelevated" | ||||||
| export PW_DLL_INSTALL="vcrun2017 vcrun6 mfc140" | export PW_DLL_INSTALL="vcrun2019 mfc140" | ||||||
| ADD_IN_START_PORTWINE () | add_in_start_portwine () | ||||||
| { | { | ||||||
| if [ -e "${WINEPREFIX}/drive_c/users/${USER}/Local Settings/Application Data/GOG.com/Galaxy/Configuration/config.json" ] ; then | if [ -e "${WINEPREFIX}/drive_c/users/${USER}/Local Settings/Application Data/GOG.com/Galaxy/Configuration/config.json" ] ; then | ||||||
|     sed -i 's/"featureOverlay" : true,/"featureOverlay" : false,/' "${WINEPREFIX}/drive_c/${USER}/steamuser/Local Settings/Application Data/GOG.com/Galaxy/Configuration/config.json" |     sed -i 's/"featureOverlay" : true,/"featureOverlay" : false,/' "${WINEPREFIX}/drive_c/${USER}/steamuser/Local Settings/Application Data/GOG.com/Galaxy/Configuration/config.json" | ||||||
|   | |||||||
| @@ -7,4 +7,4 @@ export PW_VULKAN_USE=vkd3d | |||||||
| export LAUNCH_PARAMETERS="" | export LAUNCH_PARAMETERS="" | ||||||
| export PW_DXGI_FROM_DXVK=1 | export PW_DXGI_FROM_DXVK=1 | ||||||
| #export MANGOHUD=1 | #export MANGOHUD=1 | ||||||
| #export PW_NVAPI_DISABLE=1            # for nvidia gpu | #export PW_USE_NVAPI=0            # for nvidia gpu | ||||||
|   | |||||||
| @@ -12,7 +12,7 @@ export PW_VULKAN_USE=dxvk #dxvk or vkd3d | |||||||
| #export PW_VULKAN_NO_ASYNC=1 | #export PW_VULKAN_NO_ASYNC=1 | ||||||
| #export PW_USE_TERMINAL=0 | #export PW_USE_TERMINAL=0 | ||||||
| #export PW_OLD_GL_STRING=0 | #export PW_OLD_GL_STRING=0 | ||||||
| #export PW_NVAPI_DISABLE=1 | #export PW_USE_NVAPI=0 | ||||||
| #export PW_VKD3D_FEATURE_LEVEL=0 | #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_NO_WRITE_WATCH=0          # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| #export PW_HIDE_NVIDIA_GPU=0 | #export PW_HIDE_NVIDIA_GPU=0 | ||||||
|   | |||||||
| @@ -7,14 +7,14 @@ export PW_VULKAN_USE=dxvk | |||||||
| #####################examples########################### | #####################examples########################### | ||||||
| ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ||||||
| ##export WINEDLLOVERRIDES="blabla=n,b" | ##export WINEDLLOVERRIDES="blabla=n,b" | ||||||
| ##export PW_DLL_INSTALL="vcrun2019 vcrun6"        # Install DDL in port prefix (used winetricks)  | ##export PW_DLL_INSTALL="vcrun2019 "        # Install DDL in port prefix (used winetricks)  | ||||||
| ##export PW_LOG=0                                 # Enable debug mode fo terminal  | ##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_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||||
| ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ||||||
| ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 | ##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_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -28,4 +28,4 @@ export PULSE_LATENCY_MSEC=120                    # Fix crackling audio in games | |||||||
| ##export VKD3D_CONFIG=force_bindless_texel_buffer | ##export VKD3D_CONFIG=force_bindless_texel_buffer | ||||||
| ##export PW_WINDOWS_VER=10                      # Set windows version 10, 7 or XP | ##export PW_WINDOWS_VER=10                      # Set windows version 10, 7 or XP | ||||||
| ##export PW_VIRTUAL_DESKTOP=1 | ##export PW_VIRTUAL_DESKTOP=1 | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -1,15 +1,42 @@ | |||||||
| export LAUNCH_PARAMETERS="--launch-product=league_of_legends --launch-patchline=live" | #!/bin/bash | ||||||
| cd "${PATH_TO_GAME}" | #Author: xuser | ||||||
|  | #LeagueClient.exe | ||||||
| if [ "$(cat /proc/sys/abi/vsyscall32)" -ne 0 ] | #Rating=1-5 | ||||||
| then | #####################examples########################### | ||||||
|     zenity --question --title="Fix for LoL anti-cheat" \ | ##export PW_COMMENT_DB="blablabla" | ||||||
|            --text='Root rights are required to execute the command:           \n"sysctl -w abi.vsyscall32=0" and "sysctl -p"' --no-wrap | ##export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP | ||||||
|     if [ "$?" = 1 ] | ##export PW_DLL_INSTALL="vcrun2017"               # Install DDL in port prefix (used winetricks) | ||||||
|     then | ##export WINEDLLOVERRIDES="blabla=n,b" | ||||||
|         exit 0 | export LAUNCH_PARAMETERS="('--launch-product=league_of_legends' '--launch-patchline=live')"                # Additional launch options | ||||||
|  | export PW_WINE_USE=proton_ge | ||||||
|  | export PW_VULKAN_USE=dxvk | ||||||
|  | ##export PW_DXR_ON=1 | ||||||
|  | ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ||||||
|  | ##export PW_USE_NVAPI=0 | ||||||
|  | ##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_VIRTUAL_DESKTOP=1 | ||||||
|  | ##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue | ||||||
|  | ##export ENABLE_VKBASALT=1 | ||||||
|  | ##export PW_VKBASALT_EFFECTS="FakeHDR:cas"        # Use Reshade in others games (dx9-12 to vulkan only) | ||||||
|  | ##export PW_VKBASALT_FFX_CAS="0.75"               # FidelityFX Contrast Adaptive Sharpening (min 0 - max 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=0                            # Do not use eventfd-based in-process synchronization primitives | ||||||
|  | ##export PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games | ||||||
|  | ##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="${PORT_WINE_PATH}/data/pfx_x86" | ||||||
|  | ##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG | ||||||
|  | ##export PW_USE_TERMINAL=1                        # Force run in terminal | ||||||
|  | ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI | ||||||
|  | add_in_start_portwine () { | ||||||
|  |     if [ "$(cat /proc/sys/abi/vsyscall32)" -ne 0 ] ; then | ||||||
|  |         zenity --question --title="Fix for LoL anti-cheat" \ | ||||||
|  |         --text='Root rights are required to execute the command:           \n"sysctl -w abi.vsyscall32=0" and "sysctl -p"' --no-wrap | ||||||
|  |         [ "$?" = 1 ] && exit 0 | ||||||
|  |         pkexec sh -c 'sysctl -w abi.vsyscall32=0 && sysctl -p' | ||||||
|     fi |     fi | ||||||
|     pkexec sh -c 'sysctl -w abi.vsyscall32=0 && sysctl -p' |  | ||||||
| fi |  | ||||||
| sh "${PORT_SCRIPTS_PATH}"/fix_start_lol.sh | zenity --progress --title="Start PortLoL" --text="Please wait, launch is in progress, it may take few minutes" --pulsate --auto-close --auto-kill --width=450 & |  | ||||||
| } | } | ||||||
| @@ -8,14 +8,14 @@ | |||||||
| ##export PW_COMMENT_DB="blablabla" | ##export PW_COMMENT_DB="blablabla" | ||||||
| ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ||||||
| ##export WINEDLLOVERRIDES="blabla=n,b" | ##export WINEDLLOVERRIDES="blabla=n,b" | ||||||
| ##export PW_DLL_INSTALL="vcrun2019 vcrun6"        # Install DDL in port prefix (used winetricks)  | ##export PW_DLL_INSTALL="vcrun2019 "        # Install DDL in port prefix (used winetricks)  | ||||||
| ##export PW_LOG=0                                 # Enable debug mode fo terminal  | ##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_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||||
| ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ||||||
| ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| export PW_NVAPI_DISABLE=1 | export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 | ##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_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -34,4 +34,4 @@ export PW_HEAP_DELAY_FREE=1 | |||||||
| ##export PW_DXGI_FROM_DXVK=1 | ##export PW_DXGI_FROM_DXVK=1 | ||||||
| ##export WINEARCH=win32                           # defaut = win64 | ##export WINEARCH=win32                           # defaut = win64 | ||||||
| ##export WINEPREFIX= | ##export WINEPREFIX= | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -12,7 +12,7 @@ export PW_DLL_INSTALL="physx d3dx9"                  # Install DDL in port prefi | |||||||
| ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 | ##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_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -29,4 +29,4 @@ export PW_DLL_INSTALL="physx d3dx9"                  # Install DDL in port prefi | |||||||
| ##export DXVK_HUD=fps,devinfo | ##export DXVK_HUD=fps,devinfo | ||||||
| ##export PW_HEAP_DELAY_FREE=0 | ##export PW_HEAP_DELAY_FREE=0 | ||||||
| ##export PW_DXGI_FROM_DXVK=0 | ##export PW_DXGI_FROM_DXVK=0 | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -12,7 +12,7 @@ export PW_DLL_INSTALL="physx d3dx9"                  # Install DDL in port prefi | |||||||
| ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 | ##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_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -29,4 +29,4 @@ export PW_DLL_INSTALL="physx d3dx9"                  # Install DDL in port prefi | |||||||
| ##export DXVK_HUD=fps,devinfo | ##export DXVK_HUD=fps,devinfo | ||||||
| ##export PW_HEAP_DELAY_FREE=0 | ##export PW_HEAP_DELAY_FREE=0 | ||||||
| ##export PW_DXGI_FROM_DXVK=0 | ##export PW_DXGI_FROM_DXVK=0 | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -1,10 +0,0 @@ | |||||||
| #!/bin/bash |  | ||||||
| #Author: Ridbowt (Nikola P.) |  | ||||||
| #MOHAA.exe |  | ||||||
| #moh_spearhead.exe |  | ||||||
| #moh_breakthrough.exe |  | ||||||
| #Rating=5 |  | ||||||
| ################################################ |  | ||||||
| export PW_VULKAN_USE=0 |  | ||||||
| export LAUNCH_PARAMETERS="" |  | ||||||
| export MESA_EXTENSION_MAX_YEAR=2002 |  | ||||||
| @@ -1,9 +1,7 @@ | |||||||
| #!/bin/bash | #!/bin/bash | ||||||
| #Author: test | #Author: vellyn | ||||||
| #MikuMikuDance.exe | #MikuMikuDance.exe | ||||||
| #Rating=1-5 | #Rating=1-5 | ||||||
| ######################################################## |  | ||||||
| export PW_VULKAN_USE=dxvk |  | ||||||
| #####################examples########################### | #####################examples########################### | ||||||
| ##export PW_COMMENT_DB="blablabla" | ##export PW_COMMENT_DB="blablabla" | ||||||
| ##export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP | ##export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP | ||||||
| @@ -13,19 +11,16 @@ export PW_VULKAN_USE=dxvk | |||||||
| ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ||||||
| ##export PW_DXR_ON=1 | ##export PW_DXR_ON=1 | ||||||
| ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_OLD_GL_STRING=1 | ##export PW_OLD_GL_STRING=1 | ||||||
| ##export PW_HIDE_NVIDIA_GPU=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_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 PW_VIRTUAL_DESKTOP=1 | ||||||
| ##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue | ##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue | ||||||
| ##export ENABLE_VKBASALT=1 | ##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_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||||
| ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ||||||
| ##export PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games | ##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_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_HEAP_DELAY_FREE=1 | ||||||
| ##export PW_WINE_ALLOW_XIM=1                      # Disable XIM support until libx11 >= 1.7 is widespread | ##export PW_WINE_ALLOW_XIM=1                      # Disable XIM support until libx11 >= 1.7 is widespread | ||||||
| @@ -33,6 +28,5 @@ export PW_VULKAN_USE=dxvk | |||||||
| ##export WINEPREFIX= | ##export WINEPREFIX= | ||||||
| ##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG | ##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG | ||||||
| ##export PW_USE_TERMINAL=1                        # Force run in terminal | ##export PW_USE_TERMINAL=1                        # Force run in terminal | ||||||
| ##export PW_LOG=1                                 # Enable debug mode fo terminal  |  | ||||||
| ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -8,14 +8,14 @@ | |||||||
| ##export PW_COMMENT_DB="blablabla" | ##export PW_COMMENT_DB="blablabla" | ||||||
| ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ||||||
| ##export WINEDLLOVERRIDES="blabla=n,b" | ##export WINEDLLOVERRIDES="blabla=n,b" | ||||||
| ##export PW_DLL_INSTALL="vcrun2019 vcrun6"        # Install DDL in port prefix (used winetricks)  | ##export PW_DLL_INSTALL="vcrun2019 "        # Install DDL in port prefix (used winetricks)  | ||||||
| ##export PW_LOG=0                                 # Enable debug mode fo terminal  | ##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_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||||
| ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ||||||
| ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 | ##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_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -34,4 +34,4 @@ | |||||||
| ##export PW_DXGI_FROM_DXVK=0 | ##export PW_DXGI_FROM_DXVK=0 | ||||||
| ##export WINEARCH=win32                           # defaut = win64 | ##export WINEARCH=win32                           # defaut = win64 | ||||||
| ##export WINEPREFIX= | ##export WINEPREFIX= | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -17,7 +17,7 @@ export PW_DLL_INSTALL="d3dcompiler_42 d3dcompiler_43 d3dx9" | |||||||
| ##export PW_VKD3D_VER=2.2 | ##export PW_VKD3D_VER=2.2 | ||||||
| ##export PW_DXR_ON=1 | ##export PW_DXR_ON=1 | ||||||
| ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_OLD_GL_STRING=1 | ##export PW_OLD_GL_STRING=1 | ||||||
| ##export PW_HIDE_NVIDIA_GPU=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_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ||||||
| @@ -40,4 +40,4 @@ export PW_DLL_INSTALL="d3dcompiler_42 d3dcompiler_43 d3dx9" | |||||||
| ##export PW_USE_TERMINAL=1                        # Force run in terminal | ##export PW_USE_TERMINAL=1                        # Force run in terminal | ||||||
| ##export PW_LOG=1                                 # Enable debug mode fo terminal  | ##export PW_LOG=1                                 # Enable debug mode fo terminal  | ||||||
| ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -15,7 +15,7 @@ export PW_DLL_INSTALL="vcrun2010 vcrun2012 vcrun2017 d3dcompiler_43 d3dcompiler_ | |||||||
| ##export PW_VKD3D_VER=2.2 | ##export PW_VKD3D_VER=2.2 | ||||||
| ##export PW_DXR_ON=1 | ##export PW_DXR_ON=1 | ||||||
| ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ||||||
| export PW_NVAPI_DISABLE=1 | export PW_USE_NVAPI=0 | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| ##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ||||||
| @@ -44,16 +44,16 @@ export PW_NVAPI_DISABLE=1 | |||||||
|  |  | ||||||
| export STAGING_SHARED_MEMORY=0 | export STAGING_SHARED_MEMORY=0 | ||||||
|  |  | ||||||
| #ADD_IN_START_PORTWINE () { | #add_in_start_portwine () { | ||||||
| #     export PW_USER_TEMP="$WINEPREFIX/drive_c/users/${USER}/Temp"     | #     export PW_USER_TEMP="$WINEPREFIX/drive_c/users/${USER}/Temp"     | ||||||
| #     if try_download "https://download.dm.origin.com/origin/live/OriginSetup.exe" "${PW_USER_TEMP}/OriginSetup.exe" ; then | #     if try_download "https://download.dm.origin.com/origin/live/OriginSetup.exe" "${PW_USER_TEMP}/OriginSetup.exe" ; then | ||||||
| #         PW_START_PROGRESS_BAR_BLOCK "Extracting files for update the Origin..." | #         pw_start_progress_bar_block "Extracting files for update the Origin..." | ||||||
| #         unzip "${PW_USER_TEMP}/OriginSetup.exe" 'update/*.zip' -d "${PW_USER_TEMP}/"  | #         unzip "${PW_USER_TEMP}/OriginSetup.exe" 'update/*.zip' -d "${PW_USER_TEMP}/"  | ||||||
| #         unzip -o "${PW_USER_TEMP}/update/"*.zip -d "$WINEPREFIX/drive_c/Program Files (x86)/Origin/" | #         unzip -o "${PW_USER_TEMP}/update/"*.zip -d "$WINEPREFIX/drive_c/Program Files (x86)/Origin/" | ||||||
| #         try_remove_dir "${PW_USER_TEMP}/update" | #         try_remove_dir "${PW_USER_TEMP}/update" | ||||||
| #         try_remove_file "${PW_USER_TEMP}/OriginSetup.exe" | #         try_remove_file "${PW_USER_TEMP}/OriginSetup.exe" | ||||||
| #         PW_STOP_PROGRESS_BAR | #         pw_stop_progress_bar | ||||||
| #         PW_START_PROGRESS_BAR_CS "Starting the Origin..." | #         pw_start_progress_bar_cs "Starting the Origin..." | ||||||
|          |          | ||||||
| #         check_origin_update () { | #         check_origin_update () { | ||||||
| #             while :  | #             while :  | ||||||
|   | |||||||
| @@ -6,5 +6,5 @@ | |||||||
| #Rating=? | #Rating=? | ||||||
| ################################################ | ################################################ | ||||||
| export PW_VULKAN_USE=dxvk | export PW_VULKAN_USE=dxvk | ||||||
| export PW_DLL_INSTALL="vcrun2017" | export PW_DLL_INSTALL="vcrun2019" | ||||||
| export PW_WINDOWS_VER=10 | export PW_WINDOWS_VER=10 | ||||||
| @@ -10,7 +10,7 @@ | |||||||
| ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ||||||
| ##export PW_DXR_ON=1 | ##export PW_DXR_ON=1 | ||||||
| ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_OLD_GL_STRING=1 | ##export PW_OLD_GL_STRING=1 | ||||||
| ##export PW_HIDE_NVIDIA_GPU=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_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ||||||
| @@ -32,4 +32,4 @@ | |||||||
| ##export PW_USE_TERMINAL=1                        # Force run in terminal | ##export PW_USE_TERMINAL=1                        # Force run in terminal | ||||||
| ##export PW_LOG=1                                 # Enable debug mode fo terminal | ##export PW_LOG=1                                 # Enable debug mode fo terminal | ||||||
| ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI | ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -16,7 +16,7 @@ export PULSE_LATENCY_MSEC=150 | |||||||
| ##export PW_VKD3D_VER=2.2 | ##export PW_VKD3D_VER=2.2 | ||||||
| ##export PW_DXR_ON=1 | ##export PW_DXR_ON=1 | ||||||
| ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_OLD_GL_STRING=1 | ##export PW_OLD_GL_STRING=1 | ||||||
| ##export PW_HIDE_NVIDIA_GPU=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_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ||||||
| @@ -39,4 +39,4 @@ export PULSE_LATENCY_MSEC=150 | |||||||
| ##export PW_USE_TERMINAL=1                        # Force run in terminal | ##export PW_USE_TERMINAL=1                        # Force run in terminal | ||||||
| ##export PW_LOG=1                                 # Enable debug mode fo terminal  | ##export PW_LOG=1                                 # Enable debug mode fo terminal  | ||||||
| ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -5,4 +5,3 @@ | |||||||
| ################################################ | ################################################ | ||||||
| export PW_VULKAN_USE=dxvk | export PW_VULKAN_USE=dxvk | ||||||
| export LAUNCH_PARAMETERS="" | export LAUNCH_PARAMETERS="" | ||||||
|  |  | ||||||
|   | |||||||
							
								
								
									
										6
									
								
								data_from_portwine/scripts/portwine_db/Singularity
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,6 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | #Author: esa | ||||||
|  | #Singularity.exe | ||||||
|  | #Rating=1-5 | ||||||
|  | ################################################ | ||||||
|  | export PW_DLL_INSTALL="physx" | ||||||
| @@ -8,14 +8,14 @@ export PW_WINDOWS_VER=7                      # Set windows version 10, 7 or XP | |||||||
| #####################examples########################### | #####################examples########################### | ||||||
| ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ||||||
| ##export WINEDLLOVERRIDES="blabla=n,b" | ##export WINEDLLOVERRIDES="blabla=n,b" | ||||||
| ##export PW_DLL_INSTALL="vcrun2019 vcrun6"        # Install DDL in port prefix (used winetricks)  | ##export PW_DLL_INSTALL="vcrun2019 "        # Install DDL in port prefix (used winetricks)  | ||||||
| ##export PW_LOG=0                                 # Enable debug mode fo terminal  | ##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_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||||
| ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ||||||
| ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 | ##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_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -29,4 +29,4 @@ export PW_WINDOWS_VER=7                      # Set windows version 10, 7 or XP | |||||||
| ##export VKD3D_CONFIG=force_bindless_texel_buffer | ##export VKD3D_CONFIG=force_bindless_texel_buffer | ||||||
| ##export PW_WINDOWS_VER=10                      # Set windows version 10, 7 or XP | ##export PW_WINDOWS_VER=10                      # Set windows version 10, 7 or XP | ||||||
| ##export PW_VIRTUAL_DESKTOP=1 | ##export PW_VIRTUAL_DESKTOP=1 | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -8,14 +8,14 @@ | |||||||
| ##export PW_COMMENT_DB="blablabla" | ##export PW_COMMENT_DB="blablabla" | ||||||
| ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ||||||
| ##export WINEDLLOVERRIDES="blabla=n,b" | ##export WINEDLLOVERRIDES="blabla=n,b" | ||||||
| ##export PW_DLL_INSTALL="vcrun2019 vcrun6"        # Install DDL in port prefix (used winetricks)  | ##export PW_DLL_INSTALL="vcrun2019 "        # Install DDL in port prefix (used winetricks)  | ||||||
| ##export PW_LOG=0                                 # Enable debug mode fo terminal  | ##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_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||||
| ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ||||||
| ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 | ##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_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -34,4 +34,4 @@ | |||||||
| ##export PW_DXGI_FROM_DXVK=0 | ##export PW_DXGI_FROM_DXVK=0 | ||||||
| ##export WINEARCH=win32                           # defaut = win64 | ##export WINEARCH=win32                           # defaut = win64 | ||||||
| ##export WINEPREFIX= | ##export WINEPREFIX= | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -12,7 +12,7 @@ export PW_DLL_INSTALL="corefonts"        # Install DDL in port prefix (used wine | |||||||
| ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 | ##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_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -29,5 +29,5 @@ export PW_WINDOWS_VER=10                      # Set windows version 10, 7 or XP | |||||||
| ##export DXVK_HUD=fps,devinfo | ##export DXVK_HUD=fps,devinfo | ||||||
| ##export PW_HEAP_DELAY_FREE=0 | ##export PW_HEAP_DELAY_FREE=0 | ||||||
| ##export PW_DXGI_FROM_DXVK=0 | ##export PW_DXGI_FROM_DXVK=0 | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
| export PW_VULKAN_USE=0 | export PW_VULKAN_USE=0 | ||||||
|   | |||||||
							
								
								
									
										39
									
								
								data_from_portwine/scripts/portwine_db/Torchlight
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,39 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | #Author: xuser | ||||||
|  | #Torchlight.exe | ||||||
|  | #Rating=1-5 | ||||||
|  | ######################################################## | ||||||
|  | export PW_WINE_USE=proton_ge | ||||||
|  | export PW_VULKAN_USE=dxvk | ||||||
|  | export ENABLE_VKBASALT=1 | ||||||
|  | export PW_VKBASALT_EFFECTS="FakeHDR:cas:FilmGrain2"        | ||||||
|  | export PW_VKBASALT_FFX_CAS="1" | ||||||
|  | #####################examples########################### | ||||||
|  | ##export PW_COMMENT_DB="blablabla" | ||||||
|  | ##export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP | ||||||
|  | ##export PW_DLL_INSTALL=""                        # 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_WINE_USE=proton_ge                    # proton_steam or proton_ge | ||||||
|  | ##export PW_VULKAN_USE=vkd3d                      # dxvk, vkd3d or 0 for OpenGL | ||||||
|  | ##export PW_DXR_ON=1 | ||||||
|  | ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ||||||
|  | ##export PW_USE_NVAPI=0 | ||||||
|  | ##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_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=0                            # Do not use eventfd-based in-process synchronization primitives | ||||||
|  | ##export PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games | ||||||
|  | ##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_GUI_DISABLED_CS=1                     # 1 = disabled GUI | ||||||
|  | ##add_in_start_portwine () { commands ; } | ||||||
| @@ -9,14 +9,14 @@ | |||||||
| ##export PW_COMMENT_DB="blablabla" | ##export PW_COMMENT_DB="blablabla" | ||||||
| ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ||||||
| ##export WINEDLLOVERRIDES="blabla=n,b" | ##export WINEDLLOVERRIDES="blabla=n,b" | ||||||
| ##export PW_DLL_INSTALL="vcrun2019 vcrun6"        # Install DDL in port prefix (used winetricks)  | ##export PW_DLL_INSTALL="vcrun2019 "        # Install DDL in port prefix (used winetricks)  | ||||||
| ##export PW_LOG=0                                 # Enable debug mode fo terminal  | ##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_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||||
| ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ||||||
| ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 | ##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_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -33,4 +33,4 @@ | |||||||
| ##export DXVK_HUD=fps,devinfo | ##export DXVK_HUD=fps,devinfo | ||||||
| ##export PW_HEAP_DELAY_FREE=0 | ##export PW_HEAP_DELAY_FREE=0 | ||||||
| ##export PW_DXGI_FROM_DXVK=0 | ##export PW_DXGI_FROM_DXVK=0 | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -8,14 +8,14 @@ | |||||||
| #####################examples########################### | #####################examples########################### | ||||||
| ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ||||||
| ##export WINEDLLOVERRIDES="blabla=n,b" | ##export WINEDLLOVERRIDES="blabla=n,b" | ||||||
| ##export PW_DLL_INSTALL="vcrun2019 vcrun6"        # Install DDL in port prefix (used winetricks)  | ##export PW_DLL_INSTALL="vcrun2019 "        # Install DDL in port prefix (used winetricks)  | ||||||
| ##export PW_LOG=0                                 # Enable debug mode fo terminal  | ##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_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||||
| ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ||||||
| ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 | ##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_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -31,4 +31,4 @@ | |||||||
| ##export PW_VIRTUAL_DESKTOP=1 | ##export PW_VIRTUAL_DESKTOP=1 | ||||||
| ##export DXVK_HUD=fps,devinfo | ##export DXVK_HUD=fps,devinfo | ||||||
| ##export PW_HEAP_DELAY_FREE=0 | ##export PW_HEAP_DELAY_FREE=0 | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -6,7 +6,7 @@ | |||||||
|     export PW_VULKAN_USE=dxvk |     export PW_VULKAN_USE=dxvk | ||||||
|     export PW_USE_TERMINAL=0 |     export PW_USE_TERMINAL=0 | ||||||
|     export WINEPREFIX="${PORT_WINE_PATH}/data/pfx_dotnet/" |     export WINEPREFIX="${PORT_WINE_PATH}/data/pfx_dotnet/" | ||||||
|     export PW_DLL_INSTALL="vcrun2017 vcrun6 mfc42 vb6run physx dotnet40 "        # Install DDL in port prefix (used winetricks)  |     export PW_DLL_INSTALL="vcrun2017  mfc42 vb6run physx dotnet40 "        # Install DDL in port prefix (used winetricks)  | ||||||
|     export PW_COMMENT_DB="World Of Tanks EnCore" |     export PW_COMMENT_DB="World Of Tanks EnCore" | ||||||
|     ## export DXVK_HUD=fps,devinfo |     ## export DXVK_HUD=fps,devinfo | ||||||
|     ## export PW_MANGOHUD=1 |     ## export PW_MANGOHUD=1 | ||||||
|   | |||||||
| @@ -3,6 +3,7 @@ | |||||||
| #XR_3DA.exe  | #XR_3DA.exe  | ||||||
| #Rating=1-5 | #Rating=1-5 | ||||||
| ################################################ | ################################################ | ||||||
| export PW_VULKAN_USE=0 | export PW_VULKAN_USE=dxvk | ||||||
| export LAUNCH_PARAMETERS="-nointro -noprefetch" # -nointro command line option to skip intro movies | export LAUNCH_PARAMETERS="-nointro -noprefetch" # -nointro command line option to skip intro movies | ||||||
|                                                 # -noprefetch command line option to shorten load times |                                                 # -noprefetch command line option to shorten load times | ||||||
|  | #export PW_DLL_INSTALL="vcrun2019 mfc42 d3dcompiler_42 d3dcompiler_43 d3dcompiler_47 d3dx9 | ||||||
|   | |||||||
| @@ -13,7 +13,7 @@ export PW_DLL_INSTALL="d3dx9 d3dcompiler_43"        # Install DDL in port prefix | |||||||
| ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 | ##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_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -32,4 +32,4 @@ export PW_WINDOWS_VER=7                        # Set windows version 10, 7 or XP | |||||||
| ##export PW_DXGI_FROM_DXVK=0 | ##export PW_DXGI_FROM_DXVK=0 | ||||||
| ##export WINEARCH=win32                           # defaut = win64 | ##export WINEARCH=win32                           # defaut = win64 | ||||||
| ##export WINEPREFIX= | ##export WINEPREFIX= | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -7,14 +7,14 @@ | |||||||
| #####################examples########################### | #####################examples########################### | ||||||
| ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ||||||
| ##export WINEDLLOVERRIDES="blabla=n,b" | ##export WINEDLLOVERRIDES="blabla=n,b" | ||||||
| ##export PW_DLL_INSTALL="vcrun2019 vcrun6"        # Install DDL in port prefix (used winetricks)  | ##export PW_DLL_INSTALL="vcrun2019 "        # Install DDL in port prefix (used winetricks)  | ||||||
| ##export PW_LOG=0                                 # Enable debug mode fo terminal  | ##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_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||||
| ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ||||||
| ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 | ##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_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -28,5 +28,5 @@ | |||||||
| ##export VKD3D_CONFIG=force_bindless_texel_buffer | ##export VKD3D_CONFIG=force_bindless_texel_buffer | ||||||
| ##export PW_WINDOWS_VER=10                      # Set windows version 10, 7 or XP | ##export PW_WINDOWS_VER=10                      # Set windows version 10, 7 or XP | ||||||
| ##export PW_VIRTUAL_DESKTOP=1 | ##export PW_VIRTUAL_DESKTOP=1 | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
| ##export DXVK_HUD=fps,devinfo | ##export DXVK_HUD=fps,devinfo | ||||||
|   | |||||||
| @@ -10,19 +10,23 @@ | |||||||
| ##export WINEDLLOVERRIDES="blabla=n,b" | ##export WINEDLLOVERRIDES="blabla=n,b" | ||||||
| ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options | ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options | ||||||
|  |  | ||||||
| ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ##export PW_WINE_USE=proton_ge                    # proton_steam or proton_ge | ||||||
|  | ##export PW_VULKAN_USE=vkd3d                      # dxvk, vkd3d or 0 for OpenGL | ||||||
| ##export PW_DXR_ON=1 | ##export PW_DXR_ON=1 | ||||||
| ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_OLD_GL_STRING=1 | ##export PW_OLD_GL_STRING=1 | ||||||
| ##export PW_HIDE_NVIDIA_GPU=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_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ||||||
| ##export PW_VIRTUAL_DESKTOP=1 | ##export PW_VIRTUAL_DESKTOP=1 | ||||||
| ##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue | ##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue | ||||||
|  |  | ||||||
| ##export ENABLE_VKBASALT=1 | ##export ENABLE_VKBASALT=1 | ||||||
|  | ##export PW_VKBASALT_EFFECTS="FakeHDR:cas"        # Use Reshade in others games (dx9-12 to vulkan only) | ||||||
|  | ##export PW_VKBASALT_FFX_CAS="0.75"               # FidelityFX Contrast Adaptive Sharpening (min 0 - max 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_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||||
| ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ##export PW_NO_ESYNC=0                            # Do not use eventfd-based in-process synchronization primitives | ||||||
|  |  | ||||||
| ##export PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games | ##export PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games | ||||||
|  |  | ||||||
| @@ -37,6 +41,4 @@ | |||||||
| ##export PW_USE_TERMINAL=1                        # Force run in terminal | ##export PW_USE_TERMINAL=1                        # Force run in terminal | ||||||
| ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI | ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI | ||||||
|  |  | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|  |  | ||||||
| export PW_DLL_INSTALL="vcrun2019 vcrun6 vcrun6sp6 mfc42 d3dcompiler_42 d3dcompiler_43 d3dcompiler_47 d3dx9" |  | ||||||
| @@ -15,7 +15,7 @@ export PW_DLL_INSTALL="d3dx9 d3dcompiler_43"        # Install DDL in port prefix | |||||||
| ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 | ##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_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -34,4 +34,4 @@ export PW_DLL_INSTALL="d3dx9 d3dcompiler_43"        # Install DDL in port prefix | |||||||
| ##export PW_DXGI_FROM_DXVK=0 | ##export PW_DXGI_FROM_DXVK=0 | ||||||
| ##export WINEARCH=win32                           # defaut = win64 | ##export WINEARCH=win32                           # defaut = win64 | ||||||
| ##export WINEPREFIX= | ##export WINEPREFIX= | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -5,24 +5,13 @@ | |||||||
| #Rating=5 | #Rating=5 | ||||||
| #####################examples########################### | #####################examples########################### | ||||||
| ##export PW_COMMENT_DB="blablabla" | ##export PW_COMMENT_DB="blablabla" | ||||||
|  | export PW_WINE_USE=proton_ge | ||||||
| export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP | export PW_VULKAN_USE=dxvk | ||||||
| export PW_DLL_INSTALL="vcrun2017 d3dcompiler_47"               # Install DDL in port prefix (used winetricks)  | export PW_WINDOWS_VER=7                        # Set windows version 10, 7 or XP | ||||||
|  | export PW_DLL_INSTALL="vcrun2019 d3dcompiler_47"               # Install DDL in port prefix (used winetricks)  | ||||||
| export WINEDLLOVERRIDES="concrt140,msvcp140,msvcp140_1,msvcp140_2,d3dcompiler_47=n" | export WINEDLLOVERRIDES="concrt140,msvcp140,msvcp140_1,msvcp140_2,d3dcompiler_47=n" | ||||||
| ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options |  | ||||||
|  |  | ||||||
| ##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=0 |  | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 |  | ||||||
| ##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 |  | ||||||
| ##export PW_DXGI_FROM_DXVK=0 |  | ||||||
| ##export PW_VIRTUAL_DESKTOP=1 |  | ||||||
| ##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue |  | ||||||
| ##export ENABLE_VKBASALT=1 | ##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_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||||
| @@ -43,4 +32,4 @@ export WINEDLLOVERRIDES="concrt140,msvcp140,msvcp140_1,msvcp140_2,d3dcompiler_47 | |||||||
| ##export PW_LOG=0                                 # Enable debug mode fo terminal  | ##export PW_LOG=0                                 # Enable debug mode fo terminal  | ||||||
| ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ||||||
|  |  | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
							
								
								
									
										27
									
								
								data_from_portwine/scripts/portwine_db/gfclient
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,27 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | #Author: xuser | ||||||
|  | #gfclient.exe | ||||||
|  | #Rating=1-5 | ||||||
|  | #####################examples########################### | ||||||
|  | export PW_COMMENT_DB="GameForge\nClient" | ||||||
|  | export PW_VULKAN_USE=dxvk | ||||||
|  | export PW_WINE_USE=proton_ge | ||||||
|  | export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP | ||||||
|  | export PW_DLL_INSTALL="vcrun2019 d3dcompiler_43 d3dcompiler_47"               # Install DDL in port prefix (used winetricks)  | ||||||
|  | export WINEDLLOVERRIDES="gfclient0_msvc140=n;ucrtbase=b" | ||||||
|  | ######################################################## | ||||||
|  | #add_in_start_portwine () { | ||||||
|  | # | ||||||
|  | #while true; do | ||||||
|  | #    if  [ -z "`pgrep GameforgeClient`" ]; then  | ||||||
|  | #        sleep 1 | ||||||
|  | #    else | ||||||
|  | #        while [ ! -z "`pgrep GameforgeClient`" ] ; do | ||||||
|  | #                killall -s KILL gfservice.exe | ||||||
|  | #        done | ||||||
|  | #            sleep 1 | ||||||
|  | #            killall -s KILL gfclient.exe | ||||||
|  | #            break & exit 0 | ||||||
|  | #    fi | ||||||
|  | #done & | ||||||
|  | #} | ||||||
| @@ -13,14 +13,14 @@ | |||||||
| ##export PW_DXVK_VER=1.8.1  | ##export PW_DXVK_VER=1.8.1  | ||||||
| ##export PW_VKD3D_VER=2.2 | ##export PW_VKD3D_VER=2.2 | ||||||
| ##export WINEDLLOVERRIDES="blabla=n,b" | ##export WINEDLLOVERRIDES="blabla=n,b" | ||||||
| ##export PW_DLL_INSTALL="vcrun2019 vcrun6"        # Install DDL in port prefix (used winetricks)  | ##export PW_DLL_INSTALL="vcrun2019 "        # Install DDL in port prefix (used winetricks)  | ||||||
| ##export PW_LOG=0                                 # Enable debug mode fo terminal  | ##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_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||||
| ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ||||||
| ##export PW_DXVK_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_DXVK_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 | ##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_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -39,4 +39,4 @@ | |||||||
| ##export PW_DXGI_FROM_DXVK=0 | ##export PW_DXGI_FROM_DXVK=0 | ||||||
| ##export WINEARCH=win32                           # defaut = win64 | ##export WINEARCH=win32                           # defaut = win64 | ||||||
| ##export WINEPREFIX= | ##export WINEPREFIX= | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -20,7 +20,7 @@ | |||||||
| ##export PW_VKD3D_VER=2.2 | ##export PW_VKD3D_VER=2.2 | ||||||
| ##export PW_DXR_ON=1 | ##export PW_DXR_ON=1 | ||||||
| ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| ##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ||||||
| @@ -41,4 +41,4 @@ | |||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_LOG=0                                 # Enable debug mode fo terminal  | ##export PW_LOG=0                                 # Enable debug mode fo terminal  | ||||||
| ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -11,7 +11,7 @@ export PW_VULKAN_USE=0 | |||||||
| export LAUNCH_PARAMETERS="" | export LAUNCH_PARAMETERS="" | ||||||
| export MESA_EXTENSION_MAX_YEAR=2002 | export MESA_EXTENSION_MAX_YEAR=2002 | ||||||
| export __GL_ExtensionStringVersion=17700 | export __GL_ExtensionStringVersion=17700 | ||||||
| ADD_IN_START_PORTWINE () | add_in_start_portwine () | ||||||
| { | { | ||||||
| if [ ! -e "$PATH_TO_GAME/0_Proton_PW_MoHAA" ] ; then | if [ ! -e "$PATH_TO_GAME/0_Proton_PW_MoHAA" ] ; then | ||||||
|     touch "$PATH_TO_GAME/0_Proton_PW_MoHAA" && mv "$PATH_TO_GAME/main/newconfig.cfg" "$PATH_TO_GAME/main/newconfig.cfg.bak" && mv "$PATH_TO_GAME/main/configs/unnamedsoldier.cfg" "$PATH_TO_GAME/main/configs/unnamedsoldier.cfg.bak" && mv "$PATH_TO_GAME/mainta/newconfig.cfg" "$PATH_TO_GAME/mainta/newconfig.cfg.bak" && mv "$PATH_TO_GAME/mainta/configs/unnamedsoldier.cfg" "$PATH_TO_GAME/mainta/configs/unnamedsoldier.cfg.bak" && mv "$PATH_TO_GAME/maintt/newconfig.cfg" "$PATH_TO_GAME/maintt/newconfig.cfg.bak" && mv "$PATH_TO_GAME/maintt/configs/unnamedsoldier.cfg" "$PATH_TO_GAME/maintt/configs/unnamedsoldier.cfg.bak" && |     touch "$PATH_TO_GAME/0_Proton_PW_MoHAA" && mv "$PATH_TO_GAME/main/newconfig.cfg" "$PATH_TO_GAME/main/newconfig.cfg.bak" && mv "$PATH_TO_GAME/main/configs/unnamedsoldier.cfg" "$PATH_TO_GAME/main/configs/unnamedsoldier.cfg.bak" && mv "$PATH_TO_GAME/mainta/newconfig.cfg" "$PATH_TO_GAME/mainta/newconfig.cfg.bak" && mv "$PATH_TO_GAME/mainta/configs/unnamedsoldier.cfg" "$PATH_TO_GAME/mainta/configs/unnamedsoldier.cfg.bak" && mv "$PATH_TO_GAME/maintt/newconfig.cfg" "$PATH_TO_GAME/maintt/newconfig.cfg.bak" && mv "$PATH_TO_GAME/maintt/configs/unnamedsoldier.cfg" "$PATH_TO_GAME/maintt/configs/unnamedsoldier.cfg.bak" && | ||||||
|   | |||||||
							
								
								
									
										35
									
								
								data_from_portwine/scripts/portwine_db/osu
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,35 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | #Author: xuser | ||||||
|  | #osu!.exe | ||||||
|  | #osu!install.exe | ||||||
|  | #Rating=1-5 | ||||||
|  | ######################################################## | ||||||
|  | export PW_VULKAN_USE=0 | ||||||
|  | export WINEPREFIX="${PORT_WINE_PATH}/data/pfx_dotnet" | ||||||
|  | export PW_DLL_INSTALL="dotnet40" | ||||||
|  | export PW_COMMENT_DB="OSU!" | ||||||
|  | #####################examples########################### | ||||||
|  | ##export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP | ||||||
|  | ##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_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_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 PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG | ||||||
|  | ##export PW_USE_TERMINAL=1                        # Force run in terminal | ||||||
|  | ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI  | ||||||
|  | ##add_in_start_portwine () { commands ; } | ||||||
| @@ -12,7 +12,7 @@ export PW_DLL_INSTALL="physx d3dx9"        # Install DDL in port prefix (used wi | |||||||
| ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 | ##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_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -26,4 +26,4 @@ export PW_DLL_INSTALL="physx d3dx9"        # Install DDL in port prefix (used wi | |||||||
| ##export VKD3D_CONFIG=force_bindless_texel_buffer | ##export VKD3D_CONFIG=force_bindless_texel_buffer | ||||||
| ##export PW_WINDOWS_VER=10                      # Set windows version 10, 7 or XP | ##export PW_WINDOWS_VER=10                      # Set windows version 10, 7 or XP | ||||||
| #export PW_VIRTUAL_DESKTOP=1 | #export PW_VIRTUAL_DESKTOP=1 | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -13,14 +13,14 @@ | |||||||
| ##export PW_DXVK_VER=1.8.1  | ##export PW_DXVK_VER=1.8.1  | ||||||
| ##export PW_VKD3D_VER=2.2 | ##export PW_VKD3D_VER=2.2 | ||||||
| ##export WINEDLLOVERRIDES="blabla=n,b" | ##export WINEDLLOVERRIDES="blabla=n,b" | ||||||
| ##export PW_DLL_INSTALL="vcrun2019 vcrun6"        # Install DDL in port prefix (used winetricks)  | ##export PW_DLL_INSTALL="vcrun2019 "        # Install DDL in port prefix (used winetricks)  | ||||||
| ##export PW_LOG=0                                 # Enable debug mode fo terminal  | ##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_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||||
| ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ||||||
| ##export PW_DXVK_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_DXVK_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 | ##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_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -39,4 +39,4 @@ | |||||||
| ##export PW_DXGI_FROM_DXVK=0 | ##export PW_DXGI_FROM_DXVK=0 | ||||||
| ##export WINEARCH=win32                           # defaut = win64 | ##export WINEARCH=win32                           # defaut = win64 | ||||||
| ##export WINEPREFIX= | ##export WINEPREFIX= | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
| @@ -8,6 +8,7 @@ | |||||||
| #export PW_COMMENT_DB="blablabla" | #export PW_COMMENT_DB="blablabla" | ||||||
| ################################################ | ################################################ | ||||||
| export PW_VULKAN_USE=0 #dxvk or vkd3d | export PW_VULKAN_USE=0 #dxvk or vkd3d | ||||||
|  | export PW_WINE_USE=proton_steam | ||||||
| #export WINEDLLOVERRIDES="blabla=n,b" | #export WINEDLLOVERRIDES="blabla=n,b" | ||||||
| #export PW_LOG=0             # Enable debug mode fo terminal | #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_FSYNC=1        # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||||
| @@ -15,16 +16,16 @@ export PW_NO_ESYNC=1        # Do not use eventfd-based in-process synchronizatio | |||||||
| #export PW_VULKAN_NO_ASYNC=1 | #export PW_VULKAN_NO_ASYNC=1 | ||||||
| #export PW_USE_TERMINAL=0 | #export PW_USE_TERMINAL=0 | ||||||
| #export PW_OLD_GL_STRING=0 | #export PW_OLD_GL_STRING=0 | ||||||
| #export PW_NVAPI_DISABLE=1 | #export PW_USE_NVAPI=0 | ||||||
| #export PW_VKD3D_FEATURE_LEVEL=0 | #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_NO_WRITE_WATCH=0          # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| #export PW_HIDE_NVIDIA_GPU=0 | #export PW_HIDE_NVIDIA_GPU=0 | ||||||
| #export PW_FORCE_USE_VSYNC=2         # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | #export PW_FORCE_USE_VSYNC=2         # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ||||||
| export PW_WINEDBG_DISABLE=1 | export PW_WINEDBG_DISABLE=1 | ||||||
| export PW_USE_GAMEMODE=1             # Force disabele gamemod | export PW_USE_GAMEMODE=0             # 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 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 PULSE_LATENCY_MSEC=60 | ||||||
| export PW_DLL_INSTALL="vcrun6 mfc42 vcrun6sp6 mfc120 vcrun2013" | export PW_DLL_INSTALL="mfc42 vcrun2012 mfc120 vcrun2013" | ||||||
| #export LAUNCH_PARAMETERS="-d3d9" | #export LAUNCH_PARAMETERS="-d3d9" | ||||||
| export PW_GUI_DISABLED_CS=1 | export PW_GUI_DISABLED_CS=1 | ||||||
| #export PW_WINDOWS_VER=XP                      # Set windows version 10, 7 or XP | #export PW_WINDOWS_VER=XP                      # Set windows version 10, 7 or XP | ||||||
| @@ -1,8 +1,12 @@ | |||||||
| #!/bin/bash | #!/bin/bash | ||||||
| #Author: MrM0der | #Author: Cefeiko | ||||||
| #steam.exe | #steam.exe | ||||||
| #Rating=5 | #Rating=5 | ||||||
| ################################################ | ################################################ | ||||||
| export LAUNCH_PARAMETERS="" | export PW_COMMENT_DB="Steam" | ||||||
| export WINEDLLOVERRIDES="libglesv2=" | export PW_WINDOWS_VER=7                        # Set windows version 10, 7 or XP | ||||||
| export LAUNCH_PARAMETERS"-no-cef-sandbox" | export PW_DLL_INSTALL="vcrun2019 d3dcompiler_46" | ||||||
|  | export WINEDLLOVERRIDES="libglesv2,lsteamclient=" | ||||||
|  | export LAUNCH_PARAMETERS="-no-cef-sandbox" | ||||||
|  | export PW_VULKAN_USE=dxvk | ||||||
|  | export PW_WINE_USE=proton_ge | ||||||
|   | |||||||
							
								
								
									
										32
									
								
								data_from_portwine/scripts/portwine_db/trine
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,32 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | #Author: xuser | ||||||
|  | #trine.exe | ||||||
|  | #Rating=1-5 | ||||||
|  | #####################examples########################### | ||||||
|  | ##export PW_COMMENT_DB="blablabla" | ||||||
|  | ##export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP | ||||||
|  | export PW_DLL_INSTALL="physx"               # 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_USE_NVAPI=0 | ||||||
|  | ##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_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=0                            # Do not use eventfd-based in-process synchronization primitives | ||||||
|  | ##export PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games | ||||||
|  | ##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_GUI_DISABLED_CS=1                     # 1 = disabled GUI | ||||||
|  | ##ADD_IN_START_PORTWINE () { commands ; } | ||||||
| @@ -9,8 +9,8 @@ export PW_COMMENT_DB="Wargaming Game Center" | |||||||
| export LAUNCH_PARAMETERS="--disable-gpu"            # Additional launch options | export LAUNCH_PARAMETERS="--disable-gpu"            # Additional launch options | ||||||
| #export PW_USE_TERMINAL=1 | #export PW_USE_TERMINAL=1 | ||||||
| export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP | export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP | ||||||
| #export PW_NVAPI_DISABLE=1 | #export PW_USE_NVAPI=0 | ||||||
| #export WINEDLLOVERRIDES="ucrtbase,xaudio2_7,xaudio2_8=n" | export WINEDLLOVERRIDES="ucrtbase,xaudio2_7,xaudio2_8=n,b" | ||||||
| export PW_DLL_INSTALL="lucida"     # Install DDL in port prefix (used winetricks)  | export PW_DLL_INSTALL="lucida vcrun2019"     # Install DDL in port prefix (used winetricks) | ||||||
| ##export PW_GUI_DISABLED_CS=1 | ##export PW_GUI_DISABLED_CS=1 | ||||||
| ##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG | ##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG | ||||||
|   | |||||||
							
								
								
									
										37
									
								
								data_from_portwine/scripts/portwine_db/witcher3
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,37 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | #Author: xuser | ||||||
|  | #witcher3.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=0 | ||||||
|  | export PW_VULKAN_NO_ASYNC=0 | ||||||
|  | ##export PW_NVAPI_DISABLE=1 | ||||||
|  | export PW_OLD_GL_STRING=0 | ||||||
|  | export PW_HIDE_NVIDIA_GPU=0 | ||||||
|  | export PW_FORCE_USE_VSYNC=0 | ||||||
|  | export PW_VIRTUAL_DESKTOP=0 | ||||||
|  | ##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue | ||||||
|  | export ENABLE_VKBASALT=1 | ||||||
|  | export PW_VKBASALT_FFX_CAS="0.5" | ||||||
|  | export PW_NO_FSYNC=0 | ||||||
|  | export PW_NO_ESYNC=1 | ||||||
|  | ##export PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games | ||||||
|  | export PW_NO_WRITE_WATCH=0 | ||||||
|  | export PW_HEAP_DELAY_FREE=0 | ||||||
|  | export PW_WINE_ALLOW_XIM=0 | ||||||
|  | ##export WINEARCH=win32                           # defaut = win64 | ||||||
|  | ##export WINEPREFIX= | ||||||
|  | export PW_WINEDBG_DISABLE=0 | ||||||
|  | export PW_USE_TERMINAL=0 | ||||||
|  | ##ADD_IN_START_PORTWINE () { commands ; } | ||||||
|  | export PW_WINE_USE=proton_ge | ||||||
|  | export PW_USE_NVAPI=0 | ||||||
|  | export PW_GUI_DISABLED_CS=0 | ||||||
| @@ -6,7 +6,7 @@ | |||||||
|     export PW_VULKAN_USE=dxvk |     export PW_VULKAN_USE=dxvk | ||||||
|     export PW_USE_TERMINAL=1 |     export PW_USE_TERMINAL=1 | ||||||
|     export WINEPREFIX="${PORT_WINE_PATH}/data/pfx_dotnet" |     export WINEPREFIX="${PORT_WINE_PATH}/data/pfx_dotnet" | ||||||
|     export PW_DLL_INSTALL="dotnet40 vcrun2017 vcrun6 mfc42 vb6run physx" |     export PW_DLL_INSTALL="dotnet40 vcrun2017  mfc42 vb6run physx" | ||||||
|     export PW_COMMENT_DB="World Of Tanks EnCore Installer" |     export PW_COMMENT_DB="World Of Tanks EnCore Installer" | ||||||
|     ## export DXVK_HUD=fps,devinfo |     ## export DXVK_HUD=fps,devinfo | ||||||
|     ## export PW_MANGOHUD=1 |     ## export PW_MANGOHUD=1 | ||||||
| @@ -38,4 +38,3 @@ PW_INSTALL_DOTNET40 () { | |||||||
|     done |     done | ||||||
| } | } | ||||||
| PW_INSTALL_DOTNET40 & | PW_INSTALL_DOTNET40 & | ||||||
|  |  | ||||||
|   | |||||||
| @@ -8,14 +8,14 @@ export PW_DLL_INSTALL="vcrun2013 vcrun2017 dotnet472" | |||||||
| #####################examples########################### | #####################examples########################### | ||||||
| ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ||||||
| ##export WINEDLLOVERRIDES="blabla=n,b" | ##export WINEDLLOVERRIDES="blabla=n,b" | ||||||
| ##export PW_DLL_INSTALL="vcrun2019 vcrun6"        # Install DDL in port prefix (used winetricks)  | ##export PW_DLL_INSTALL="vcrun2019 "        # Install DDL in port prefix (used winetricks)  | ||||||
| ##export PW_LOG=0                                 # Enable debug mode fo terminal  | ##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_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||||
| ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ##export PW_NO_ESYNC=1                            # Do not use eventfd-based in-process synchronization primitives | ||||||
| ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN | ||||||
| ##export PW_USE_TERMINAL=0                        # Force run in terminal | ##export PW_USE_TERMINAL=0                        # Force run in terminal | ||||||
| ##export PW_OLD_GL_STRING=0 | ##export PW_OLD_GL_STRING=0 | ||||||
| ##export PW_NVAPI_DISABLE=1 | ##export PW_USE_NVAPI=0 | ||||||
| ##export PW_VKD3D_FEATURE_LEVEL=0 | ##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_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||||
| ##export PW_HIDE_NVIDIA_GPU=0 | ##export PW_HIDE_NVIDIA_GPU=0 | ||||||
| @@ -29,4 +29,4 @@ export PW_DLL_INSTALL="vcrun2013 vcrun2017 dotnet472" | |||||||
| ##export VKD3D_CONFIG=force_bindless_texel_buffer | ##export VKD3D_CONFIG=force_bindless_texel_buffer | ||||||
| ##export PW_WINDOWS_VER=10                      # Set windows version 10, 7 or XP | ##export PW_WINDOWS_VER=10                      # Set windows version 10, 7 or XP | ||||||
| ##export PW_VIRTUAL_DESKTOP=1 | ##export PW_VIRTUAL_DESKTOP=1 | ||||||
| ##ADD_IN_START_PORTWINE () { commands ; } | ##add_in_start_portwine () { commands ; } | ||||||
|   | |||||||
							
								
								
									
										18
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_ANKAMA
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,18 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | # Author: chal55rus (Sergey P.) | ||||||
|  | ######################################################################## | ||||||
|  | export LAUNCH_PARAMETERS=("/S") | ||||||
|  | export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Ankama Launcher-Setup.exe" | ||||||
|  | start_portwine | ||||||
|  | if try_download "https://launcher.cdn.ankama.com/installers/production/Ankama%20Launcher-Setup.exe" "${PW_AUTOINSTALL_EXE}" | ||||||
|  | then | ||||||
|  |     pw_start_progress_bar_block "Installing the Ankama Launcher. Please wait..." | ||||||
|  |     pw_run "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     portwine_exe="$WINEPREFIX/drive_c/Program Files/Ankama/Ankama Launcher/Ankama Launcher.exe" | ||||||
|  |     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     kill_portwine | ||||||
|  |     pw_stop_progress_bar | ||||||
|  |     export PORTWINE_CREATE_SHORTCUT_NAME="AnkamaLauncher" | ||||||
|  |     portwine_create_shortcut | ||||||
|  | fi | ||||||
|  | stop_portwine | ||||||
							
								
								
									
										17
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_BATTLE_NET
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,17 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | # Author: Castro-Fidel (PortWINE-Linux.ru) | ||||||
|  | ######################################################################## | ||||||
|  | [ "${update_loc}" = "RUS" ] && export BN_LOC=ruRU || export BN_LOC=enUS | ||||||
|  | export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Battle.net-Setup-${BN_LOC}.exe" | ||||||
|  | start_portwine | ||||||
|  | if try_download "http://dist.blizzard.com/downloads/bna-installers/322d5bb9ae0318de3d4cde7641c96425/retail.1/Battle.net-Setup-${BN_LOC}.exe" "${PW_AUTOINSTALL_EXE}" | ||||||
|  | then | ||||||
|  |     PW_START_PROGRESS_BAR "Installing the Battle Net. Please wait..." | ||||||
|  |     pw_kill_autostart Battle.net.exe & | ||||||
|  |     pw_run "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     portwine_exe=`find "$WINEPREFIX/drive_c/" -type f -name "Battle.net.exe"` | ||||||
|  |     PW_STOP_PROGRESS | ||||||
|  |     portwine_create_shortcut | ||||||
|  |     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||||
|  | fi | ||||||
|  | stop_portwine | ||||||
							
								
								
									
										19
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_BETHESDA
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,19 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | # Author: chal55rus (Sergey P.) | ||||||
|  | ######################################################################## | ||||||
|  | export LAUNCH_PARAMETERS=("/VERYSILENT" ) | ||||||
|  | export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/BethesdaNetLauncher_Setup.exe" | ||||||
|  | start_portwine | ||||||
|  | if try_download "https://download.cdp.bethesda.net/BethesdaNetLauncher_Setup.exe" "${PW_AUTOINSTALL_EXE}" | ||||||
|  | then | ||||||
|  |     pw_start_progress_bar_block "Installing the BethesdaNetLauncher. Please wait..." | ||||||
|  |     pw_kill_autostart BethesdaNetLauncher.exe & | ||||||
|  |     pw_run "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/Bethesda.net Launcher/BethesdaNetLauncher.exe" | ||||||
|  |     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     kill_portwine | ||||||
|  |     pw_stop_progress_bar | ||||||
|  |     export PORTWINE_CREATE_SHORTCUT_NAME="Bethesda.net" | ||||||
|  |     portwine_create_shortcut | ||||||
|  | fi | ||||||
|  | stop_portwine | ||||||
							
								
								
									
										26
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_EPIC
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,26 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | # Author: Castro-Fidel (PortWINE-Linux.ru) | ||||||
|  | ######################################################################## | ||||||
|  | export LAUNCH_PARAMETERS=("/q" ) | ||||||
|  | export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/EpicGamesLauncherInstaller.msi" | ||||||
|  | start_portwine | ||||||
|  | if try_download "https://launcher-public-service-prod06.ol.epicgames.com/launcher/api/installer/download/EpicGamesLauncherInstaller.msi" "${PW_AUTOINSTALL_EXE}" | ||||||
|  | then | ||||||
|  |     pw_start_progress_bar_block "Installing Epic Games Launcher. Please wait..." | ||||||
|  |     pw_kill_autostart EpicGamesLauncher.exe & | ||||||
|  |     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` ] || [ ! -z `pgrep -a wrap | grep ${portname} | 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 | ||||||
|  |     fi | ||||||
|  |     portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/Epic Games/Launcher/Portal/Binaries/Win32/EpicGamesLauncher.exe" | ||||||
|  |     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     kill_portwine | ||||||
|  |     pw_stop_progress_bar | ||||||
|  |     portwine_create_shortcut | ||||||
|  | fi | ||||||
|  | stop_portwine | ||||||
							
								
								
									
										22
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_EVE
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,22 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | # Author: cefeiko | ||||||
|  | ######################################################################## | ||||||
|  | export PW_WINDOWS_VER=10 | ||||||
|  | export PW_DLL_INSTALL="vcrun2017" | ||||||
|  | export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/EveLauncher-1892908.exe" | ||||||
|  | start_portwine | ||||||
|  | if try_download "https://binaries.eveonline.com/EveLauncher-1892908.exe" "${PW_AUTOINSTALL_EXE}" | ||||||
|  | then | ||||||
|  |     pw_start_progress_bar_block "Installing the EVE Launcher. Please wait..." | ||||||
|  |     if [ ! -f "$WINEPREFIX/drive_c/Games/EVE Online/Launcher/evelauncher.exe" ] ; then | ||||||
|  |         try_remove_dir "$WINEPREFIX/drive_c/Games/EVE Online" | ||||||
|  |         dd if="${PW_AUTOINSTALL_EXE}" of="${PW_AUTOINSTALL_EXE}".7z bs=1M skip=31646603 count=196171208 iflag=skip_bytes,count_bytes | ||||||
|  |         "$pw_7z" x "${PW_AUTOINSTALL_EXE}".7z -o"$WINEPREFIX/drive_c/Games/EVE Online" | ||||||
|  |         try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||||
|  |         try_remove_file "${PW_AUTOINSTALL_EXE}".7z | ||||||
|  |     fi | ||||||
|  |     portwine_exe="$WINEPREFIX/drive_c/Games/EVE Online/Launcher/evelauncher.exe" | ||||||
|  |     pw_stop_progress_bar | ||||||
|  |     portwine_create_shortcut | ||||||
|  | fi | ||||||
|  | stop_portwine | ||||||
							
								
								
									
										37
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_GAMEFORGE
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,37 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | # Author: chal55rus (Sergey P.), cefeiko, Castro-Fidel (PortWINE-Linux.ru) | ||||||
|  | ########################################################################## | ||||||
|  | pw_shutdown_please () { | ||||||
|  |     if [ "$PW_USE_RUNTIME" != 1 ] | ||||||
|  |     then echo "PW_USE_RUNTIME: `echo $PW_USE_RUNTIME`" | ||||||
|  |     else | ||||||
|  |         sleep 10 | ||||||
|  |         while true ; do | ||||||
|  |             if  [ -z "`ps aux | grep -v grep | grep -wm 1 "$1" | awk '{print $2}'`" ] && [ ! -z "`pgrep wrap | head -n 1`" ]; then | ||||||
|  |                 echo -e "PID "$1" not found" | ||||||
|  |                 sleep 1 | ||||||
|  |             else | ||||||
|  |                 killall -s TERM gfclient.exe | ||||||
|  |                 killall -s TERM GameforgeInstaller.exe | ||||||
|  |                 break | ||||||
|  |             fi | ||||||
|  |         done | ||||||
|  |     fi | ||||||
|  | } | ||||||
|  |  | ||||||
|  | export LAUNCH_PARAMETERS=("") | ||||||
|  | export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/GameforgeInstaller.exe" | ||||||
|  | start_portwine | ||||||
|  | if try_download "https://raw.githubusercontent.com/WarfaceZ/lutris-clients/master/GameforgeInstaller.exe" "${PW_AUTOINSTALL_EXE}" | ||||||
|  | then | ||||||
|  |     pw_start_progress_bar_block "Gameforge-Client. Please wait..." | ||||||
|  |     pw_shutdown_please SparkWebHelper.exe & | ||||||
|  |     pw_run "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/GameforgeClient/gfclient.exe" | ||||||
|  |     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     kill_portwine | ||||||
|  |     pw_stop_progress_bar | ||||||
|  |     export PORTWINE_CREATE_SHORTCUT_NAME="GameforgeClient" | ||||||
|  |     portwine_create_shortcut | ||||||
|  | fi | ||||||
|  | stop_portwine | ||||||
							
								
								
									
										19
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_GLYPH
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,19 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | # Author: chal55rus (Sergey P.) | ||||||
|  | ######################################################################## | ||||||
|  | export LAUNCH_PARAMETERS=("/S" ) | ||||||
|  | export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/GlyphInstall.exe" | ||||||
|  | start_portwine | ||||||
|  | if try_download "http://download.dyn.triongames.com/GlyphInstall.exe" "${PW_AUTOINSTALL_EXE}" | ||||||
|  | then | ||||||
|  |     pw_start_progress_bar_block "Installing the GlyphClient. Please wait..." | ||||||
|  |     pw_kill_autostart GlyphClient.exe & | ||||||
|  |     pw_run "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/Glyph/GlyphClient.exe" | ||||||
|  |     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     kill_portwine | ||||||
|  |     pw_stop_progress_bar | ||||||
|  |     export PORTWINE_CREATE_SHORTCUT_NAME="GlyphClient" | ||||||
|  |     portwine_create_shortcut | ||||||
|  | fi | ||||||
|  | stop_portwine | ||||||
							
								
								
									
										18
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_GOG
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,18 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | # Author: Castro-Fidel (PortWINE-Linux.ru) | ||||||
|  | ######################################################################## | ||||||
|  | export LAUNCH_PARAMETERS=("/VERYSILENT") | ||||||
|  | export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/setup_galaxy_2.0.41.150.exe" | ||||||
|  | start_portwine | ||||||
|  | if try_download "https://content-system.gog.com/open_link/download?path=/open/galaxy/client/2.0.41.150/setup_galaxy_2.0.41.150.exe" "${PW_AUTOINSTALL_EXE}" | ||||||
|  | then | ||||||
|  |     pw_start_progress_bar_block "Installing the GOG Galaxy. Please wait..." | ||||||
|  |     pw_kill_autostart GalaxyClient.* & | ||||||
|  |     pw_run "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/GOG Galaxy/GalaxyClient.exe" | ||||||
|  |     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     kill_portwine | ||||||
|  |     pw_stop_progress_bar | ||||||
|  |     portwine_create_shortcut | ||||||
|  | fi | ||||||
|  | stop_portwine | ||||||
							
								
								
									
										19
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_MYGAMES
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,19 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | # Author: chal55rus (Sergey P.) | ||||||
|  | ######################################################################## | ||||||
|  | export LAUNCH_PARAMETERS=("") | ||||||
|  | export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/MyGamesLoader.exe" | ||||||
|  | start_portwine | ||||||
|  | if try_download "https://static.gc.my.games/MyGamesLoader.exe" "${PW_AUTOINSTALL_EXE}" | ||||||
|  | then | ||||||
|  |     pw_start_progress_bar_block "Installing the My.Games. Please wait..." | ||||||
|  |     pw_kill_autostart GameCenter.exe & | ||||||
|  |     pw_run "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     portwine_exe="$WINEPREFIX/drive_c/users/steamuser/AppData/Local/GameCenter/GameCenter.exe" | ||||||
|  |     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     kill_portwine | ||||||
|  |     pw_stop_progress_bar | ||||||
|  |     export PORTWINE_CREATE_SHORTCUT_NAME="MY.GAMES" | ||||||
|  |     portwine_create_shortcut | ||||||
|  | fi | ||||||
|  | stop_portwine | ||||||
							
								
								
									
										18
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_ORIGIN
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,18 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | # Author: Castro-Fidel (PortWINE-Linux.ru) | ||||||
|  | ######################################################################## | ||||||
|  | export LAUNCH_PARAMETERS=("/silent" ) | ||||||
|  | export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/OriginSetup.exe" | ||||||
|  | start_portwine | ||||||
|  | if try_download "https://download.dm.origin.com/origin/live/OriginSetup.exe" "${PW_AUTOINSTALL_EXE}" | ||||||
|  | then | ||||||
|  |     pw_start_progress_bar_block "Installing the Origin. Please wait..." | ||||||
|  |     pw_kill_autostart Origin.exe & | ||||||
|  |     pw_run "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/Origin/Origin.exe" | ||||||
|  |     pw_stop_progress_bar | ||||||
|  |     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     kill_portwine | ||||||
|  |     portwine_create_shortcut | ||||||
|  | fi | ||||||
|  | stop_portwine  | ||||||
							
								
								
									
										21
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_OSU
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,21 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | # Author: cefeiko | ||||||
|  | ######################################################################## | ||||||
|  | export WINEPREFIX="${PORT_WINE_PATH}/data/pfx_dotnet" | ||||||
|  | export PW_DLL_INSTALL="dotnet40" | ||||||
|  | mkdir -p "${WINEPREFIX}/drive_c/Program Files (x86)/OSU/" | ||||||
|  | export PW_AUTOINSTALL_EXE="${WINEPREFIX}/drive_c/Program Files (x86)/OSU/osu!.exe" | ||||||
|  | start_portwine | ||||||
|  | if try_download "https://m1.ppy.sh/r/osu!install.exe" "${PW_AUTOINSTALL_EXE}" | ||||||
|  | then | ||||||
|  |     pw_start_progress_bar_block "Installing the OSU!. Please wait..." | ||||||
|  |     if  [ -f "${PORT_WINE_PATH}/data/pfx_dotnet/drive_c/Program Files (x86)/OSU/osu!install.exe" ]; then | ||||||
|  |         mv -f  "${PORT_WINE_PATH}/data/pfx_dotnet/drive_c/Program Files (x86)/OSU/osu!install.exe" "${PORT_WINE_PATH}/data/pfx_dotnet/drive_c/Program Files (x86)/OSU/osu!.exe" | ||||||
|  |     fi | ||||||
|  |     portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/OSU/osu!.exe" | ||||||
|  |     portwine_create_shortcut | ||||||
|  |     pw_run "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     pw_stop_progress_bar | ||||||
|  |     kill_portwine | ||||||
|  | fi | ||||||
|  | stop_portwine | ||||||
							
								
								
									
										17
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_ROCKSTAR
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,17 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | # Author: chal55rus (Sergey P.) | ||||||
|  | ######################################################################## | ||||||
|  | export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Rockstar-Games-Launcher.exe" | ||||||
|  | start_portwine | ||||||
|  | if try_download "https://gamedownloads.rockstargames.com/public/installer/Rockstar-Games-Launcher.exe" "${PW_AUTOINSTALL_EXE}" | ||||||
|  | then | ||||||
|  |     pw_start_progress_bar_block "Rockstar-Games-Launcher. Please wait..." | ||||||
|  |     "$pw_7z" x -y "${PW_AUTOINSTALL_EXE}" -o"$WINEPREFIX/drive_c/Program Files/Rockstar Games/Launcher" | ||||||
|  |     portwine_exe="$WINEPREFIX/drive_c/Program Files/Rockstar Games/Launcher/Launcher.exe" | ||||||
|  |     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     kill_portwine | ||||||
|  |     pw_stop_progress_bar | ||||||
|  |     export PORTWINE_CREATE_SHORTCUT_NAME="Rockstar" | ||||||
|  |     portwine_create_shortcut | ||||||
|  | fi | ||||||
|  | stop_portwine | ||||||
							
								
								
									
										22
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_STEAM
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,22 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | # Author: Castro-Fidel (PortWINE-Linux.ru) | ||||||
|  | ######################################################################## | ||||||
|  | export LAUNCH_PARAMETERS=("/S" "/D=c:\Program Files (x86)\Steam") | ||||||
|  | export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/SteamSetup.exe" | ||||||
|  | start_portwine | ||||||
|  | if try_download "https://cdn.cloudflare.steamstatic.com/client/installer/SteamSetup.exe" "${PW_AUTOINSTALL_EXE}" | ||||||
|  | then | ||||||
|  |     pw_start_progress_bar_cs "Installing the Steam. Please wait..." | ||||||
|  |     pw_kill_autostart steam.exe & | ||||||
|  |     pw_run "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     if [ -f "$WINEPREFIX/drive_c/Program Files (x86)/Steam/Steam.exe" ] | ||||||
|  |     then mv -f "$WINEPREFIX/drive_c/Program Files (x86)/Steam/Steam.exe" "$WINEPREFIX/drive_c/Program Files (x86)/Steam/steam.exe" | ||||||
|  |     fi | ||||||
|  |     portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/Steam/steam.exe" | ||||||
|  |     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     kill_portwine | ||||||
|  |     pw_stop_progress_bar | ||||||
|  |     export PORTWINE_CREATE_SHORTCUT_NAME="STEAM_PP" | ||||||
|  |     portwine_create_shortcut | ||||||
|  | fi | ||||||
|  | stop_portwine | ||||||
							
								
								
									
										18
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_UBC
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,18 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | # Author: Castro-Fidel (PortWINE-Linux.ru) | ||||||
|  | ######################################################################## | ||||||
|  | export LAUNCH_PARAMETERS=("/S" "/D=c:\Program Files (x86)\Ubisoft Game Launcher") | ||||||
|  | export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/UbisoftConnectInstaller.exe" | ||||||
|  | start_portwine | ||||||
|  | if try_download "https://ubistatic3-a.akamaihd.net/orbit/launcher_installer/UbisoftConnectInstaller.exe" "${PW_AUTOINSTALL_EXE}" | ||||||
|  | then | ||||||
|  |     pw_start_progress_bar_cs "Installing the Ubisoft Connect. Please wait..." | ||||||
|  |     pw_kill_autostart UbisoftConnect.exe & | ||||||
|  |     pw_run "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/Ubisoft Game Launcher/UbisoftConnect.exe" | ||||||
|  |     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||||
|  |     kill_portwine | ||||||
|  |     pw_stop_progress_bar | ||||||
|  |     portwine_create_shortcut | ||||||
|  | fi | ||||||
|  | stop_portwine | ||||||
							
								
								
									
										19
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_WGC
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,19 @@ | |||||||
|  | #!/bin/bash | ||||||
|  | # Author: cefeiko | ||||||
|  | ######################################################################## | ||||||
|  | export LAUNCH_PARAMETERS=("/VERYSILENT") | ||||||
|  | [ "${update_loc}" = "RUS" ] && export WGC_LOC=RU || export WGC_LOC=EU | ||||||
|  | export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Wargaming_Game_Center_Install_WoT_${WGC_LOC}.exe" | ||||||
|  | start_portwine | ||||||
|  | if try_download "https://redirect.wargaming.net/WGC/Wargaming_Game_Center_Install_WoT_${WGC_LOC}.exe" "${PW_AUTOINSTALL_EXE}" | ||||||
|  | then | ||||||
|  |     pw_start_progress_bar_block "Starting WGC installation..." | ||||||
|  |     pw_kill_autostart wgc.exe & | ||||||
|  |     pw_run "${PW_AUTOINSTALL_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 | ||||||
|  | fi | ||||||
|  | stop_portwine | ||||||
| @@ -15,309 +15,57 @@ 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 |     xdg-open "http://portwine-linux.ru/portwine-faq/" > /dev/null 2>&1 & exit 0 | ||||||
| fi | fi | ||||||
| pw_ping_test () { | . "$(dirname $(readlink -f "$0"))/functions_helper" | ||||||
|     ping -w3 -c1 github.com &> /dev/null |  | ||||||
|     [ "$?" == "0" ] && return 0 || return 1 |  | ||||||
| } |  | ||||||
| print_error () { |  | ||||||
|     echo "ERROR: $@" |  | ||||||
| } |  | ||||||
| print_info () { |  | ||||||
|     echo "INFO: $@" |  | ||||||
| } |  | ||||||
| print_var () { |  | ||||||
|     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 |  | ||||||
|     elif [ -z "$2" ] ; then	print_error "no way to copy file $1" && return 1 |  | ||||||
|     else |  | ||||||
|         cp -f "$1" "$2" |  | ||||||
|         if [ "$?" != 0 ] |  | ||||||
|         then print_error "failed to copy file $1 to $2" || return 1 |  | ||||||
|         else print_info "copy file $1 to $2 was successful" || return 0 |  | ||||||
|         fi |  | ||||||
|     fi |  | ||||||
| } |  | ||||||
| try_copy_dir () { |  | ||||||
|     if [ ! -d "$1" ] ; then	print_info "directory $1 not found for copy" |  | ||||||
|     elif [ -z "$2" ] ; then	print_error "no way to copy directory $1" |  | ||||||
|     else |  | ||||||
|         cp -fr "$1" "$2" |  | ||||||
|         [ "$?" != 0 ] && print_error "failed to copy directory $1 to $2" || return 0 |  | ||||||
|     fi |  | ||||||
|     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 |  | ||||||
| } |  | ||||||
| try_remove_dir () { |  | ||||||
|     if [ -d "$1" ] ; then |  | ||||||
|         rm -fr "$1" |  | ||||||
|         [ "$?" != 0 ] && print_error "failed to remove directory $1" || return 0 |  | ||||||
|     fi |  | ||||||
|     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 |  | ||||||
|         ln -sf "$1" "$2" |  | ||||||
|         [ "$?" != 0 ] && print_error "failed to link file $1 to $2" || return 0 |  | ||||||
|     fi |  | ||||||
|     return 1 |  | ||||||
| } |  | ||||||
| try_force_link_dir () { |  | ||||||
|     if [ ! -d "$1" ] ; then	print_info "directory $1 not found for link" |  | ||||||
|     elif [ -z "$2" ] ; then	print_error "no way to link directory $1" |  | ||||||
|     else |  | ||||||
|         ln -sf "$1" "$2" |  | ||||||
|         [ "$?" != 0 ] && print_error "failed to link directory $1 to $2" || return 0 |  | ||||||
|     fi |  | ||||||
|     return 1 |  | ||||||
| } |  | ||||||
| try_download () { |  | ||||||
|     set -o pipefail |  | ||||||
|     wget -c -t 5 -T 2 "$1" --output-document="$2" 2>&1 | \ |  | ||||||
|     sed -u 's/.* \([0-9]\+%\)\ \+\([0-9,.]\+.\) \(.*\)/\1\n#Downloading at \1\/, \2\/s, ETA \3/; 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 |  | ||||||
| } |  | ||||||
| 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 |  | ||||||
| } |  | ||||||
| create_new_dir () { |  | ||||||
|     if [ ! -d "$1" ] ; then |  | ||||||
|         mkdir -p "$1" |  | ||||||
|     fi |  | ||||||
| } |  | ||||||
| var_winedlloverride_update () { |  | ||||||
|     if [ ! -z "${WINEDLLOVERRIDES}" ] |  | ||||||
|     then export WINEDLLOVERRIDES="${1};${WINEDLLOVERRIDES}" |  | ||||||
|     else export WINEDLLOVERRIDES="${1}" |  | ||||||
|     fi |  | ||||||
| } |  | ||||||
| var_vkd3d_config_update () { |  | ||||||
|     if [ ! -z "${VKD3D_CONFIG}" ] |  | ||||||
|     then export VKD3D_CONFIG="${1};${VKD3D_CONFIG}" |  | ||||||
|     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 |  | ||||||
| } |  | ||||||
| pw_mangohud_check () { |  | ||||||
|     export RUN_MANGOHUD="" |  | ||||||
|     unset MANGOHUD |  | ||||||
|     unset MANGOHUD_DLSYM |  | ||||||
|     if [ -x "`which mangohud 2>/dev/null`" ] && [ "${PW_MANGOHUD}" == "1" ] ; 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 () { |  | ||||||
|     try_remove_file "${WINEPREFIX}/system.reg" |  | ||||||
|     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 |  | ||||||
| } |  | ||||||
| PW_START_PROGRESS_BAR_CS () { |  | ||||||
|     "${pw_yad}" --progress --progress-text="$@" --pulsate --close-on-unfocus \ |  | ||||||
|     --no-buttons --undecorated --center --skip-taskbar --width=500 --wrap-width=500 & |  | ||||||
|     echo "" |  | ||||||
| } |  | ||||||
| PW_START_PROGRESS_BAR_BLOCK () { |  | ||||||
|     "${pw_yad}" --progress --progress-text="$@" --pulsate \ |  | ||||||
|     --no-buttons --undecorated --center --skip-taskbar --width=500 --wrap-width=500 & |  | ||||||
|     echo "" |  | ||||||
| } |  | ||||||
| PW_STOP_PROGRESS_BAR () { |  | ||||||
|     while [ ! -z "`pgrep -a yad | grep "\-\-progress" | awk '{print $1}'`" ]  |  | ||||||
|     do kill -n 9 `pgrep -a yad | grep "\-\-progress" | awk '{print $1}' | head -n 1` &> /dev/null |  | ||||||
|     done |  | ||||||
| } |  | ||||||
| PW_LOAD_LIBS () { |  | ||||||
|     if [ ! -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 |  | ||||||
|             if unpack_tar_xz "${HOME}/.PortWINE/tmp/libs${pw_libs_ver}.tar.xz" "${HOME}/.PortWINE/" ; then |  | ||||||
|                 try_remove_file "${HOME}/.PortWINE/tmp/libs${pw_libs_ver}.tar.xz" |  | ||||||
|             else |  | ||||||
|                 try_remove_dir "${HOME}/.PortWINE/libs${pw_libs_ver}" |  | ||||||
|                 try_remove_file "${HOME}/.PortWINE/tmp/libs${pw_libs_ver}.tar.xz" |  | ||||||
|                 `zenity --error --title "Error..." \ |  | ||||||
|                 --text "Failed to install runtime libraries.\nCheck internet connection and press OK" \ |  | ||||||
|                 --no-wrap ` > /dev/null 2>&1 && PW_LOAD_LIBS |  | ||||||
|             fi |  | ||||||
|         else |  | ||||||
|             `zenity --error --title "Error..." \ |  | ||||||
|             --text "Failed to download runtime libraries.\nCheck internet connection and press OK" \ |  | ||||||
|             --no-wrap ` > /dev/null 2>&1 && PW_LOAD_LIBS |  | ||||||
|         fi |  | ||||||
|     fi |  | ||||||
|     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="${PW_WINELIB}/runtime/bin/xterm -geometry 159x37 -e" |  | ||||||
|     fi |  | ||||||
| } |  | ||||||
|  |  | ||||||
| PW_DOWNLOAD_MONO () { | start_portwine () { | ||||||
|     if [ ! -d "${HOME}/.PortWINE/mono/wine-mono-${mono_ver}" ] ; then |     pw_check_and_download_wine "${PW_WINE_USE}"  | ||||||
|         export url_mono="https://github.com/madewokherd/wine-mono/releases/download/wine-mono-${mono_ver}/wine-mono-${mono_ver}-x86.tar.xz" |     pw_tray_icon & | ||||||
|         echo "######################################################" |  | ||||||
|         print_info "Download and install wine mono..." |  | ||||||
|         if try_download "${url_mono}" "${HOME}/.PortWINE/tmp/wine-mono-${mono_ver}-x86.tar.xz" ; then |  | ||||||
|             create_new_dir "${HOME}/.PortWINE/mono" |  | ||||||
|             if ! unpack_tar_xz "${HOME}/.PortWINE/tmp/wine-mono-${mono_ver}-x86.tar.xz" "${HOME}/.PortWINE/mono/" |  | ||||||
|             then |  | ||||||
|                 try_remove_dir "${HOME}/.PortWINE/mono/wine-mono-${mono_ver}-x86" |  | ||||||
|                 zenity_error_download && PW_DOWNLOAD_MONO |  | ||||||
|             fi |  | ||||||
|             try_remove_file "${HOME}/.PortWINE/tmp/wine-mono-${mono_ver}-x86.tar.xz" |  | ||||||
|         else |  | ||||||
|             zenity_error_download && PW_DOWNLOAD_MONO |  | ||||||
|         fi |  | ||||||
|     fi |  | ||||||
| } |  | ||||||
| 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 |  | ||||||
|             create_new_dir "${HOME}/.PortWINE/gecko" |  | ||||||
|             if ! unpack_tar_xz "${HOME}/.PortWINE/tmp/wine-gecko-${gecko_ver}-x86.tar.xz" "${HOME}/.PortWINE/gecko/" |  | ||||||
|             then |  | ||||||
|                 try_remove_dir "${HOME}/.PortWINE/gecko/wine-gecko-${gecko_ver}-x86" |  | ||||||
|                 zenity_error_download && PW_DOWNLOAD_GECKO |  | ||||||
|             fi |  | ||||||
|             try_remove_file "${HOME}/.PortWINE/tmp/wine-gecko-${gecko_ver}-x86.tar.xz" |  | ||||||
|         else |  | ||||||
|             zenity_error_download && PW_DOWNLOAD_GECKO |  | ||||||
|         fi |  | ||||||
|     fi |  | ||||||
|     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 |  | ||||||
|             create_new_dir "${HOME}/.PortWINE/gecko" |  | ||||||
|             if ! unpack_tar_xz "${HOME}/.PortWINE/tmp/wine-gecko-${gecko_ver}-x86_64.tar.xz" "${HOME}/.PortWINE/gecko/" |  | ||||||
|             then |  | ||||||
|                 try_remove_dir "${HOME}/.PortWINE/gecko/wine-gecko-${gecko_ver}-x86_64" |  | ||||||
|                 zenity_error_download && PW_DOWNLOAD_GECKO |  | ||||||
|             fi |  | ||||||
|             try_remove_file "${HOME}/.PortWINE/tmp/wine-gecko-${gecko_ver}-x86_64.tar.xz" |  | ||||||
|         else |  | ||||||
|             zenity_error_download && PW_DOWNLOAD_GECKO |  | ||||||
|         fi |  | ||||||
|     fi |  | ||||||
| } |  | ||||||
| START_PORTWINE () |  | ||||||
|     { |  | ||||||
|     if [ -x "`which konsole 2>/dev/null`" ]; then export PW_TERM="konsole --nofork -e" |     if [ -x "`which konsole 2>/dev/null`" ]; then export PW_TERM="konsole --nofork -e" | ||||||
| #    elif [ -x "`which gnome-terminal 2>/dev/null`" ]; then export PW_TERM="gnome-terminal -- /bin/bash" ??? | #    elif [ -x "`which gnome-terminal 2>/dev/null`" ]; then export PW_TERM="gnome-terminal -- /bin/bash" ??? | ||||||
|     elif [ -x "`which lxterminal 2>/dev/null`" ]; then export PW_TERM="lxterminal -e" |     elif [ -x "`which lxterminal 2>/dev/null`" ]; then export PW_TERM="lxterminal -e" | ||||||
|     elif [ -x "`which xterm 2>/dev/null`" ]; then export PW_TERM="${PW_XTERM}" |     elif [ -x "`which xterm 2>/dev/null`" ]; then export PW_TERM="${PW_XTERM}" | ||||||
|     else export PW_TERM="${PW_XTERM}" |     else export PW_TERM="${PW_XTERM}" | ||||||
|     fi |     fi | ||||||
|     PW_START_PROGRESS_BAR_CS "Start ${portname}... Please wait..." |     if [ ! -f "${HOME}/.Xresources" ]; then | ||||||
|  |         cp -f "${PORT_SCRIPTS_PATH}/.Xresources" "${HOME}" | ||||||
|  |         xrdb -merge "${HOME}/.Xresources" | ||||||
|  |     fi | ||||||
|  |  | ||||||
|  |     pw_start_progress_bar_cs "Start ${portname}... Please wait..." | ||||||
|  |  | ||||||
|     export WINE_GST_REGISTRY_DIR="${PORT_WINE_TMP_PATH}" |     export WINE_GST_REGISTRY_DIR="${PORT_WINE_TMP_PATH}" | ||||||
|     export MEDIACONV_AUDIO_DUMP_FILE="${PORT_WINE_TMP_PATH}"/audio.foz |     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_AUDIO_TRANSCODED_FILE="${PORT_WINE_TMP_PATH}"/transcoded_audio.foz | ||||||
|     export MEDIACONV_VIDEO_DUMP_FILE="${PORT_WINE_TMP_PATH}"/video.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 MEDIACONV_VIDEO_TRANSCODED_FILE="${PORT_WINE_TMP_PATH}"/transcoded_video.foz | ||||||
|     export GST_PLUGIN_SYSTEM_PATH_1_0="${WINEDIR}/lib64/gstreamer-1.0:${WINEDIR}/lib/gstreamer-1.0" |  | ||||||
|     export STAGING_SHARED_MEMORY=1 |     export STAGING_SHARED_MEMORY=1 | ||||||
|     export PW_FORCE_LARGE_ADDRESS_AWARE=1 |     export PW_FORCE_LARGE_ADDRESS_AWARE=1 | ||||||
|     export WINE="${WINEDIR}/bin/wine" |  | ||||||
|     export WINELOADER="${WINEDIR}/bin/wine" |  | ||||||
|     export WINESERVER="${WINEDIR}/bin/wineserver" |  | ||||||
|     export WINEDLLPATH="${WINEDIR}/lib/wine" |  | ||||||
|     export LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib" |  | ||||||
|  |  | ||||||
|     create_new_dir "${WINEDIR}/share/wine/" |     create_new_dir "${WINEDIR}/share/wine/" | ||||||
|     try_remove_dir "${WINEDIR}"/share/wine/gecko |     try_remove_dir "${WINEDIR}"/share/wine/gecko | ||||||
|     try_remove_dir "${WINEDIR}"/share/wine/mono |     try_remove_dir "${WINEDIR}"/share/wine/mono | ||||||
|     try_force_link_dir "${HOME}/.PortWINE/gecko" "${WINEDIR}"/share/wine/ |     try_force_link_dir "${HOME}/.PortWINE/gecko" "${WINEDIR}"/share/wine/ | ||||||
|     try_force_link_dir "${HOME}/.PortWINE/mono" "${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 [ "${PW_USE_RUNTIME}" = 0 ] ; then |     if [ "${PW_USE_RUNTIME}" = 0 ] ; then | ||||||
|         export PW_RUNTIME="" |         export pw_runtime="" | ||||||
|         echo "RUNTIME is disabled" |         echo "RUNTIME is disabled" | ||||||
|     else |     else | ||||||
|         export PW_AND_RUNTIME_LIBRARY_PATH="/overrides/lib/x86_64-linux-gnu:/overrides/lib/x86_64-linux-gnu/aliases:/overrides/lib/i386-linux-gnu:/overrides/lib/i386-linux-gnu/aliases:" |         export PW_AND_RUNTIME_LIBRARY_PATH="/overrides/lib/x86_64-linux-gnu/:/overrides/lib/x86_64-linux-gnu/aliases/:/overrides/lib/i386-linux-gnu/:/overrides/lib/i386-linux-gnu/aliases/:" | ||||||
|         export PW_RUNTIME="${PW_WINELIB}/pressure-vessel/bin/pressure-vessel-unruntime \ |         if [ ! -z "${PW_SANDBOX_HOME_PATH}" ] && [ -d "${PW_SANDBOX_HOME_PATH}" ]; then | ||||||
|         --share-home \ |             export pw_runtime="${PW_WINELIB}/pressure-vessel/bin/pressure-vessel-unruntime \ | ||||||
|         --runtime=${PW_WINELIB}/runtime \ |             --unshare-home \ | ||||||
|         --" |             --home="${PW_SANDBOX_HOME_PATH}" \ | ||||||
|  |             --runtime=${PW_WINELIB}/runtime \ | ||||||
|  |             --" | ||||||
|  |         else | ||||||
|  |             export pw_runtime="${PW_WINELIB}/pressure-vessel/bin/pressure-vessel-unruntime \ | ||||||
|  |             --share-home \ | ||||||
|  |             --runtime=${PW_WINELIB}/runtime \ | ||||||
|  |             --" | ||||||
|  |         fi | ||||||
|         export PRESSURE_VESSEL_VARIABLE_DIR="${PW_WINELIB}/runtime" |         export PRESSURE_VESSEL_VARIABLE_DIR="${PW_WINELIB}/runtime" | ||||||
|         export PRESSURE_VESSEL_REMOVE_GAME_OVERLAY=1 |         export PRESSURE_VESSEL_REMOVE_GAME_OVERLAY=0 | ||||||
|         # export PRESSURE_VESSEL_IMPORT_VULKAN_LAYERS=1 |         export PRESSURE_VESSEL_IMPORT_VULKAN_LAYERS=1 | ||||||
|         export PRESSURE_VESSEL_GC_RUNTIMES=0 |         export PRESSURE_VESSEL_GC_RUNTIMES=0 | ||||||
|         export PRESSURE_VESSEL_GC_LEGACY_RUNTIMES=0 |         export PRESSURE_VESSEL_GC_LEGACY_RUNTIMES=0 | ||||||
|         export PRESSURE_VESSEL_RUNTIME_BASE="${PW_WINELIB}" |         export PRESSURE_VESSEL_RUNTIME_BASE="${PW_WINELIB}" | ||||||
| @@ -336,6 +84,9 @@ START_PORTWINE () | |||||||
|             else export PRESSURE_VESSEL_FILESYSTEMS_RW="${PWRTMRW}" |             else export PRESSURE_VESSEL_FILESYSTEMS_RW="${PWRTMRW}" | ||||||
|             fi |             fi | ||||||
|         done |         done | ||||||
|  |         if [ ! -f "${PW_WINELIB}/runtime/etc/os-release" ] | ||||||
|  |         then try_force_link_file "${PW_WINELIB}/runtime/lib/os-release" "${PW_WINELIB}/runtime/etc/os-release" | ||||||
|  |         fi | ||||||
|         echo "RUNTIME is enabled" |         echo "RUNTIME is enabled" | ||||||
|     fi |     fi | ||||||
|  |  | ||||||
| @@ -350,6 +101,7 @@ START_PORTWINE () | |||||||
|         export VKD3D_DEBUG="none" |         export VKD3D_DEBUG="none" | ||||||
|         export DXVK_LOG_PATH="none" |         export DXVK_LOG_PATH="none" | ||||||
|     fi |     fi | ||||||
|  |     export GST_DEBUG="WARNING:0" | ||||||
|  |  | ||||||
|     #default wine-mono override for FNA games |     #default wine-mono override for FNA games | ||||||
|     export WINE_MONO_OVERRIDES="Microsoft.Xna.Framework.*,Gac=n" |     export WINE_MONO_OVERRIDES="Microsoft.Xna.Framework.*,Gac=n" | ||||||
| @@ -380,7 +132,16 @@ START_PORTWINE () | |||||||
|         export RADV_DEBUG="llvm" |         export RADV_DEBUG="llvm" | ||||||
|         var_vkd3d_config_update single_queue |         var_vkd3d_config_update single_queue | ||||||
|     fi |     fi | ||||||
|     if [ ! -z "${PW_NVAPI_DISABLE}" ] && [ "${PW_NVAPI_DISABLE}" != 0 ] ; then |     if [ ! -z "${PW_USE_NVAPI}" ] && [ "${PW_USE_NVAPI}" == 1 ] && [ -d "${WINEDIR}/lib/wine/nvapi/" ] | ||||||
|  |     then | ||||||
|  |         if [ "${WINEARCH}" != "win32" ] ; then | ||||||
|  |             try_copy_file "${WINEDIR}/lib/wine/nvapi/nvapi.dll" "${WINEPREFIX}/drive_c/windows/syswow64/" | ||||||
|  |             try_copy_file "${WINEDIR}/lib64/wine/nvapi/nvapi64.dll" "${WINEPREFIX}/drive_c/windows/system32/" | ||||||
|  |         else | ||||||
|  |             try_copy_file "${WINEDIR}/lib/wine/nvapi/nvapi.dll" "${WINEPREFIX}/drive_c/windows/system32/" | ||||||
|  |         fi | ||||||
|  |         var_winedlloverride_update "nvapi,nvapi64=n" | ||||||
|  |     else | ||||||
|         var_winedlloverride_update "nvapi,nvapi64=" |         var_winedlloverride_update "nvapi,nvapi64=" | ||||||
|     fi |     fi | ||||||
|     if [ ! -z "${PW_WINEDBG_DISABLE}" ] && [ "${PW_WINEDBG_DISABLE}" != 0 ] ; then |     if [ ! -z "${PW_WINEDBG_DISABLE}" ] && [ "${PW_WINEDBG_DISABLE}" != 0 ] ; then | ||||||
| @@ -400,9 +161,6 @@ START_PORTWINE () | |||||||
|     if [ ! -z "${PW_DXR_ON}" ] && [ "${PW_DXR_ON}" != 0 ] ; then |     if [ ! -z "${PW_DXR_ON}" ] && [ "${PW_DXR_ON}" != 0 ] ; then | ||||||
|         var_vkd3d_config_update dxr |         var_vkd3d_config_update dxr | ||||||
|     fi |     fi | ||||||
|     create_new_dir "${PORT_WINE_TMP_PATH}/dxvk_cache" |  | ||||||
|     export DXVK_STATE_CACHE_PATH="${PORT_WINE_TMP_PATH}"/dxvk_cache |  | ||||||
|     export DXVK_STATE_CACHE=1 |  | ||||||
|     export optirun_on="" |     export optirun_on="" | ||||||
|     export check_optimus_manager= |     export check_optimus_manager= | ||||||
|     export PW_NVIDIA="$(lspci | grep NVIDIA)" |     export PW_NVIDIA="$(lspci | grep NVIDIA)" | ||||||
| @@ -427,10 +185,6 @@ START_PORTWINE () | |||||||
|         if [ ! -d "${PORT_WINE_TMP_PATH}"/gl_shader_cache ] ; then |         if [ ! -d "${PORT_WINE_TMP_PATH}"/gl_shader_cache ] ; then | ||||||
|             mkdir -p "${PORT_WINE_TMP_PATH}"/gl_shader_cache |             mkdir -p "${PORT_WINE_TMP_PATH}"/gl_shader_cache | ||||||
|         fi |         fi | ||||||
|         export __GL_SHADER_DISK_CACHE_PATH="${PORT_WINE_TMP_PATH}/gl_shader_cache" |  | ||||||
|         export __GL_SHADER_DISK_CACHE=1 |  | ||||||
|         export __GL_SHADER_DISK_CACHE_SIZE=1000000000 |  | ||||||
|         export __GL_DXVK_OPTIMIZATIONS=1 |  | ||||||
|     else |     else | ||||||
|         export DRI_PRIME=1 |         export DRI_PRIME=1 | ||||||
|     fi |     fi | ||||||
| @@ -448,9 +202,11 @@ START_PORTWINE () | |||||||
|         killall xneur |         killall xneur | ||||||
|         export int_xneur=1 |         export int_xneur=1 | ||||||
|     fi |     fi | ||||||
|     export PW_XKBD="$(setxkbmap -query | grep -w ru | awk '{print($2)}')" |     if [ ! -z "${PW_XKBD_RU_HACK}" ] && [ "${PW_XKBD_RU_HACK}" == 1 ]; then | ||||||
|     if [ ! -z ${PW_XKBD} ]; then |         export PW_XKBD="$(setxkbmap -query | grep -w ru | awk '{print($2)}')" | ||||||
|         setxkbmap us,ru |         if [ ! -z ${PW_XKBD} ]; then | ||||||
|  |             setxkbmap us,ru | ||||||
|  |         fi | ||||||
|     fi |     fi | ||||||
|     if [ -x "`which "gamemoderun" 2>/dev/null`" ] && [ "$PW_USE_GAMEMODE" = "1" ]; then |     if [ -x "`which "gamemoderun" 2>/dev/null`" ] && [ "$PW_USE_GAMEMODE" = "1" ]; then | ||||||
|         export PW_GAMEMODERUN=1 |         export PW_GAMEMODERUN=1 | ||||||
| @@ -459,78 +215,135 @@ START_PORTWINE () | |||||||
|         export PW_GAMEMODERUN=0 |         export PW_GAMEMODERUN=0 | ||||||
|         echo "Gamemod is not installed or disabled in vars script: PW_USE_GAMEMODE=$PW_USE_GAMEMODE" |         echo "Gamemod is not installed or disabled in vars script: PW_USE_GAMEMODE=$PW_USE_GAMEMODE" | ||||||
|     fi |     fi | ||||||
|     PW_INIT_PFX |     #init_pfx | ||||||
|     RUN_WINETRICKS_FROM_DB |     if [ ! -d "${WINEPREFIX}" ] || [ ! -d "${WINEPREFIX}"/drive_c/windows ] || \ | ||||||
|     ADD_IN_START_PORTWINE |        [ ! -d "${WINEPREFIX}/dosdevices" ] || [ ! -f "${WINEPREFIX}"/userdef.reg ] || \ | ||||||
| } |        [ ! -f "${WINEPREFIX}"/system.reg ] || [ ! -f "${WINEPREFIX}"/user.reg ] | ||||||
|  |     then | ||||||
|  |         pw_clear_pfx | ||||||
|  |         create_new_dir "${WINEPREFIX}" | ||||||
|  |         create_new_dir "${WINEPREFIX}/drive_c" | ||||||
|  |         create_new_dir "${WINEPREFIX}/dosdevices" | ||||||
|  |         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:" | ||||||
|  |         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 | ||||||
|  |         pw_stop_progress_bar | ||||||
|  |         pw_start_progress_bar_block "Updating prefix... Please wait..." | ||||||
|  |         kill_portwine | ||||||
|  |         ${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" wineboot -u | ||||||
|  |         wait_wineserver | ||||||
|  |         kill_portwine | ||||||
|  |         pw_stop_progress_bar | ||||||
|  |         pw_start_progress_bar_cs "Initialization prefix..." | ||||||
|  |     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 | ||||||
|  |     [ ! -d "${PORT_WINE_PATH}/drive_c" ] && try_force_link_dir "${PORT_WINE_PATH}/data/pfx/drive_c/" "${PORT_WINE_PATH}/" | ||||||
|  |     create_new_dir "${WINEPREFIX}/drive_c/users/Public/Documents/Steam" | ||||||
|  |     create_new_dir "${WINEPREFIX}/drive_c/users/steamuser/Documents/Steam" | ||||||
|  |     if [ ! -d "${WINEPREFIX}/drive_c/users/steamuser/My Documents" ] | ||||||
|  |     then try_force_link_dir "${WINEPREFIX}/drive_c/users/steamuser/Documents" "${WINEPREFIX}/drive_c/users/steamuser/My Documents" | ||||||
|  |     fi | ||||||
|  |     var_winedlloverride_update "steam_api,steam_api64,steamclient,steamclient64=n" | ||||||
|  |  | ||||||
| WAIT_WINESERVER () { |     # export TOTAL_VRAM=`"${PW_WINELIB}/runtime/bin/glxinfo" -B | grep Total | awk -F: '{print $2}' | awk '{print $1}'` | ||||||
|     sleep 3 |     # echo "TOTAL_VRAM=${TOTAL_VRAM}" | ||||||
|     while [ ! -z "$(ls -l /proc/*/exe 2>/dev/null | grep -ie ${portname} | grep -E 'wine(64)?-preloader|wineserver' | awk -F/ '{print $3}')" ] ; do |     echo "Try copy native DXGI" | ||||||
|         sleep 1 |     if [ "${WINEARCH}" != "win32" ] ; then | ||||||
|     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 | ||||||
| KILL_PORTWINE () { |         if ! try_copy_file "${WINEDIR}"/lib64/wine/fakedlls/dxgi.dll "${WINEPREFIX}/drive_c/windows/system32/" | ||||||
|     wine_pids=`ls -l /proc/*/exe 2>/dev/null | grep -ie ${portname} | grep -E 'wine(64)?-preloader| ' | awk -F/ '{print $3}'` |         then try_copy_file "${WINEDIR}"/lib64/wine/x86_64-windows/dxgi.dll "${WINEPREFIX}/drive_c/windows/system32/" | ||||||
|     if  [ ! -z "${wine_pids}" ] ; then |         fi | ||||||
|         for pw_kill_pids in ${wine_pids} ; do |         try_copy_file "${WINEDIR}/lib/wine/dxvk/dxvk_config.dll" "${WINEPREFIX}/drive_c/windows/syswow64/" | ||||||
|             if [ "`ps cax | grep ${pw_kill_pids}`" ] ; then |         try_copy_file "${WINEDIR}/lib64/wine/dxvk/dxvk_config.dll" "${WINEPREFIX}/drive_c/windows/system32/" | ||||||
|                 kill -n 9 ${pw_kill_pids} |     else | ||||||
|  |         if ! try_copy_file "${WINEDIR}"/lib/wine/fakedlls/dxgi.dll "${WINEPREFIX}/drive_c/windows/system32/" | ||||||
|  |         then try_copy_file "${WINEDIR}"/lib/wine/i386-windows/dxgi.dll "${WINEPREFIX}/drive_c/windows/system32/" | ||||||
|  |         fi | ||||||
|  |         try_copy_file "${WINEDIR}/lib/wine/dxvk/dxvk_config.dll" "${WINEPREFIX}/drive_c/windows/system32/" | ||||||
|  |     fi | ||||||
|  |     if [ "${PW_VULKAN_USE}" = "0" ] ; then | ||||||
|  |         export MESA_GLSL_CACHE_DIR="${PORT_WINE_TMP_PATH}" | ||||||
|  |         export __GLX_VENDOR_LIBRARY_NAME=nvidia | ||||||
|  |         export GL_YIELD="NOTHING" | ||||||
|  |         for wine_build_dll in d3d11 d3d10 d3d10core d3d10_1 d3d9 ; do | ||||||
|  |             if [ "${WINEARCH}" != "win32" ] ; then | ||||||
|  |                 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 | ||||||
|  |             else | ||||||
|  |                 if ! try_copy_file "${WINEDIR}/lib/wine/${wine_build_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/" | ||||||
|  |                 then try_copy_file "${WINEDIR}/lib/wine/i386-windows/${wine_build_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/" | ||||||
|  |                 fi | ||||||
|             fi |             fi | ||||||
|         done |         done | ||||||
|  |         var_winedlloverride_update "d3d11,d3d10,d3d10core,d3d10_1,d3d9,dxgi=b;d3d12=" | ||||||
|  |         echo "Use OpenGL" | ||||||
|  |     elif [ "${PW_VULKAN_USE}" = "vkd3d" ] ; then | ||||||
|  |         echo "Try copy native VKD3D files" | ||||||
|  |         for wine_vkd3d_dll in d3d12 libvkd3d-proton-utils-3 ; do | ||||||
|  |             if [ "${WINEARCH}" != "win32" ] ; then | ||||||
|  |                 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/" | ||||||
|  |             else | ||||||
|  |                 try_copy_file "${WINEDIR}/lib/wine/vkd3d-proton/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/" | ||||||
|  |             fi | ||||||
|  |             var_winedlloverride_update "${wine_vkd3d_dll}=n" | ||||||
|  |             create_new_dir "${PORT_WINE_TMP_PATH}/gl_shader_cache" | ||||||
|  |             export __GL_SHADER_DISK_CACHE_PATH="${PORT_WINE_TMP_PATH}/gl_shader_cache" | ||||||
|  |             export __GL_SHADER_DISK_CACHE=1 | ||||||
|  |             export __GL_SHADER_DISK_CACHE_SIZE=1000000000 | ||||||
|  |         done | ||||||
|  |         var_winedlloverride_update "dxgi=b" | ||||||
|  |         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" | ||||||
|  |         echo "Try copy native DXVK files" | ||||||
|  |         for wine_dxvk_dll in ${CP_DXVK_FILES} ; do | ||||||
|  |             if [ "${WINEARCH}" != "win32" ] ; then | ||||||
|  |                 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/" | ||||||
|  |             else | ||||||
|  |                 try_copy_file "${WINEDIR}/lib/wine/dxvk/${wine_dxvk_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/" | ||||||
|  |             fi | ||||||
|  |             var_winedlloverride_update "${wine_dxvk_dll}=n" | ||||||
|  |         done | ||||||
|  |         create_new_dir "${PORT_WINE_TMP_PATH}/dxvk_cache" | ||||||
|  |         export DXVK_STATE_CACHE_PATH="${PORT_WINE_TMP_PATH}"/dxvk_cache | ||||||
|  |         export DXVK_STATE_CACHE=1 | ||||||
|  |         export __GL_DXVK_OPTIMIZATIONS=1 | ||||||
|  |         var_winedlloverride_update "d3d12,libvkd3d-proton-utils-3=" | ||||||
|  |         echo "Use DXVK" | ||||||
|     fi |     fi | ||||||
|     if [ ! -z `pgrep -a bwrap | grep ${portname} | head -n 1 | awk '{print $1}'` ] ; then |     pw_other_fixes | ||||||
|         kill -n 9 `pgrep -a bwrap | grep ${portname} | head -n 1 | awk '{print $1}'` |     #run_winetricks_from_db | ||||||
|     fi |     update_winetricks | ||||||
| } |  | ||||||
|  |  | ||||||
| STOP_PORTWINE () { |  | ||||||
|     WAIT_WINESERVER |  | ||||||
|     ADD_IN_STOP_PORTWINE |  | ||||||
|     if [ "$int_xneur" = "1"  ]; then |  | ||||||
|         xneur & |  | ||||||
|     fi |  | ||||||
|     if [ ! -z ${PW_XKBD} ]; then |  | ||||||
|         setxkbmap ${PW_XKBD} |  | ||||||
|     fi |  | ||||||
|     PW_STOP_PROGRESS_BAR |  | ||||||
|     try_remove_file "${PORT_SCRIPTS_PATH}/0" |  | ||||||
|     try_remove_file "${PORT_SCRIPTS_PATH}/1" |  | ||||||
| } |  | ||||||
|  |  | ||||||
| UPDATE_WINETRICKS () { |  | ||||||
|     W_TRX_URL="https://raw.githubusercontent.com/Winetricks/winetricks/master/src/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" ] && [ ! -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})"  |  | ||||||
|             chmod u+x "${PORT_WINE_TMP_PATH}/winetricks" |  | ||||||
|         fi |  | ||||||
|     fi |  | ||||||
|     if  [ -f "${PORT_WINE_TMP_PATH}/winetricks" ] ; then |  | ||||||
|         sed -i 's/w_metadata vcrun2015 dlls \\/w_metadata !dont_use_2015! dlls \\/' "${PORT_WINE_TMP_PATH}/winetricks" |  | ||||||
|         sed -i 's/w_metadata vcrun2017 dlls \\/w_metadata !dont_use_2017! dlls \\/' "${PORT_WINE_TMP_PATH}/winetricks" |  | ||||||
|     fi |  | ||||||
| } |  | ||||||
|  |  | ||||||
| RUN_WINETRICKS_FROM_DB () { |  | ||||||
|     # UPDATE_WINETRICKS |  | ||||||
|     if [ ! -z "${PW_MUST_HAVE_DLL}" ] |     if [ ! -z "${PW_MUST_HAVE_DLL}" ] | ||||||
|     then export PW_DLL_INSTALL="${PW_MUST_HAVE_DLL} ${PW_DLL_INSTALL}" |     then export PW_DLL_INSTALL="${PW_MUST_HAVE_DLL} ${PW_DLL_INSTALL}" | ||||||
|     fi |     fi | ||||||
|     if [ ! -z "${PW_DLL_INSTALL}" ]; then |     if [ ! -z "${PW_DLL_INSTALL}" ]; then | ||||||
|         PW_STOP_PROGRESS_BAR |         pw_stop_progress_bar | ||||||
|         export PW_DLL_NEED_INSTALL="" |         export PW_DLL_NEED_INSTALL="" | ||||||
|         export USE_WT_FROM_DB=0 |         export USE_WT_FROM_DB=0 | ||||||
|         if [ ! -e "${WINEPREFIX}/winetricks.log" ] ; then |         if [ ! -e "${WINEPREFIX}/winetricks.log" ] ; then | ||||||
|             touch "${WINEPREFIX}/winetricks.log" |             touch "${WINEPREFIX}/winetricks.log" | ||||||
|         fi |         fi | ||||||
|         try_remove_dir "${HOME}/.cache/winetricks/vcrun2019/" |  | ||||||
|         for need_install_dll_to_pfx in ${PW_DLL_INSTALL} ; do |         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 |             if [ "${need_install_dll_to_pfx}" == "vcrun2015" ] || [ "${need_install_dll_to_pfx}" == "vcrun2017" ] ; then | ||||||
|                 need_install_dll_to_pfx="vcrun2019" |                 need_install_dll_to_pfx="vcrun2019" | ||||||
| @@ -550,254 +363,39 @@ RUN_WINETRICKS_FROM_DB () { | |||||||
|             fi |             fi | ||||||
|         done |         done | ||||||
|         if [ "${USE_WT_FROM_DB}" == "1" ] ; then |         if [ "${USE_WT_FROM_DB}" == "1" ] ; then | ||||||
|             PW_STOP_PROGRESS_BAR |             pw_stop_progress_bar | ||||||
|             print_info "Try to install DLL in prefix: ${PW_DLL_NEED_INSTALL}" |             print_info "Try to install DLL in prefix: ${PW_DLL_NEED_INSTALL}" | ||||||
|             ${PW_RUNTIME} xterm -e env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${PORT_WINE_TMP_PATH}/winetricks" -q ${PW_DLL_NEED_INSTALL} |             chmod -R 775 "${HOME}/.cache/winetricks" | ||||||
|  |             if [ "${PW_WINE_VER}" != "PROTON_STEAM" ] ; then | ||||||
|  |                 export PW_WINE_VER_FROM_DB="${PW_WINE_USE}" | ||||||
|  |                 export PW_WINE_VER="PROTON_STEAM" | ||||||
|  |                 init_wine_ver | ||||||
|  |                 cabextract_fix | ||||||
|  |             fi | ||||||
|  |             ${pw_runtime} xterm -e env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${PORT_WINE_TMP_PATH}/winetricks" -q -f ${PW_DLL_NEED_INSTALL} | ||||||
|  |             if [ "${PW_WINE_USE}" != "proton_steam" ] ; then | ||||||
|  |                 /bin/bash -c ${pw_full_command_line[*]} & | ||||||
|  |                 exit 0 | ||||||
|  |             fi | ||||||
|         fi |         fi | ||||||
|         PW_START_PROGRESS_BAR_CS "Start ${portname}... Please wait..." |         pw_start_progress_bar_cs "Start ${portname}... Please wait..." | ||||||
|     fi |     fi | ||||||
|     if [[ -z `cat "${WINEPREFIX}/system.reg" | grep "Windows $PW_WINDOWS_VER"` ]] ; then |     if [[ -z `cat "${WINEPREFIX}/system.reg" | grep "Windows $PW_WINDOWS_VER"` ]] ; then | ||||||
|         if [ ! -z "${PW_WINDOWS_VER}" ] && [ `echo "$PW_WINDOWS_VER" | sed 's/.*/\L&/'` == "xp" ] ; then |         if [ ! -z "${PW_WINDOWS_VER}" ] && [ `echo "$PW_WINDOWS_VER" | sed 's/.*/\L&/'` == "xp" ] ; then | ||||||
|             export PW_WINDOWS_VER="xp64" |             if [ "${WINEARCH}" != "win32" ] ; then | ||||||
|  |                 export PW_WINDOWS_VER="xp64" | ||||||
|  |             else | ||||||
|  |                 export PW_WINDOWS_VER="xp" | ||||||
|  |             fi | ||||||
|         fi |         fi | ||||||
|         ${PW_RUNTIME} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" winecfg -v `echo "win${PW_WINDOWS_VER}" | sed 's/.*/\L&/'` |         ${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" winecfg -v `echo "win${PW_WINDOWS_VER}" | sed 's/.*/\L&/'` | ||||||
|         echo "Set to win${PW_WINDOWS_VER}" |         echo "Set to win${PW_WINDOWS_VER}" | ||||||
|         WAIT_WINESERVER |         wait_wineserver | ||||||
|     fi |  | ||||||
| } |  | ||||||
| PW_INIT_DB () { |  | ||||||
|     if [ ! -z "${portwine_exe}" ]; then |  | ||||||
|         export PORTWINE_DB=`echo "${portwine_exe}" | awk -F '/' 'NF>1{print $NF}' | sed s/".exe"/""/gi` |  | ||||||
|         export PATH_TO_GAME="$( cd "$( dirname "${portwine_exe}" )" >/dev/null 2>&1 && pwd )" |  | ||||||
|         export WIN_PATH_TO_GAME=`echo "C:${PATH_TO_GAME}" | sed "s%$WINEPREFIX%%g" | sed "s/drive_c//g" | sed 's#/#\\\#g'` |  | ||||||
|     fi |  | ||||||
|     if [ ! -z "${PORTWINE_DB}" ]; then |  | ||||||
|         PORTWINE_DB_FILE=`grep -ilw "#${PORTWINE_DB}" "${PORT_SCRIPTS_PATH}/portwine_db"/* | sed s/".exe"/""/gi` |  | ||||||
|         if [ ! -z "${PORTWINE_DB_FILE}" ]; then |  | ||||||
|             . "${PORTWINE_DB_FILE}" |  | ||||||
|             echo "Use ${PORTWINE_DB_FILE} db file." |  | ||||||
|         else |  | ||||||
|             . "${PORT_SCRIPTS_PATH}/portwine_db/default" |  | ||||||
|             echo "Use default db file." |  | ||||||
|         fi |  | ||||||
|     fi |  | ||||||
| } |  | ||||||
| PW_UPDATE () { |  | ||||||
|     if [ ! -f "${PORT_WINE_TMP_PATH}/${portname}_ver" ] ; then |  | ||||||
|         echo "10" > "${PORT_WINE_TMP_PATH}/${portname}_ver" |  | ||||||
|     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" |  | ||||||
|     if [ "${update_not}" = "1" ] ; 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=230 --column="${inst_set}" --column "${port_upd3}" \ |  | ||||||
|                 TRUE "${port_upd4}" \ |  | ||||||
|                 FALSE "${port_upd5}" \ |  | ||||||
|                 FALSE "${port_upd6}" ` |  | ||||||
|                 case $xsd in |  | ||||||
|                     "${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" |  | ||||||
|                         #     try_remove_file "${HOME}/.PortWINE/tmp/PortProton-$current_ver" |  | ||||||
|                         # fi & |  | ||||||
|                         xdg-open $porturl |  | ||||||
|                         exit 0 ;; |  | ||||||
|                     "${port_upd5}") |  | ||||||
|                         echo " " ;; |  | ||||||
|                     "${port_upd6}") |  | ||||||
|                     echo "0" > "${PORT_WINE_TMP_PATH}/update_notifier" ;; |  | ||||||
|                 esac |  | ||||||
|             fi |  | ||||||
|         fi |  | ||||||
|     fi |  | ||||||
|     if [ ! -f "${HOME}/.config/.PortTime" ] ; then |  | ||||||
|         echo "10" > "${HOME}/.config/.PortTime" |  | ||||||
|     fi |  | ||||||
|     read "port_time" < "${HOME}/.config/.PortTime" |  | ||||||
|     if [ "${port_time}" -gt "1" ] ; then |  | ||||||
|         port_time=$((${port_time}-1)) |  | ||||||
|         echo "${port_time}" > "${HOME}/.config/.PortTime" |  | ||||||
|     else |  | ||||||
|         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 |  | ||||||
|             echo "1" > "${HOME}/.config/.PortTime" |  | ||||||
|         else |  | ||||||
|             case $xsd2 in |  | ||||||
|                 "${port_time4}") |  | ||||||
|                     xdg-open "$urlg" & |  | ||||||
|                     echo "300" > "${HOME}/.config/.PortTime" |  | ||||||
|                     exit 0 ;; |  | ||||||
|                 "${port_time5}") |  | ||||||
|                     echo "75" > "${HOME}/.config/.PortTime" ;; |  | ||||||
|                 "${port_time6}") |  | ||||||
|                     echo "150" > "${HOME}/.config/.PortTime" ;; |  | ||||||
|             esac |  | ||||||
|         fi |  | ||||||
|     fi |     fi | ||||||
|  |     add_in_start_portwine | ||||||
| } | } | ||||||
|  |  | ||||||
| PW_INIT_PFX () { | pw_run () { | ||||||
|     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 |  | ||||||
|             cp -fr "${WINEDIR}/share/default_pfx/"* "${WINEPREFIX}" |  | ||||||
|         fi |  | ||||||
|         create_new_dir "${WINEPREFIX}/drive_c" |  | ||||||
|         create_new_dir "${WINEPREFIX}/dosdevices" |  | ||||||
|         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:" |  | ||||||
|         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 |  | ||||||
|         PW_STOP_PROGRESS_BAR |  | ||||||
|         PW_START_PROGRESS_BAR_BLOCK "Updating prefix... Please wait..." |  | ||||||
|         KILL_PORTWINE |  | ||||||
|         ${PW_RUNTIME} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" wineboot -u |  | ||||||
|         WAIT_WINESERVER |  | ||||||
|         KILL_PORTWINE |  | ||||||
|         PW_STOP_PROGRESS_BAR |  | ||||||
|         PW_START_PROGRESS_BAR_CS "Initialization prefix..." |  | ||||||
|     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 |  | ||||||
|     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=`"${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 |  | ||||||
|     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 MESA_GLSL_CACHE_DIR="${PORT_WINE_TMP_PATH}" |  | ||||||
|         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/" |  | ||||||
|             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 |  | ||||||
|         var_winedlloverride_update "d3d11,d3d10,d3d10core,d3d10_1,d3d9,dxgi=b;d3d12=" |  | ||||||
|         echo "Use OpenGL" |  | ||||||
|     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" |  | ||||||
|         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 |  | ||||||
|         # 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 |  | ||||||
|         # echo "Use DXVK + VKD3D-PROTON" |  | ||||||
|         var_winedlloverride_update "d3d12,libvkd3d-proton-utils-3=" |  | ||||||
|         echo "Use DXVK" |  | ||||||
|     fi |  | ||||||
|  |  | ||||||
|     PW_OTHER_FIXES |  | ||||||
| } |  | ||||||
|  |  | ||||||
| PW_SCRIPTS_UPDATE () { |  | ||||||
|     if [ ! -f "${PORT_WINE_TMP_PATH}/scripts_ver" ] ; then |  | ||||||
|         echo "1000" > "${PORT_WINE_TMP_PATH}/scripts_ver" |  | ||||||
|     fi |  | ||||||
|     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 |  | ||||||
| } |  | ||||||
|  |  | ||||||
| PW_RUN () { |  | ||||||
|     if [ ! -z "$portwine_exe" ] ; then |     if [ ! -z "$portwine_exe" ] ; then | ||||||
|         export PATH_TO_GAME="$( cd "$( dirname "${portwine_exe}" )" >/dev/null 2>&1 && pwd )" |         export PATH_TO_GAME="$( cd "$( dirname "${portwine_exe}" )" >/dev/null 2>&1 && pwd )" | ||||||
|         cd "${PATH_TO_GAME}" |         cd "${PATH_TO_GAME}" | ||||||
| @@ -805,30 +403,31 @@ PW_RUN () { | |||||||
|         cd "${WINEPREFIX}/drive_c" |         cd "${WINEPREFIX}/drive_c" | ||||||
|     fi |     fi | ||||||
|     pw_mangohud_check |     pw_mangohud_check | ||||||
|     print_var "WINEDIR" "WINEARCH" "WINEPREFIX" "WINEDLLOVERRIDES" "PATH_TO_GAME" "PW_VULKAN_USE" "VKD3D_CONFIG" |     pw_vkbasalt_check | ||||||
|  |     print_var "WINEDIR" "WINEARCH" "WINEPREFIX" "WINEDLLOVERRIDES" "PATH_TO_GAME" "PW_WINE_USE" "PW_VULKAN_USE" "VKD3D_CONFIG" "LD_LIBRARY_PATH" "PATH" | ||||||
|     if [ "${PW_LOG}" == 1 ] ; then |     if [ "${PW_LOG}" == 1 ] ; then | ||||||
|         export PW_LOG_TO_FILE="${PORT_WINE_PATH}/${portname}.log" |         export PW_LOG_TO_FILE="${PORT_WINE_PATH}/${portname}.log" | ||||||
|         if [ ! -z "${PW_GAMEMODERUN}" ] && [ "${PW_GAMEMODERUN}" != 0 ] ; then |         if [ ! -z "${PW_GAMEMODERUN}" ] && [ "${PW_GAMEMODERUN}" != 0 ] ; then | ||||||
|             echo "Full command line:  $PW_TERM ${optirun_on} gamemoderun ${RUN_MANGOHUD} ${PW_RUNTIME} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}" "&>>${PW_LOG_TO_FILE}" |             ${optirun_on} gamemoderun ${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} &>>"${PW_LOG_TO_FILE}" | ||||||
|             ${optirun_on} gamemoderun ${RUN_MANGOHUD} ${PW_RUNTIME} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} &>>"${PW_LOG_TO_FILE}" |  | ||||||
|         else |         else | ||||||
|             echo "Full command line: $PW_TERM ${optirun_on} ${RUN_MANGOHUD} ${PW_RUNTIME} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}" "&>>${PW_LOG_TO_FILE}" |             ${optirun_on} ${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} &>>"${PW_LOG_TO_FILE}" | ||||||
|             ${optirun_on} ${PW_RUNTIME} ${RUN_MANGOHUD} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} &>>"${PW_LOG_TO_FILE}" |  | ||||||
|         fi |         fi | ||||||
|     else |     else | ||||||
|         [ "${PW_USE_TERMINAL}" != "1" ] && export PW_TERM="" |         [ "${PW_USE_TERMINAL}" != "1" ] && export PW_TERM="" | ||||||
|         if [ ! -z "${PW_GAMEMODERUN}" ] && [ "${PW_GAMEMODERUN}" != 0 ] ; then |         if [ ! -z "${PW_GAMEMODERUN}" ] && [ "${PW_GAMEMODERUN}" != 0 ] ; then | ||||||
|             echo "Use gamemode without terminal" |             $PW_TERM ${optirun_on} gamemoderun ${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" \ | ||||||
|             echo "Full command line: $PW_TERM ${optirun_on} gamemoderun ${RUN_MANGOHUD} ${PW_RUNTIME} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}" |             ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} | ||||||
|             $PW_TERM ${optirun_on} gamemoderun  ${PW_RUNTIME} ${RUN_MANGOHUD} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} |  | ||||||
|         else |         else | ||||||
|             echo "Don\`t use gamemode without terminal" |             $PW_TERM ${optirun_on} ${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" \ | ||||||
|             echo "Full command line: $PW_TERM ${optirun_on} ${RUN_MANGOHUD} ${PW_RUNTIME} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}" |             ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} | ||||||
|             $PW_TERM ${optirun_on} ${RUN_MANGOHUD} ${PW_RUNTIME} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} |  | ||||||
|         fi |         fi | ||||||
|     fi |     fi | ||||||
| } | } | ||||||
| #####MAIN##### |  | ||||||
|  | ###MAIN### | ||||||
|  | unset MANGOHUD MANGOHUD_DLSYM PW_NO_ESYNC PW_NO_FSYNC PW_VULKAN_USE WINEDLLOVERRIDES PW_NO_WRITE_WATCH PW_GUI_DISABLED_CS | ||||||
|  | unset PW_CHECK_AUTOINSTAL PW_VKBASALT_EFFECTS PW_VKBASALT_FFX_CAS PORTWINE_DB PORTWINE_DB_FILE PW_DISABLED_CREAT_DB PW_YAD_SET | ||||||
|  |  | ||||||
| cd "$(dirname "`readlink -f "$0"`")" && export PORT_SCRIPTS_PATH="$(pwd)" | cd "$(dirname "`readlink -f "$0"`")" && export PORT_SCRIPTS_PATH="$(pwd)" | ||||||
| cd "${PORT_SCRIPTS_PATH}/../../" && export PORT_WINE_PATH="$(pwd)" | cd "${PORT_SCRIPTS_PATH}/../../" && export PORT_WINE_PATH="$(pwd)" | ||||||
| export PORT_WINE_TMP_PATH="${PORT_WINE_PATH}/data/tmp" | export PORT_WINE_TMP_PATH="${PORT_WINE_PATH}/data/tmp" | ||||||
| @@ -838,6 +437,8 @@ read "portname" < "${PORT_WINE_TMP_PATH}/portname" && export portname | |||||||
| cd "${PORT_SCRIPTS_PATH}" | cd "${PORT_SCRIPTS_PATH}" | ||||||
| . "${PORT_SCRIPTS_PATH}/var" | . "${PORT_SCRIPTS_PATH}/var" | ||||||
|  |  | ||||||
|  | [ -f "${PORT_SCRIPTS_PATH}/autoinstall" ] && try_remove_file "${PORT_SCRIPTS_PATH}/autoinstall" | ||||||
|  |  | ||||||
| if [ ! -f "${PORT_WINE_TMP_PATH}/${portname}_loc" ] ; then | if [ ! -f "${PORT_WINE_TMP_PATH}/${portname}_loc" ] ; then | ||||||
| 	SET_LANG=`zenity --title  "Install $portname" --text "Select the language" --list --radiolist \ | 	SET_LANG=`zenity --title  "Install $portname" --text "Select the language" --list --radiolist \ | ||||||
| 	--column="Set:" --column "Language:" TRUE "RUS" FALSE "ENG" ` | 	--column="Set:" --column "Language:" TRUE "RUS" FALSE "ENG" ` | ||||||
| @@ -845,20 +446,23 @@ if [ ! -f "${PORT_WINE_TMP_PATH}/${portname}_loc" ] ; then | |||||||
| fi | fi | ||||||
| . "${PORT_SCRIPTS_PATH}"/lang | . "${PORT_SCRIPTS_PATH}"/lang | ||||||
|  |  | ||||||
| unset MANGOHUD PW_NO_ESYNC PW_NO_FSYNC PW_VULKAN_USE WINEDLLOVERRIDES PW_NO_WRITE_WATCH PW_CHECK_AUTOINSTAL |  | ||||||
| var_winedlloverride_update "winemenubuilder.exe=" | var_winedlloverride_update "winemenubuilder.exe=" | ||||||
| export urlg="https://portwine-linux.ru/portwine-faq/" | export urlg="https://portwine-linux.ru/portwine-faq/" | ||||||
| export PW_FTP_URL="https://portwine-linux.ru/ftp" | export PW_FTP_URL="https://portwine-linux.ru/ftp" | ||||||
| export PW_WINELIB="${HOME}/.PortWINE/libs${pw_libs_ver}" | export PW_WINELIB="${HOME}/.PortWINE/libs${PW_LIBS_VER}" | ||||||
| export PW_GUI_ICON_PATH="${PORT_WINE_PATH}/data/img/gui" | export PW_GUI_ICON_PATH="${PORT_WINE_PATH}/data/img/gui" | ||||||
| export install_ver=`cat "${PORT_WINE_TMP_PATH}/${portname}_ver" | head -n 1` | export install_ver=`cat "${PORT_WINE_TMP_PATH}/${portname}_ver" | head -n 1` | ||||||
| export WINETRICKS_DOWNLOADER="curl" | export WINETRICKS_DOWNLOADER="curl" | ||||||
|  | export USER_CONF="${PORT_WINE_PATH}/data/user.conf" | ||||||
|  | check_user_conf | ||||||
|  |  | ||||||
| if [ -z "${INSTALLING_PORT}" ] ; then | if [ -z "${INSTALLING_PORT}" ] ; then | ||||||
|     PW_LOAD_LIBS |     . "${USER_CONF}" | ||||||
|     PW_DOWNLOAD_MONO |     pw_download_libs | ||||||
|     PW_DOWNLOAD_GECKO |     pw_download_mono | ||||||
|     PW_UPDATE |     pw_download_gecko | ||||||
|     PW_SCRIPTS_UPDATE |     pw_update_notifier | ||||||
|     PW_INIT_DB |     pw_scripts_update | ||||||
|  |     pw_init_db | ||||||
|  |     . "${USER_CONF}" | ||||||
| fi | fi | ||||||
|   | |||||||
| @@ -5,10 +5,9 @@ | |||||||
| try_remove_file "${PORT_WINE_TMP_PATH}/update_notifier" | try_remove_file "${PORT_WINE_TMP_PATH}/update_notifier" | ||||||
| try_remove_file "${PORT_WINE_TMP_PATH}/init_run_suc" | 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}/settings.desktop" | try_remove_file "${PORT_WINE_PATH}/settings.desktop" | ||||||
| try_remove_file "${PORT_WINE_PATH}/debug.desktop" | try_remove_file "${PORT_WINE_PATH}/debug.desktop" | ||||||
| try_remove_file "${PORT_WINE_PATH}/restart.desktop" | try_remove_file "${PORT_WINE_PATH}/reset.desktop" | ||||||
|  |  | ||||||
| try_remove_dir "${PORT_WINE_PATH}/data/pfx/dosdevices" | try_remove_dir "${PORT_WINE_PATH}/data/pfx/dosdevices" | ||||||
| try_remove_dir "${PORT_WINE_PATH}/Settings" | try_remove_dir "${PORT_WINE_PATH}/Settings" | ||||||
| @@ -42,20 +41,6 @@ echo "Icon="${PORT_WINE_PATH}/data/img/readme.png""	>> "${PORT_WINE_PATH}/${name | |||||||
| echo "URL=${urlg}" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | echo "URL=${urlg}" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||||
| chmod u+x "${PORT_WINE_PATH}/${name_desktop}.desktop" | chmod u+x "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||||
|  |  | ||||||
| for name_desktop in "reset" |  | ||||||
| do |  | ||||||
| 	echo ""[Desktop Entry]" |  | ||||||
| 	"Name=${name_desktop}" |  | ||||||
| 	"Exec=env "${PORT_SCRIPTS_PATH}/${name_desktop}"" |  | ||||||
| 	"Type=Application" |  | ||||||
| 	"Categories=Game" |  | ||||||
| 	"StartupNotify=true" |  | ||||||
| 	"Path="${PORT_SCRIPTS_PATH}/"" |  | ||||||
| 	"Icon="${PORT_WINE_PATH}/data/img/s.png""" > "${PORT_WINE_PATH}/${name_desktop}.desktop" |  | ||||||
| 	chmod u+x "${PORT_WINE_PATH}/${name_desktop}.desktop" |  | ||||||
| done |  | ||||||
| chmod u+x "${PORT_SCRIPTS_PATH}/"* |  | ||||||
|  |  | ||||||
| if [ "${s_install}" = "1" ]; then | if [ "${s_install}" = "1" ]; then | ||||||
| 	echo "Installation completed successfully." | 	echo "Installation completed successfully." | ||||||
| else | else | ||||||
|   | |||||||
| @@ -5,24 +5,25 @@ if [ -f "$1" ]; then | |||||||
|     export portwine_exe="$(readlink -f "$1")" |     export portwine_exe="$(readlink -f "$1")" | ||||||
| fi | fi | ||||||
| . "$(dirname $(readlink -f "$0"))/runlib" | . "$(dirname $(readlink -f "$0"))/runlib" | ||||||
|  | kill_portwine | ||||||
|  |  | ||||||
| PORTWINE_LAUNCH () { | portwine_launch () { | ||||||
|     KILL_PORTWINE |     start_portwine | ||||||
|     START_PORTWINE |  | ||||||
|     PORTWINE_MSI=`basename "${portwine_exe}" | grep .msi` |     PORTWINE_MSI=`basename "${portwine_exe}" | grep .msi` | ||||||
|     PORTWINE_BAT=`basename "${portwine_exe}" | grep .bat` |     PORTWINE_BAT=`basename "${portwine_exe}" | grep .bat` | ||||||
|     if [ ! -z "${PW_VIRTUAL_DESKTOP}" ] && [ "${PW_VIRTUAL_DESKTOP}" == "1" ] ; then |     if [ ! -z "${PW_VIRTUAL_DESKTOP}" ] && [ "${PW_VIRTUAL_DESKTOP}" == "1" ] ; then | ||||||
|         pw_screen_resolution=`xrandr --current | grep "*" | awk '{print $1;}' | head -1` |         pw_screen_resolution=`xrandr --current | grep "*" | awk '{print $1;}' | head -1` | ||||||
|         PW_RUN explorer "/desktop=portwine,${pw_screen_resolution}" "$portwine_exe" |         pw_run explorer "/desktop=portwine,${pw_screen_resolution}" "$portwine_exe" | ||||||
|     elif [ ! -z "${PORTWINE_MSI}" ]; then |     elif [ ! -z "${PORTWINE_MSI}" ]; then | ||||||
|         PW_RUN msiexec /i "$portwine_exe" |         pw_run msiexec /i "$portwine_exe" | ||||||
|     elif [ ! -z "${PORTWINE_BAT}" ] || [ ! -z "${portwine_exe}" ]; then |     elif [ ! -z "${PORTWINE_BAT}" ] || [ ! -z "${portwine_exe}" ]; then | ||||||
|         PW_RUN ${WINE_WIN_START} "$portwine_exe" |         pw_run ${WINE_WIN_START} "$portwine_exe" | ||||||
|     else |     else | ||||||
|         PW_RUN explorer |         pw_run explorer | ||||||
|     fi |     fi | ||||||
| } | } | ||||||
| PORTWINE_CREATE_SHORTCUT () { |  | ||||||
|  | portwine_create_shortcut () { | ||||||
|     if [ ! -z "${portwine_exe}" ]; then |     if [ ! -z "${portwine_exe}" ]; then | ||||||
|         PORTPROTON_EXE="${portwine_exe}" |         PORTPROTON_EXE="${portwine_exe}" | ||||||
|     else |     else | ||||||
| @@ -45,25 +46,11 @@ PORTWINE_CREATE_SHORTCUT () { | |||||||
|         rm -f "${PORTPROTON_PATH}/"*.ico |         rm -f "${PORTPROTON_PATH}/"*.ico | ||||||
|         rm -f "${PORTPROTON_PATH}/"*.png |         rm -f "${PORTPROTON_PATH}/"*.png | ||||||
|     fi |     fi | ||||||
|     if [ ! -z "${PORTWINE_DB}" ]; then |     name_desktop="${PORTPROTON_NAME}" | ||||||
|         PORTWINE_DB_FILE=`grep -il "\#${PORTWINE_DB}.exe" "${PORT_SCRIPTS_PATH}/portwine_db"/*` |  | ||||||
|         if [ ! -z "${PORTWINE_DB_FILE}" ] && [ -z "`cat "${PORTWINE_DB_FILE}"  | grep "export PW_VULKAN_USE=" | grep -v "#"`" ] ; then |  | ||||||
|             echo "export PW_VULKAN_USE=${PW_VULKAN_USE}" >> "${PORTWINE_DB_FILE}" |  | ||||||
|         elif [ -z "${PORTWINE_DB_FILE}" ]; then |  | ||||||
|             echo "#!/bin/bash"  > "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB" |  | ||||||
|             echo "#Author: "${USER}"" >> "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB" |  | ||||||
|             echo "#"${PORTWINE_DB}.exe"" >> "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB" |  | ||||||
|             echo "#Rating=1-5" >> "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB" |  | ||||||
|             echo "########################################################" >> "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB" |  | ||||||
|             echo "export PW_VULKAN_USE=${PW_VULKAN_USE}" >> "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB" |  | ||||||
|             cat "${PORT_SCRIPTS_PATH}/portwine_db/default" | grep "##" >> "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB" |  | ||||||
|         fi |  | ||||||
|     fi |  | ||||||
| name_desktop="${PORTPROTON_NAME}" |  | ||||||
|     echo "[Desktop Entry]" > "${PORT_WINE_PATH}/${name_desktop}.desktop" |     echo "[Desktop Entry]" > "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||||
|     echo "Name=${PORTPROTON_NAME}" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" |     echo "Name=${PORTPROTON_NAME}" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||||
|     if [ -z "${PW_CHECK_AUTOINSTAL}" ] |     if [ -z "${PW_CHECK_AUTOINSTAL}" ] | ||||||
|     then echo "Exec=env PW_GUI_DISABLED_CS=1 "\"${PORT_SCRIPTS_PATH}/start.sh\" \"${PORTPROTON_EXE}\" "" \ |     then echo "Exec=env "\"${PORT_SCRIPTS_PATH}/start.sh\" \"${PORTPROTON_EXE}\" "" \ | ||||||
|     >> "${PORT_WINE_PATH}/${name_desktop}.desktop" |     >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||||
|     else echo "Exec=env "\"${PORT_SCRIPTS_PATH}/start.sh\" \"${PORTPROTON_EXE}\" "" \ |     else echo "Exec=env "\"${PORT_SCRIPTS_PATH}/start.sh\" \"${PORTPROTON_EXE}\" "" \ | ||||||
|     >> "${PORT_WINE_PATH}/${name_desktop}.desktop" |     >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||||
| @@ -80,8 +67,9 @@ name_desktop="${PORTPROTON_NAME}" | |||||||
|     fi |     fi | ||||||
|     xdg-open "${PORT_WINE_PATH}" 2>1 >/dev/null & |     xdg-open "${PORT_WINE_PATH}" 2>1 >/dev/null & | ||||||
| } | } | ||||||
| PORTWINE_DEBUG () { |  | ||||||
|     KILL_PORTWINE | portwine_start_debug () { | ||||||
|  |     kill_portwine | ||||||
|     export PW_LOG=1 |     export PW_LOG=1 | ||||||
|     export PW_WINEDBG_DISABLE=0 |     export PW_WINEDBG_DISABLE=0 | ||||||
|     echo "${port_deb1}" > "${PORT_WINE_PATH}/${portname}.log" |     echo "${port_deb1}" > "${PORT_WINE_PATH}/${portname}.log" | ||||||
| @@ -109,11 +97,15 @@ PORTWINE_DEBUG () { | |||||||
|     echo `ldd --version | grep -m1 ldd | awk '{print $NF}'` >> "${PORT_WINE_PATH}/${portname}.log" |     echo `ldd --version | grep -m1 ldd | awk '{print $NF}'` >> "${PORT_WINE_PATH}/${portname}.log" | ||||||
|     echo "--------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" |     echo "--------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" | ||||||
|     if [ "${PW_VULKAN_USE}" = "0" ]; then echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DX9-11 to OpenGL" >> "${PORT_WINE_PATH}/${portname}.log" |     if [ "${PW_VULKAN_USE}" = "0" ]; then echo "PW_VULKAN_USE=${PW_VULKAN_USE} - DX9-11 to OpenGL" >> "${PORT_WINE_PATH}/${portname}.log" | ||||||
|     elif [ "${PW_VULKAN_USE}" = "dxvk" ]; then  echo "PW_VULKAN_USE=${PW_VULKAN_USE}_v."${PW_DXVK_VER}"" >> "${PORT_WINE_PATH}/${portname}.log" |     elif [ "${PW_VULKAN_USE}" = "dxvk" ]; then  echo "PW_VULKAN_USE=${PW_VULKAN_USE}" >> "${PORT_WINE_PATH}/${portname}.log" | ||||||
|     else echo "PW_VULKAN_USE=${PW_VULKAN_USE}_v."${PW_VKD3D_VER}"" >> "${PORT_WINE_PATH}/${portname}.log" |     else echo "PW_VULKAN_USE=${PW_VULKAN_USE}" >> "${PORT_WINE_PATH}/${portname}.log" | ||||||
|     fi |     fi | ||||||
|  |     echo "--------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" | ||||||
|  |     echo "Version WINE in the Port:" >> "${PORT_WINE_PATH}/${portname}.log" | ||||||
|  |     print_var PW_WINE_USE >> "${PORT_WINE_PATH}/${portname}.log" | ||||||
|  |     [ -f "${WINEDIR}/version" ] && cat "${WINEDIR}/version" >> "${PORT_WINE_PATH}/${portname}.log" | ||||||
|     echo "------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" |     echo "------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" | ||||||
|     echo "Date and time of start debug for ${portname}" >> "${PORT_WINE_PATH}/${portname}.log" |     echo "Date and time of start debug for ${portname}:" >> "${PORT_WINE_PATH}/${portname}.log" | ||||||
|     date >> "${PORT_WINE_PATH}/${portname}.log" |     date >> "${PORT_WINE_PATH}/${portname}.log" | ||||||
|     echo "-----------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" |     echo "-----------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" | ||||||
|     echo "The installation path of the ${portname}:" >> "${PORT_WINE_PATH}/${portname}.log" |     echo "The installation path of the ${portname}:" >> "${PORT_WINE_PATH}/${portname}.log" | ||||||
| @@ -151,12 +143,6 @@ PORTWINE_DEBUG () { | |||||||
|         echo "---------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" |         echo "---------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" | ||||||
|         echo "!!!gamemod not found!!!"  >> "${PORT_WINE_PATH}/${portname}.log" |         echo "!!!gamemod not found!!!"  >> "${PORT_WINE_PATH}/${portname}.log" | ||||||
|     fi |     fi | ||||||
|     echo "--------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" |  | ||||||
|     echo "Version WINE in the Port" >> "${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 "-------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" | ||||||
|     echo "winetricks.log:" >> "${PORT_WINE_PATH}/${portname}.log" |     echo "winetricks.log:" >> "${PORT_WINE_PATH}/${portname}.log" | ||||||
|     cat "${WINEPREFIX}/winetricks.log" >> "${PORT_WINE_PATH}/${portname}.log" |     cat "${WINEPREFIX}/winetricks.log" >> "${PORT_WINE_PATH}/${portname}.log" | ||||||
| @@ -173,96 +159,118 @@ PORTWINE_DEBUG () { | |||||||
|  |  | ||||||
|     export DXVK_HUD="full" |     export DXVK_HUD="full" | ||||||
|  |  | ||||||
|     PORTWINE_LAUNCH & |     portwine_launch & | ||||||
|     sleep 1 && zenity --info --title "DEBUG" --text "${port_debug}" --no-wrap &> /dev/null && KILL_PORTWINE |     sleep 1 && zenity --info --title "DEBUG" --text "${port_debug}" --no-wrap &> /dev/null && kill_portwine | ||||||
|     deb_text=$(cat "${PORT_WINE_PATH}/${portname}.log"  | awk '! a[$0]++')  |     deb_text=$(cat "${PORT_WINE_PATH}/${portname}.log"  | awk '! a[$0]++')  | ||||||
|     echo "$deb_text" > "${PORT_WINE_PATH}/${portname}.log" |     echo "$deb_text" > "${PORT_WINE_PATH}/${portname}.log" | ||||||
|     "$pw_yad" --title="${portname}.log" --borders=10 --no-buttons --text-align=center \ |     "$pw_yad" --title="${portname}.log" --borders=10 --no-buttons --text-align=center \ | ||||||
|     --text-info --show-uri --wrap --center --width=1200 --height=550  --uri-color=red \ |     --text-info --show-uri --wrap --center --width=1200 --height=550  --uri-color=red \ | ||||||
|     --filename="${PORT_WINE_PATH}/${portname}.log" |     --filename="${PORT_WINE_PATH}/${portname}.log" | ||||||
| } | } | ||||||
| PW_WINECFG () { |  | ||||||
|     START_PORTWINE | pw_winecfg () { | ||||||
|     PW_RUN winecfg |     start_portwine | ||||||
|  |     pw_run winecfg | ||||||
| } | } | ||||||
| PW_WINEFILE () { |  | ||||||
|     START_PORTWINE | pw_winefile () { | ||||||
|     PW_RUN explorer |     start_portwine | ||||||
|  |     pw_run explorer | ||||||
| } | } | ||||||
| PW_WINECMD () { |  | ||||||
|  | pw_winecmd () { | ||||||
|     export PW_USE_TERMINAL=1 |     export PW_USE_TERMINAL=1 | ||||||
|     START_PORTWINE |     start_portwine | ||||||
|     cd "${WINEPREFIX}/drive_c" |     cd "${WINEPREFIX}/drive_c" | ||||||
|     ${PW_RUNTIME} xterm -e env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" cmd |     ${pw_runtime} xterm -e env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" cmd | ||||||
| } | } | ||||||
| PW_WINEREG () { |  | ||||||
|     START_PORTWINE | pw_winereg () { | ||||||
|     PW_RUN regedit |     start_portwine | ||||||
|  |     pw_run regedit | ||||||
| } | } | ||||||
| PW_WINETRICKS () { |  | ||||||
|     UPDATE_WINETRICKS | pw_winetricks () { | ||||||
|  |     update_winetricks | ||||||
|     export PW_USE_TERMINAL=1 |     export PW_USE_TERMINAL=1 | ||||||
|     START_PORTWINE |     export PW_WINE_VER="PROTON_STEAM" | ||||||
|     ${PW_TERM} "${PORT_WINE_TMP_PATH}/winetricks" -q |     init_wine_ver | ||||||
|  |     cabextract_fix | ||||||
|  |     start_portwine | ||||||
|  |     ${PW_TERM} "${PORT_WINE_TMP_PATH}/winetricks" -q -f | ||||||
| } | } | ||||||
| PW_EDIT_DB () { |  | ||||||
|     xdg-open "${PORTWINE_DB_FILE}" | pw_edit_db () { | ||||||
|  |     pw_gui_for_edit_db ENABLE_VKBASALT PW_NO_ESYNC PW_NO_FSYNC PW_DXR_ON PW_VULKAN_NO_ASYNC PW_USE_NVAPI \ | ||||||
|  |     PW_OLD_GL_STRING PW_HIDE_NVIDIA_GPU PW_FORCE_USE_VSYNC PW_VIRTUAL_DESKTOP PW_WINEDBG_DISABLE PW_USE_TERMINAL \ | ||||||
|  |     PW_WINE_ALLOW_XIM PW_HEAP_DELAY_FREE PW_NO_WRITE_WATCH PW_GUI_DISABLED_CS | ||||||
|  |     if [ "$?" == 0 ] ; then | ||||||
|  |         /bin/bash -c ${pw_full_command_line[*]} & | ||||||
|  |         exit 0 | ||||||
|  |     fi | ||||||
| } | } | ||||||
| PW_AUTO_INSTALL_FROM_DB () { |  | ||||||
|     . "$PORT_SCRIPTS_PATH/autoinstall" | pw_autoinstall_from_db () { | ||||||
|     $PW_YAD_SET |     kill_portwine | ||||||
|  |     sleep 3 | ||||||
|  |     export PW_USER_TEMP="$WINEPREFIX/drive_c/users/${USER}/Temp" | ||||||
|  |     export PW_FORCE_LARGE_ADDRESS_AWARE=0 | ||||||
|  |     export PW_USE_GAMEMODE=0 | ||||||
|  |     export PW_CHECK_AUTOINSTAL=1 | ||||||
|  |     export PW_GUI_DISABLED_CS=1 | ||||||
|  |     export PW_WINEDBG_DISABLE=1 | ||||||
|  |     export PW_NO_WRITE_WATCH=0 | ||||||
|  |     export PW_VULKAN_USE=0 | ||||||
|  |     unset PW_WINE_VER | ||||||
|  |     export PW_WINE_USE=proton_steam | ||||||
|  |     export PW_NO_FSYNC=1 | ||||||
|  |     export PW_NO_ESYNC=1 | ||||||
|  |     unset PORTWINE_CREATE_SHORTCUT_NAME | ||||||
|  |     export PW_DISABLED_CREAT_DB=1 | ||||||
|  |     . "${PORT_SCRIPTS_PATH}/pw_autoinstall/${PW_YAD_SET}" | ||||||
| } | } | ||||||
|  |  | ||||||
|  | ###MAIN### | ||||||
|  | if [ ! -z "${PORTWINE_DB_FILE}" ] ; then | ||||||
|  |     export YAD_EDIT_DB="--button=EDIT  DB!!${loc_edit_db} ${PORTWINE_DB}:118" | ||||||
|  |     [ -z "${PW_COMMENT_DB}" ] && PW_COMMENT_DB="PortWINE database file for "\"${PORTWINE_DB}"\" was found." | ||||||
|  |     if [ -z "${PW_VULKAN_USE}" ] || [ -z "${PW_WINE_USE}" ] ; then | ||||||
|  |         unset PW_GUI_DISABLED_CS | ||||||
|  |         [ -z "${PW_VULKAN_USE}" ] && export PW_VULKAN_USE=dxvk | ||||||
|  |         [ -z "${PW_WINE_USE}" ] && export PW_WINE_USE=proton_steam | ||||||
|  |     fi | ||||||
|  |     case "${PW_VULKAN_USE}" in | ||||||
|  |         "vkd3d") export PW_DEFAULT_VULKAN_USE='VKD3D  (DX 12 to Vulkan)\!DXVK  (DX 9-11 to Vulkan)\!OPENGL ' ;; | ||||||
|  |             "0") export PW_DEFAULT_VULKAN_USE='OPENGL \!DXVK  (DX 9-11 to Vulkan)\!VKD3D  (DX 12 to Vulkan)' ;; | ||||||
|  |               *) export PW_DEFAULT_VULKAN_USE='DXVK  (DX 9-11 to Vulkan)\!VKD3D  (DX 12 to Vulkan)\!OPENGL ' ;; | ||||||
|  |     esac | ||||||
|  |     case "${PW_WINE_USE}" in | ||||||
|  |         "proton_ge") export PW_DEFAULT_WINE_USE='PROTON_GE   (FSR included)\!PROTON_STEAM' ;; | ||||||
|  |                   *) export PW_DEFAULT_WINE_USE='PROTON_STEAM\!PROTON_GE   (FSR included)' ;; | ||||||
|  |     esac | ||||||
|  | else | ||||||
|  |     export PW_DEFAULT_VULKAN_USE='DXVK  (DX 9-11 to Vulkan)\!VKD3D  (DX 12 to Vulkan)\!OPENGL ' | ||||||
|  |     export PW_DEFAULT_WINE_USE='PROTON_STEAM\!PROTON_GE   (FSR included)' | ||||||
|  |     unset PW_GUI_DISABLED_CS | ||||||
|  | fi | ||||||
| if [ ! -z "${portwine_exe}" ]; then | if [ ! -z "${portwine_exe}" ]; then | ||||||
|     if [ -z "${PW_GUI_DISABLED_CS}" ] || [ "${PW_GUI_DISABLED_CS}" = 0 ] || [ -z "${PW_VULKAN_USE}" ]; then |     if [ -z "${PW_GUI_DISABLED_CS}" ] || [ "${PW_GUI_DISABLED_CS}" = 0 ] ; then | ||||||
|         if [ ! -z "${PORTWINE_DB_FILE}" ] && [ ! -z "${PW_VULKAN_USE}" ]; then |         OUTPUT_START=$("${pw_yad}" --text-align=center --text "$PW_COMMENT_DB" --wrap-width=150 --borders=15 --form --center  \ | ||||||
|             if [ -z "${PW_COMMENT_DB}" ] ; then |  | ||||||
|                 PW_COMMENT_DB="PortWINE database file for "\"${PORTWINE_DB}"\" was found." |  | ||||||
|             fi |  | ||||||
|             OUTPUT_START=$("${pw_yad}" --text-align=center --text "$PW_COMMENT_DB" --wrap-width=150 --borders=15 --form --center  \ |  | ||||||
|             --title "$portname"  --image "$PW_GUI_ICON_PATH/port_proton.png" --separator=";" \ |  | ||||||
|             --window-icon="$PW_GUI_ICON_PATH/port_proton.png" \ |  | ||||||
|             --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 ) |  | ||||||
|             PW_YAD_SET="$?" |  | ||||||
|         elif [ ! -z "${PORTWINE_DB_FILE}" ] && [ -z "${PW_VULKAN_USE}" ]; then |  | ||||||
|             if [ -z "${PW_COMMENT_DB}" ] ; then |  | ||||||
|                 PW_COMMENT_DB="PortWINE database file for "\"${PORTWINE_DB}"\" was found." |  | ||||||
|             fi |  | ||||||
|             OUTPUT_START=$("${pw_yad}" --text-align=center --text "$PW_COMMENT_DB" --wrap-width=150 --borders=15 --form --center  \ |  | ||||||
|             --title "$portname"  --image "$PW_GUI_ICON_PATH/port_proton.png" --separator=";" \ |  | ||||||
|             --window-icon="$PW_GUI_ICON_PATH/port_proton.png" \ |  | ||||||
|             --field="Run with :CB" "DXVK (DX 9-11 to Vulkan)"\!"VKD3D (DX 12 to Vulkan)"\!"OPENGL " \ |  | ||||||
|             --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 ) |  | ||||||
|             PW_YAD_SET="$?" |  | ||||||
|             export VULKAN_MOD=`echo "$OUTPUT_START" | awk '{print $1}'` |  | ||||||
|         else |  | ||||||
|             OUTPUT_START=$("${pw_yad}" --wrap-width=250 --borders=15 --form --center  \ |  | ||||||
|             --title "$portname"  --image "$PW_GUI_ICON_PATH/port_proton.png" --separator=";" \ |  | ||||||
|             --window-icon="$PW_GUI_ICON_PATH/port_proton.png" \ |  | ||||||
|             --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 ) |  | ||||||
|             PW_YAD_SET="$?" |  | ||||||
|             export VULKAN_MOD=`echo "$OUTPUT_START" | awk '{print $1}'` |  | ||||||
|         fi |  | ||||||
|     elif [ ! -z "${PORTWINE_DB_FILE}" ]; then |  | ||||||
|         PORTWINE_LAUNCH |  | ||||||
|     else |  | ||||||
|         OUTPUT_START=$("${pw_yad}" --wrap-width=250 --borders=15 --form --center  \ |  | ||||||
|         --title "$portname"  --image "$PW_GUI_ICON_PATH/port_proton.png" --separator=";" \ |         --title "$portname"  --image "$PW_GUI_ICON_PATH/port_proton.png" --separator=";" \ | ||||||
|         --window-icon="$PW_GUI_ICON_PATH/port_proton.png" \ |         --window-icon="$PW_GUI_ICON_PATH/port_proton.png" \ | ||||||
|         --field="Run with :CB" "DXVK (DX 9-11 to Vulkan)"\!"VKD3D (DX 12 to Vulkan)"\!"OPENGL " \ |         --field="Run with :CB" "${PW_DEFAULT_VULKAN_USE}" \ | ||||||
|  |         --field="Run with :CB" "${PW_DEFAULT_WINE_USE}" \ | ||||||
|  |         --field=":LBL" "" \ | ||||||
|  |         "${YAD_EDIT_DB}" \ | ||||||
|         --button='CREATE SHORTCUT'!!"${loc_creat_shortcut}":100 \ |         --button='CREATE SHORTCUT'!!"${loc_creat_shortcut}":100 \ | ||||||
|         --button='DEBUG'!!"${loc_debug}":102 \ |         --button='DEBUG'!!"${loc_debug}":102 \ | ||||||
|         --button='LAUNCH'!!"${loc_launch}":106 ) |         --button='LAUNCH'!!"${loc_launch}":106 ) | ||||||
|         PW_YAD_SET="$?" |         export PW_YAD_SET="$?" | ||||||
|         export VULKAN_MOD=`echo "$OUTPUT_START" | awk '{print $1}'` |         if [ "$PW_YAD_SET" == "1" ] || [ "$PW_YAD_SET" == "252" ] ; then exit 0 ; fi | ||||||
|  |         export VULKAN_MOD=`echo "${OUTPUT_START}" | grep \;\; | awk -F";" '{print $1}' | awk '{print $1}'` | ||||||
|  |         export PW_WINE_VER=`echo "${OUTPUT_START}" | grep \;\; | awk -F";" '{print $2}' | awk '{print $1}'` | ||||||
|  |     elif [ ! -z "${PORTWINE_DB_FILE}" ]; then | ||||||
|  |         portwine_launch | ||||||
|     fi |     fi | ||||||
| else | else | ||||||
|     button_click () { |     button_click () { | ||||||
| @@ -280,8 +288,43 @@ else | |||||||
|     } |     } | ||||||
|     export -f open_changelog |     export -f open_changelog | ||||||
|  |  | ||||||
|  |     gui_clear_pfx () { | ||||||
|  |         if gui_question "${port_clear_pfx}" ; then | ||||||
|  |             pw_clear_pfx | ||||||
|  |         fi | ||||||
|  |     } | ||||||
|  |     export -f gui_clear_pfx | ||||||
|  |  | ||||||
|  |     gui_rm_portproton () { | ||||||
|  |         if gui_question "${port_del2}" ; then | ||||||
|  |             rm -fr "${PORT_WINE_PATH}" | ||||||
|  |             rm -fr "${HOME}/.PortWINE" | ||||||
|  |             rm -f `grep -il PortProton "${HOME}/.local/share/applications"/*` | ||||||
|  |             update-desktop-database -q "${HOME}/.local/share/applications" | ||||||
|  |         fi | ||||||
|  |         exit 0 | ||||||
|  |     } | ||||||
|  |     export -f gui_rm_portproton | ||||||
|  |  | ||||||
|  |     gui_wine_uninstaller () { | ||||||
|  |         start_portwine | ||||||
|  |         pw_run uninstaller | ||||||
|  |     } | ||||||
|  |     export -f gui_wine_uninstaller | ||||||
|  |  | ||||||
|  |     gui_open_var () { | ||||||
|  |         xdg-open "${PORT_SCRIPTS_PATH}/var" | ||||||
|  |     } | ||||||
|  |     export -f gui_open_var | ||||||
|  |  | ||||||
|     export KEY=$RANDOM |     export KEY=$RANDOM | ||||||
|     "${pw_yad}" --plug=$KEY --tabnum=2 --form --columns=2  --scroll \ |     "${pw_yad}" --plug=$KEY --tabnum=3 --form --columns=2 \ | ||||||
|  |     --field="CLEAR PREFIX":"BTN" '@bash -c "button_click gui_clear_pfx"'  \ | ||||||
|  |     --field="EDIT SCRIPT VAR":"BTN" '@bash -c "button_click gui_open_var"' \ | ||||||
|  |     --field="WINE UNINSTALLER":"BTN" '@bash -c "button_click gui_wine_uninstaller"' \ | ||||||
|  |     --field="REMOVE PORTPROTON":"BTN" '@bash -c "button_click gui_rm_portproton"' & \ | ||||||
|  |  | ||||||
|  |     "${pw_yad}" --plug=$KEY --tabnum=2 --form --columns=3  --scroll  --height=500 \ | ||||||
|     --field="   Wargaming Game Center"!"$PW_GUI_ICON_PATH/wgc.png":"BTN" '@bash -c "button_click PW_WGC"' \ |     --field="   Wargaming Game Center"!"$PW_GUI_ICON_PATH/wgc.png":"BTN" '@bash -c "button_click PW_WGC"' \ | ||||||
|     --field="   Battle.net Launcher"!"$PW_GUI_ICON_PATH/battle_net.png":"BTN" '@bash -c "button_click PW_BATTLE_NET"' \ |     --field="   Battle.net Launcher"!"$PW_GUI_ICON_PATH/battle_net.png":"BTN" '@bash -c "button_click PW_BATTLE_NET"' \ | ||||||
|     --field="   Epic Games Launcher"!"$PW_GUI_ICON_PATH/epicgames.png":"BTN" '@bash -c "button_click PW_EPIC"' \ |     --field="   Epic Games Launcher"!"$PW_GUI_ICON_PATH/epicgames.png":"BTN" '@bash -c "button_click PW_EPIC"' \ | ||||||
| @@ -289,33 +332,44 @@ else | |||||||
|     --field="   Ubisoft Game Launcher"!"$PW_GUI_ICON_PATH/ubc.png":"BTN" '@bash -c "button_click PW_UBC"' \ |     --field="   Ubisoft Game Launcher"!"$PW_GUI_ICON_PATH/ubc.png":"BTN" '@bash -c "button_click PW_UBC"' \ | ||||||
|     --field="   Steam Client Launcher"!"$PW_GUI_ICON_PATH/steam.png":"BTN" '@bash -c "button_click PW_STEAM"' \ |     --field="   Steam Client Launcher"!"$PW_GUI_ICON_PATH/steam.png":"BTN" '@bash -c "button_click PW_STEAM"' \ | ||||||
|     --field="   EVE Online Launcher"!"$PW_GUI_ICON_PATH/eve.png":"BTN" '@bash -c "button_click PW_EVE"' \ |     --field="   EVE Online Launcher"!"$PW_GUI_ICON_PATH/eve.png":"BTN" '@bash -c "button_click PW_EVE"' \ | ||||||
|     --field="   Origin Launcher"!"$PW_GUI_ICON_PATH/origin.png":"BTN" '@bash -c "button_click PW_ORIGIN"' & \ |     --field="   Origin Launcher"!"$PW_GUI_ICON_PATH/origin.png":"BTN" '@bash -c "button_click PW_ORIGIN"' \ | ||||||
|  |     --field="   Bethesda.net Launcher"!"$PW_GUI_ICON_PATH/Bethesda.png":"BTN" '@bash -c "button_click PW_BETHESDA"' \ | ||||||
|  |     --field="   Rockstar Games Launcher"!"$PW_GUI_ICON_PATH/Rockstar.png":"BTN" '@bash -c "button_click PW_ROCKSTAR"' \ | ||||||
|  |     --field="   My.Games Launcher"!"$PW_GUI_ICON_PATH/mygames.png":"BTN" '@bash -c "button_click PW_MYGAMES"' \ | ||||||
|  |     --field="   OSU"!"$PW_GUI_ICON_PATH/osu.png":"BTN" '@bash -c "button_click PW_OSU"' \ | ||||||
|  |     --field="   Glyph Client"!"$PW_GUI_ICON_PATH/glyph.png":"BTN" '@bash -c "button_click  PW_GLYPH"' \ | ||||||
|  |     --field="   Ankama Launcher"!"$PW_GUI_ICON_PATH/ankama.png":"BTN" '@bash -c "button_click PW_ANKAMA"' \ | ||||||
|  |     --field="   Gameforge Client"!"$PW_GUI_ICON_PATH/gameforge.png":"BTN" '@bash -c "button_click  PW_GAMEFORGE"' & \ | ||||||
|  |  | ||||||
|     "${pw_yad}" --plug=${KEY} --tabnum=1 --columns=3 --form --separator=";" \ |     "${pw_yad}" --plug=${KEY} --tabnum=1 --columns=3 --form --separator=";" \ | ||||||
|     --image "$PW_GUI_ICON_PATH/port_proton.png" \ |     --image "$PW_GUI_ICON_PATH/port_proton.png" \ | ||||||
|     --field=":CB" "  DXVK (DX 9-11 to Vulkan)"\!"VKD3D (DX 12 to Vulkan)"\!"OPENGL " \ |     --field=":CB" "  DXVK  (DX 9-11 to Vulkan)"\!"VKD3D  (DX 12 to Vulkan)"\!"OPENGL " \ | ||||||
|     --field=":LBL" "" \ |     --field=":LBL" "" \ | ||||||
|     --field='DEBUG'!!"${loc_debug}":"BTN" '@bash -c "button_click DEBUG"' \ |     --field='DEBUG'!!"${loc_debug}":"BTN" '@bash -c "button_click DEBUG"' \ | ||||||
|     --field='WINECFG'!!"${loc_winecfg}":"BTN" '@bash -c "button_click WINECFG"' \ |     --field='WINECFG'!!"${loc_winecfg}":"BTN" '@bash -c "button_click WINECFG"' \ | ||||||
|     --field="${portname}-${install_ver} (${scripts_install_ver})"!!"":"FBTN" '@bash -c "open_changelog"' \ |     --field=":CB" "  PROTON_STEAM"\!"  PROTON_GE   (FSR included)" \ | ||||||
|     --field=":LBL" "" \ |     --field=":LBL" "" \ | ||||||
|     --field='WINEFILE'!!"${loc_winefile}":"BTN" '@bash -c "button_click WINEFILE"' \ |     --field='WINEFILE'!!"${loc_winefile}":"BTN" '@bash -c "button_click WINEFILE"' \ | ||||||
|     --field='WINECMD'!!"${loc_winecmd}":"BTN" '@bash -c "button_click WINECMD"' \ |     --field='WINECMD'!!"${loc_winecmd}":"BTN" '@bash -c "button_click WINECMD"' \ | ||||||
|     --field="F.A.Q."!!"":"FBTN" '@bash -c "xdg-open https://portwine-linux.ru/portwine-faq/ ; button_click"' \ |     --field="${portname}-${install_ver} (${scripts_install_ver})"!!"":"FBTN" '@bash -c "open_changelog"' \ | ||||||
|     --field=":LBL" "" \ |     --field=":LBL" "" \ | ||||||
|     --field='WINEREG'!!"${loc_winereg}":"BTN" '@bash -c "button_click WINEREG"' \ |     --field='WINEREG'!!"${loc_winereg}":"BTN" '@bash -c "button_click WINEREG"' \ | ||||||
|     --field='WINETRICKS'!!"${loc_winetricks}":"BTN" '@bash -c "button_click WINETRICKS"' &> "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan" & \ |     --field='WINETRICKS'!!"${loc_winetricks}":"BTN" '@bash -c "button_click WINETRICKS"' &> "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan" & \ | ||||||
|  |  | ||||||
|     "${pw_yad}" --key=$KEY --notebook --borders=10 --width=1000 --height=168 --no-buttons --text-align=center \ |     "${pw_yad}" --key=$KEY --notebook --borders=10 --width=1000 --height=168 --no-buttons --text-align=center \ | ||||||
|     --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "$portname" --separator=";" \ |     --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "$portname" --separator=";" \ | ||||||
|     --tab-pos=right --tab="PORT_PROTON" --tab="AUTOINSTALL" --center  |     --tab-pos=right --tab="PORT_PROTON" --tab="AUTOINSTALL" --tab="    SETTINGS" --center | ||||||
|  |     YAD_STATUS="$?" | ||||||
|  |     if [ "$YAD_STATUS" == "1" ] || [ "$YAD_STATUS" == "252" ] ; then exit 0 ; fi | ||||||
|  |  | ||||||
|     if [ -f "${PORT_WINE_TMP_PATH}/tmp_yad_form" ] ; then |     if [ -f "${PORT_WINE_TMP_PATH}/tmp_yad_form" ] ; then | ||||||
|         export PW_YAD_SET=`cat "${PORT_WINE_TMP_PATH}/tmp_yad_form" | head -n 1 | awk '{print $1}'` |         export PW_YAD_SET=`cat "${PORT_WINE_TMP_PATH}/tmp_yad_form" | head -n 1 | awk '{print $1}'` | ||||||
|         try_remove_file "${PORT_WINE_TMP_PATH}/tmp_yad_form" |         try_remove_file "${PORT_WINE_TMP_PATH}/tmp_yad_form" | ||||||
|     fi |     fi | ||||||
|     if [ -f "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan" ] ; then |     if [ -f "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan" ] ; then | ||||||
|         export VULKAN_MOD=`cat "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan" | grep \;\; | awk '{print $1}'` |         cat "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan" | ||||||
|  |         export VULKAN_MOD=`cat "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan" | grep \;\; | awk '{print $1}' | awk -F";" '{print $1}'` | ||||||
|  |         export PW_WINE_VER=`cat "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan" | grep \;\; | awk -F";" '{print $5}' | awk '{print $1}'` | ||||||
|         try_remove_file "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan" |         try_remove_file "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan" | ||||||
|     fi |     fi | ||||||
| fi | fi | ||||||
| @@ -325,18 +379,40 @@ if [ ! -z "${VULKAN_MOD}" ] ; then | |||||||
|     elif [ "${VULKAN_MOD}" = "OPENGL" ]; then export PW_VULKAN_USE="0" |     elif [ "${VULKAN_MOD}" = "OPENGL" ]; then export PW_VULKAN_USE="0" | ||||||
|     fi |     fi | ||||||
| fi | fi | ||||||
|  |  | ||||||
|  | init_wine_ver | ||||||
|  |  | ||||||
|  | if [ -z "${PW_DISABLED_CREAT_DB}" ] ; then | ||||||
|  |     if [ ! -z "${PORTWINE_DB}" ] ; then | ||||||
|  |         PORTWINE_DB_FILE=`grep -il "\#${PORTWINE_DB}.exe" "${PORT_SCRIPTS_PATH}/portwine_db"/*` | ||||||
|  |         if [ -z "${PORTWINE_DB_FILE}" ] ; then | ||||||
|  |             echo "#!/bin/bash"  > "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB" | ||||||
|  |             echo "#Author: "${USER}"" >> "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB" | ||||||
|  |             echo "#"${PORTWINE_DB}.exe"" >> "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB" | ||||||
|  |             echo "#Rating=1-5" >> "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB" | ||||||
|  |             cat "${PORT_SCRIPTS_PATH}/portwine_db/default" | grep "##" >> "${PORT_SCRIPTS_PATH}/portwine_db/$PORTWINE_DB" | ||||||
|  |             export PORTWINE_DB_FILE="${PORT_SCRIPTS_PATH}/portwine_db/${PORTWINE_DB}" | ||||||
|  |         fi | ||||||
|  |         edit_db_from_gui PW_VULKAN_USE PW_WINE_USE | ||||||
|  |     fi | ||||||
|  | fi | ||||||
|  | echo "PW_YAD_SET=$PW_YAD_SET" | ||||||
| case "$PW_YAD_SET" in | case "$PW_YAD_SET" in | ||||||
|     1|252) exit 0 ;; |     1|252) exit 0 ;; | ||||||
|     100) PORTWINE_CREATE_SHORTCUT ;; |     100) portwine_create_shortcut ;; | ||||||
|     DEBUG|102) PORTWINE_DEBUG ;; |     DEBUG|102) portwine_start_debug ;; | ||||||
|     106) PORTWINE_LAUNCH ;; |     106) portwine_launch ;; | ||||||
|     WINECFG|108) PW_WINECFG ;; |     WINECFG|108) pw_winecfg ;; | ||||||
|     WINEFILE|110) PW_WINEFILE ;; |     WINEFILE|110) pw_winefile ;; | ||||||
|     WINECMD|112) PW_WINECMD ;; |     WINECMD|112) pw_winecmd ;; | ||||||
|     WINEREG|114) PW_WINEREG ;; |     WINEREG|114) pw_winereg ;; | ||||||
|     WINETRICKS|116) PW_WINETRICKS ;; |     WINETRICKS|116) pw_winetricks ;; | ||||||
|     118) PW_EDIT_DB ;; |     118) pw_edit_db ;; | ||||||
|     *) PW_AUTO_INSTALL_FROM_DB ;; |     gui_clear_pfx) gui_clear_pfx ;; | ||||||
|  |     gui_open_var) gui_open_var ;; | ||||||
|  |     gui_wine_uninstaller) gui_wine_uninstaller ;; | ||||||
|  |     gui_rm_portproton) gui_rm_portproton ;; | ||||||
|  |     *) pw_autoinstall_from_db ;; | ||||||
| esac | esac | ||||||
| ######################################################################## |  | ||||||
| STOP_PORTWINE | stop_portwine | ||||||
|   | |||||||
| @@ -1,52 +1,65 @@ | |||||||
| #!/bin/bash | #!/bin/bash | ||||||
| # Author: Castro-Fidel (PortWINE-Linux.ru) | #Author: Castro-Fidel (PortWINE-Linux.ru) | ||||||
|  | #SCRIPTS_NEXT_VERSION=2011 | ||||||
| ######################################################################## | ######################################################################## | ||||||
| #export PW_MANGOHUD=1 | export PW_MANGOHUD=1 | ||||||
| #export MANGOHUD_CONFIG=full,height=500,font_size=24,position=top-left,toggle_hud=F12 | export MANGOHUD_CONFIG=font_size=24,position=top-left,toggle_hud=Shift_R+F12,no_display,resolution,wine,gpu_name,vulkan_driver,gpu_stats,vkbasalt | ||||||
| #export DXVK_HUD=fps,devinfo | #export DXVK_HUD=fps,devinfo | ||||||
|  | #export ENABLE_VKBASALT=1 | ||||||
| #export PW_VIRTUAL_DESKTOP=1 | #export PW_VIRTUAL_DESKTOP=1 | ||||||
|  |  | ||||||
|  | #export PW_XKBD_RU_HACK=1 | ||||||
| export PW_USE_RUNTIME=1     # 0 - disabled; 1 - enabled | export PW_USE_RUNTIME=1     # 0 - disabled; 1 - enabled | ||||||
| export PW_RT_MOUNT_RO=("${HOME}/.PortWINE") | export PW_RT_MOUNT_RO=("${HOME}/.PortWINE") | ||||||
| export PW_RT_MOUNT_RW=("/media" "/mnt" "/run/media/${USER}" "${PORT_WINE_PATH}") | export PW_RT_MOUNT_RW=("/media" "/mnt" "/run/media/${USER}" "${PORT_WINE_PATH}") | ||||||
|  | #export PW_SANDBOX_HOME_PATH="${PORT_WINE_PATH}" | ||||||
|  |  | ||||||
|  | export PW_NO_ESYNC=1 | ||||||
| export PW_USE_GAMEMODE=1 | export PW_USE_GAMEMODE=1 | ||||||
| export PW_FORCE_USE_VSYNC=2 | export PW_FORCE_USE_VSYNC=2 | ||||||
| export PW_LOG=0 | export PW_LOG=0 | ||||||
| export PW_TERM="" | export PW_TERM="" | ||||||
| export PW_USE_TERMINAL=0 | export PW_USE_TERMINAL=0 | ||||||
|  | export PW_MUST_HAVE_DLL="d3dx9_43 physx mfc42 vcrun2019 d3dcompiler_42 d3dcompiler_43 d3dcompiler_47 d3dx9" | ||||||
| export PW_WINEDBG_DISABLE=1 | export PW_WINEDBG_DISABLE=1 | ||||||
|  |  | ||||||
| export PW_WINDOWS_VER="10" | export PW_WINDOWS_VER="10" | ||||||
| export WINEARCH="win64" | export WINEARCH="win64" | ||||||
|  | export PW_LIBS_VER="_v17" | ||||||
|  | export PORTWINE_URL="http://portwine-linux.ru/" | ||||||
|  | export GDK_BACKEND="x11" | ||||||
|  |  | ||||||
| export mono_ver=6.1.2 | export PW_PROTON_GE_VER="6.16-GE-1" | ||||||
| export gecko_ver=2.47.2 | export PW_MONO_VER="6.3.0" | ||||||
| export pw_libs_ver="_v15" | export PW_GECKO_VER="2.47.2" | ||||||
|  |  | ||||||
| export WINEDIR="${PORT_WINE_PATH}/data/dist" |  | ||||||
| export WINEPREFIX="${PORT_WINE_PATH}/data/pfx" | export WINEPREFIX="${PORT_WINE_PATH}/data/pfx" | ||||||
| export WINE_WIN_START="start.exe /i /unix" | export WINE_WIN_START="start.exe /i /unix" | ||||||
|  | export WINE_FULLSCREEN_FSR="1" | ||||||
|  | export WINE_FULLSCREEN_FSR_STRENGTH="2" | ||||||
|  |  | ||||||
| export porturl="http://portwine-linux.ru/" | ################################################################# | ||||||
|  | add_in_start_portwine () | ||||||
| export PW_MUST_HAVE_DLL="" |  | ||||||
| ######################################################################## |  | ||||||
| ADD_IN_START_PORTWINE () |  | ||||||
| { | { | ||||||
| echo " " | echo " " | ||||||
| } | } | ||||||
| ######################################################################## | ######################################################################## | ||||||
| ADD_IN_STOP_PORTWINE () | add_in_stop_portwine () | ||||||
| { | { | ||||||
| echo " " | echo " " | ||||||
| } | } | ||||||
| ######################################################################## | ######################################################################## | ||||||
| PW_OTHER_FIXES () { | pw_other_fixes () { | ||||||
|     #fix after installation Origin, for disabled OriginWebHelperService by default | #fix after installation Origin, for disabled OriginWebHelperService by default | ||||||
|     if [ ! -z `cat "${WINEPREFIX}/system.reg" | grep Origin.exe | head -n 1 | awk '{print $1}'` ] ; then | if [ ! -z `cat "${WINEPREFIX}/system.reg" | grep -wm 1 "Origin.exe" | awk '{print $1}'` ] ; then | ||||||
|         sysreg_norig=$(((`cat -n "${WINEPREFIX}/system.reg" | grep OriginWebHelperService | awk '{print $1}'` + 3))) |     sysreg_norig=$(((`cat -n "${WINEPREFIX}/system.reg" | grep OriginWebHelperService | awk '{print $1}'` + 3))) | ||||||
|  |     sed -i "${sysreg_norig}s/dword:0000000[1-2]/dword:00000003/" "${WINEPREFIX}/system.reg" | ||||||
|  | fi | ||||||
|  | #fix after installation PnkBstr*, for disabled PnkBstr* by default | ||||||
|  | for fix_reg in "PnkBstrA.exe" "PnkBstrB.exe" ; do | ||||||
|  |     if [ ! -z `cat "${WINEPREFIX}/system.reg" | grep -wm 1 "${fix_reg}" | awk '{print $1}'` ] ; then | ||||||
|  |         sysreg_norig=$(((`cat -n "${WINEPREFIX}/system.reg" | grep "${fix_reg}" | awk '{print $1}'` + 3))) | ||||||
|         sed -i "${sysreg_norig}s/dword:0000000[1-2]/dword:00000003/" "${WINEPREFIX}/system.reg" |         sed -i "${sysreg_norig}s/dword:0000000[1-2]/dword:00000003/" "${WINEPREFIX}/system.reg" | ||||||
|     fi |     fi | ||||||
|  | done | ||||||
| } | } | ||||||
|  | ###FOR_OLD_VERSION_PORTPROTON### | ||||||
|  | #SCRIPTS_VERSION=1000 | ||||||
|   | |||||||