Compare commits

...

21 Commits

Author SHA1 Message Date
9933accd7f ###Scripts version 1117### 2021-07-12 21:14:06 +03:00
0282a77a3c ###Scripts version 1116_3### 2021-07-12 20:37:27 +03:00
5bd52d7a36 ###Scripts version 1116_2### 2021-07-12 20:32:22 +03:00
59826da654 ###Scripts version 1116### 2021-07-12 20:19:54 +03:00
603d0d8821 ###Scripts version 1115### 2021-07-12 20:08:21 +03:00
f4d3684556 ###Scripts version 1114 and 1115### 2021-07-12 20:06:00 +03:00
0391f33674 ###Scripts version 1114### 2021-07-12 19:38:55 +03:00
df9128143c ###Scripts version 1113###
2
2021-07-09 12:33:43 +03:00
83a18e538a ###Scripts version 1113### 2021-07-06 12:42:49 +03:00
ebbdaed92d ###Scripts version 1110### 2021-06-26 19:32:54 +03:00
d32f5b1cc5 ###Scripts version 1109### 2021-06-25 19:59:35 +03:00
78552187f0 ###Scripts version 1107### 2021-06-20 21:02:53 +03:00
62651c1d93 ###Scripts version 1105### 2021-06-16 17:58:02 +03:00
295d028ba7 ###Scripts version 1104### 2021-06-14 22:22:00 +03:00
1c9f91675f ###Scripts version 1101### 2021-06-09 14:44:12 +03:00
1b632c2764 ###Scripts version 1097### 2021-05-31 16:09:43 +03:00
ef0b8f7689 ###Scripts version 1093### 2021-05-30 21:33:43 +03:00
c818fdb2ad ###Scripts version 1091### 2021-05-28 00:46:50 +03:00
aec5cd6083 Scripts version 1090 2021-05-27 01:53:55 +03:00
7021c0355b ###Scripts version 1087### 2021-05-21 22:46:08 +03:00
72329c2477 ###Scripts version 1080### 2021-05-19 20:06:59 +03:00
74 changed files with 1484 additions and 670 deletions

View File

@ -1,221 +0,0 @@
Copyright (c) 2018-2020, Valve Corporation
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation and/or
other materials provided with the distribution.
3. Neither the name of the copyright holder nor the names of its contributors
may be used to endorse or promote products derived from this software without
specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Browse the source code for more information
https://github.com/ValveSoftware/Proton
---- ---- ---- ----
This software contains a modified version of Wine licensed under the LGPL 2.1. Wine is
Copyright (c) 1993-2020 the Wine project authors
Visit Wine at
https://winehq.org
View our modifications at
https://github.com/ValveSoftware/wine
---- ---- ---- ----
This software contains a modified version of DXVK licensed under the zlib/libpng license. DXVK is
Copyright (c) 2017-2020 Philip Rebohle
Copyright (c) 2019-2020 Joshua Ashton
Visit DXVK at
https://github.com/doitsujin/dxvk
View our modifications at
https://github.com/ValveSoftware/dxvk
---- ---- ---- ----
This software contains FAudio licensed under the zlib license. FAudio is
Copyright (c) 2011-2020 Ethan Lee, Luigi Auriemma, and the MonoGame Team
Visit FAudio at
https://github.com/FNA-XNA/FAudio
---- ---- ---- ----
This software contains some Liberation Fonts licensed under the SIL Open Font License, available at LICENSE.OFL. These fonts are
Copyright (c) 2010 Google Corporation
Copyright (c) 2012 Red Hat, Inc.
Visit Liberation Fonts at
https://github.com/liberationfonts/liberation-fonts
---- ---- ---- ----
This software contains Source Han Sans licensed under the SIL Open Font License, available at LICENSE.OFL. This font is
Copyright 2014-2019 Adobe (http://www.adobe.com/)
Visit Source Han Sans at
https://github.com/adobe-fonts/source-han-sans
---- ---- ---- ----
This software contains wine-mono, parts of which are included under a variety of licenses.
Parts of Mono (mono/) are variously licensed under the GPL, LGPL, and MIT X11 licenses. All parts are available as LGPL or MIT X11 except for the following:
* The ICSharpCode.SharpZipLib library is available as GPL with an exception (see mono/mcs/class/ICSharpCode.SharpZipLib/README).
* mcs/jay is BSD-licensed.
The Visual Basic class libraries (mono-basic/) are MIT X11. The compiler is LGPL v2.
FNA is a mix of MSPL and MIT. It has the following library dependencies:
* FAudio, MojoShader, Theorafile, SDL2, SDL_image_compact, and SDL2-CS are zlib-licensed. SDL2-CS is built into FNA.dll.
* FNA.NetStub is MSPL.
The winforms and wpf libraries are MIT.
wine-mono itself is included under the MIT license. wine-mono is
Copyright (c) 2012 Vincent Povirk for CodeWeavers
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
Visit wine-mono at
https://github.com/madewokherd/wine-mono
View wine-mono's complete license at
https://github.com/madewokherd/wine-mono/blob/master/COPYING
---- ---- ---- ----
This software contains wine-gecko, parts of which are included under a variety of licenses.
wine-gecko itself is included under the Mozilla Public License 2.0.
wine-gecko is available in Source Code form at
https://sourceforge.net/p/wine/wine-gecko
---- ---- ---- ----
This software contains a modified version of Vkd3d licensed under the LGPL 2.1. Vkd3d is
Copyright 2016-2019 the Vkd3d project authors
Visit Vkd3d at
https://source.winehq.org/git/vkd3d.git
View our modifications at
https://github.com/ValveSoftware/vkd3d
---- ---- ---- ----
Parts of this software are based on the OpenVR SDK, which is
Copyright (c) 2015, Valve Corporation
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice, this
list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation and/or
other materials provided with the distribution.
3. Neither the name of the copyright holder nor the names of its contributors
may be used to endorse or promote products derived from this software without
specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
Visit OpenVR at
https://github.com/ValveSoftware/openvr
---- ---- ---- ----
Parts of this software are based on the AMD AGS library, which is
Copyright (c) 2017 Advanced Micro Devices, Inc. All rights reserved.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.

View File

@ -2,19 +2,177 @@
----------------------------------------- -----------------------------------------
В планах: В планах:
* создать ветку beta на github и сделать выбор версии внутри порта * создать ветку beta на github и сделать выбор версии внутри порта
* проверить Overwatch
* перенести reset в GUI PortProton
* добавить фикс установки dotnet * добавить фикс установки dotnet
* добавить кнопку очистки префикса в PortProton
* проверка версий и обновления скриптов из https://github.com/Castro-Fidel/PortWINE/archive/refs/heads/master.zip
* EDIT DB открывается не у всех
* пересоздать удаление PortProton (чистка ярлыков в меню с помощью grep "путь до порта")
* проверить windows steam под PortProton
* создать defaut префикс и сделать авто симлинки в другие префиксы (games, programm files, users)
* иконка в трей для PortProton
* добавить контроль за окнами для правильного отключения прогресс бара * добавить контроль за окнами для правильного отключения прогресс бара
* зарабатывать на жизнь развитием проекта с помощью вашей подписки на https://boosty.to/portwine-linux.ru * заниматься только развитием проекта за счет вашей подписки на https://boosty.to/portwine-linux.ru
----------------------------------------- -----------------------------------------
###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
* cтабильная версия wine proton 6.3-4
* стабильные версии новых скриптов 1101
###Scripts version 1101###
* переделан запуск контейнера (исправлены проблемы с правильной подгрузкой библиотек)
* автоматическая установка DLL в префикс выполняется под контейнером
* winecmd запускается из под xterm установленного в контейнер, что избавляет xterm как зависимость.
* vcrun2019 снова устанавливается в штатном режиме
* исправлена ошибка в скрипте при монтировании в контейнер
* добавлено отображение скорости интернета и примерный остаток времени при скачивании libs, gecko, mono
###PortProton-86###
* обновлен wine до версии GE 2
* обновлены либы до версии libs_v15
### Скрипты с версии 1095 по 1100 - эксперементальные ###
###Scripts version 1094###
* немного ускорена инициализация префикса
* расширена функция чистки префикса
* исправлено определение использования RUNTIME в логах
* ${HOME}/.PortWINE под контейнетом всегда доступен, но только для чтения
* добавлен автоматический проброс /media и /mnt в контейнер порта что позволяет запускать игры и программы установленные не в домашнем каталоге, как если бы порт работал без контейнера
* в AUTOINSTALL добавлены лаунчены UPLAY и STEAM
* тестовый фикс пропадания текстур под DXVK на некоторых системах
* для систем основанных на Arch добавлен автоматический проброс /run/media
* все основные настройки контейнера перенесены в скрипт var: PW_RT_MOUNT_RO - только для чтения; PW_RT_MOUNT_RW - чтение и запись (пути писать в ковычках и разделять пробелом) Пример: PW_RT_MOUNT_RW=("/media" "/mnt" "/run/media/${USER}")
###Scripts version 1093###
* возвращена переменная в скрипте var: WINE_WIN_START="start.exe /i /unix" что возвращает запуск .bat файлов и решает проблему с запуском игры WoT из WGC
###Scripts version 1092###
* исправлена автоустановка WGC под запуском в контейнерном режиме
* добавлен фикс работы старых версий порта с новыми скриптами
* частичный откат кода со скриптов от PortProton-78
* контейнерный режим включен по умолчанию и отключается в скрипте "каталог_порта/data/scripts/var" переменной PW_USE_RUNTIME=(1 - включен; 0 - выключен)
###PortProton-85### 27.05.2021 ###Scripts version 1090###
* для подготовки к релизу используется стабилная версия wine: Proton 6.3-4
* до 4-x прибавка в ФПС в играх DX12 (на моем железе: HZD - x4; Graven - x2; Cyberpunk2077 - x1,25)
* глобальное изменение использование переменных (системных, wine и vulkan)
* в лог файл добавлена информация о текущей версии скриптов и используется ли RUNTIME
* возврат оригинальных значений системных переменных: PATH, LD_LIBRARY_PATH после окончания использования порта
* HOTFIX - убрано повторное исполнение функции START_PORTWINE во время запуска debug
* HOTFIX - исправлены возможные проблемы старых игр использующие WMF
* HOTFIX - ошибки скачивания vcrun2019 на чистом префиксе
###PortProton-84### 23.05.2021 ###Scripts version 1089### - BETA
* обновлен WINE до версии Proton 6.9 GE 1
* контейнерный режим включен по умолчанию и отключается с помощью раскомментирования переменной в скрипте var #export PW_USE_RUNTIME=1
* более чем в 2 раза увеличена производительность игр под VKD3D (Cyberpunk2077 и т.п.) за счет исползования dxgi из dxvk под vkd3d
* для префикса по умолчанию включена версия windows 10
* реализовано создание символьных ссылок с библиотек gstreamer в контейнер runtime для исправления ошибок WMF (gst)
###Scripts version 1088###
* реализовано создание символьных ссылок с библиотек wine в контейнер runtime для исправления ошибок XACT (faudio)
###Scripts version 1087###
* добавлен вопрос об обновлении скриптов
* HOTFIX - полностью убрана переменная WINE_WIN_START
###Scripts version 1086###
* HOTFIX - изменена переменная export WINE_WIN_START="start.exe /b"
###Scripts version 1085###
* в скрипт var добавлена и временно включена переменная export PW_USE_RUNTIME=1 (требуется рашение проблемы с загрузкой faudio)
* добавлено автоматическое создание каталога "${WINEPREFIX}/drive_c/users/Public/Documents/Steam"
* HOTFIX - обновление скриптов после установки происходило только при повторном запуске порта
###Scripts version 1084###
* фикc запуска gui winetricks c терминалом
###Scripts version 1083###
* временно вернул работу winetricks без использования контейнера
###Scripts version 1082###
* HOTFIX - смена версии cabextract внутри libs_v14
###Scripts version 1081###
* HOTFIX - автоматичкское удаление wget из libs_v14, что бы winetricks использовал curl для скачивания
###PortProton-80### 19.05.2021 ###Scripts version 1080###
* обновлен WINE до версии Proton 6.8 GE 1
* обновлен контейнер в libs_v14 до версии Debian 10.9
* добавлен аргумент запуска RUNTIME "--filesystem=${PORT_WINE_PATH}" для возможности установки и использования порта вне $HOME
* перенос создания символьной ссылки на drive_c из скрипта setup в runlib
###Scripts version 1079### ###Scripts version 1079###
* HOTFIX - libs_v13 исправленна битая ссылка c "runtime/lib64/ld-linux-x86-64.so.2" на "../lib/x86_64-linux-gnu/ld-2.15.so" * HOTFIX - libs_v13 исправленна битая ссылка c "runtime/lib64/ld-linux-x86-64.so.2" на "../lib/x86_64-linux-gnu/ld-2.15.so"

View File

@ -2,7 +2,7 @@
# rather than when creating the swap chain. Some games that start # rather than when creating the swap chain. Some games that start
# rendering with a different graphics API may require this option, # rendering with a different graphics API may require this option,
# or otherwise the window may stay black. # or otherwise the window may stay black.
# #
# Supported values: True, False # Supported values: True, False
# dxgi.deferSurfaceCreation = False # dxgi.deferSurfaceCreation = False
@ -12,7 +12,7 @@
# Enforce a stricter maximum frame latency. Overrides the application # Enforce a stricter maximum frame latency. Overrides the application
# setting specified by calling IDXGIDevice::SetMaximumFrameLatency. # setting specified by calling IDXGIDevice::SetMaximumFrameLatency.
# Setting this to 0 will have no effect. # Setting this to 0 will have no effect.
# #
# Supported values : 0 - 16 # Supported values : 0 - 16
# dxgi.maxFrameLatency = 0 # dxgi.maxFrameLatency = 0
@ -73,7 +73,7 @@
# True enables the mailbox present mode in case regular Vsync is disabled. # True enables the mailbox present mode in case regular Vsync is disabled.
# This should avoid tearing, but may be unsupported on some systems # This should avoid tearing, but may be unsupported on some systems
# or require setting dxgi.numBackBuffers to a higher value in order # or require setting dxgi.numBackBuffers to a higher value in order
# to work properly. # to work properly.
# #
# False enables the relaxed fifo present mode in case regular Vsync is enabled. # False enables the relaxed fifo present mode in case regular Vsync is enabled.
# This should result in tearing but reduce stutter if FPS are too low, # This should result in tearing but reduce stutter if FPS are too low,
@ -116,14 +116,14 @@
# Overrides the maximum allowed tessellation factor. This can be used to # Overrides the maximum allowed tessellation factor. This can be used to
# improve performance in titles which overuse tessellation. # improve performance in titles which overuse tessellation.
# #
# Supported values: Any number between 8 and 64 # Supported values: Any number between 8 and 64
# d3d11.maxTessFactor = 0 # d3d11.maxTessFactor = 0
# Enables relaxed pipeline barriers around UAV writes. # Enables relaxed pipeline barriers around UAV writes.
# #
# This may improve performance in some games, but may also introduce # This may improve performance in some games, but may also introduce
# rendering issues. Please don't report bugs with the option enabled. # rendering issues. Please don't report bugs with the option enabled.
# #
@ -135,7 +135,7 @@
# Overrides anisotropic filtering for all samplers. Set this to a positive # Overrides anisotropic filtering for all samplers. Set this to a positive
# value to enable AF for all samplers in the game, or to 0 in order to # value to enable AF for all samplers in the game, or to 0 in order to
# disable AF entirely. Negative values will have no effect. # disable AF entirely. Negative values will have no effect.
# #
# Supported values: Any number between 0 and 16 # Supported values: Any number between 0 and 16
# d3d11.samplerAnisotropy = -1 # d3d11.samplerAnisotropy = -1
@ -168,7 +168,7 @@
# Sets number of pipeline compiler threads. # Sets number of pipeline compiler threads.
# #
# Supported values: # Supported values:
# - 0 to automatically determine the number of threads to use # - 0 to automatically determine the number of threads to use
# - any positive number to enforce the thread count # - any positive number to enforce the thread count
@ -177,13 +177,13 @@
# Toggles raw SSBO usage. # Toggles raw SSBO usage.
# #
# Uses storage buffers to implement raw and structured buffer # Uses storage buffers to implement raw and structured buffer
# views. Enabled by default on hardware which has a storage # views. Enabled by default on hardware which has a storage
# buffer offset alignment requirement of 4 Bytes (e.g. AMD). # buffer offset alignment requirement of 4 Bytes (e.g. AMD).
# Enabling this may improve performance, but is not safe on # Enabling this may improve performance, but is not safe on
# hardware with higher alignment requirements. # hardware with higher alignment requirements.
# #
# Supported values: # Supported values:
# - Auto: Don't change the default # - Auto: Don't change the default
# - True, False: Always enable / disable # - True, False: Always enable / disable
@ -192,13 +192,13 @@
# Toggles early discard. # Toggles early discard.
# #
# Uses subgroup operations to determine whether it is safe to # Uses subgroup operations to determine whether it is safe to
# discard fragments before the end of a fragment shader. This # discard fragments before the end of a fragment shader. This
# is enabled by default on all drivers except RADV and Nvidia. # is enabled by default on all drivers except RADV and Nvidia.
# Enabling this may improve or degrade performance depending # Enabling this may improve or degrade performance depending
# on the game and hardware, or cause other issues. # on the game and hardware, or cause other issues.
# #
# Supported values: # Supported values:
# - Auto: Don't change the default # - Auto: Don't change the default
# - True, False: Always enable / disable # - True, False: Always enable / disable
@ -221,19 +221,19 @@
# Sets enabled HUD elements # Sets enabled HUD elements
# #
# Behaves like the DXVK_HUD environment variable if the # Behaves like the DXVK_HUD environment variable if the
# environment variable is not set, otherwise it will be # environment variable is not set, otherwise it will be
# ignored. The syntax is identical. # ignored. The syntax is identical.
# dxvk.hud = # dxvk.hud =
# Reported shader model # Reported shader model
# #
# The shader model to state that we support in the device # The shader model to state that we support in the device
# capabilities that the applicatation queries. # capabilities that the applicatation queries.
# #
# Supported values: # Supported values:
# - 1: Shader Model 1 # - 1: Shader Model 1
# - 2: Shader Model 2 # - 2: Shader Model 2
@ -243,7 +243,7 @@
# Evict Managed on Unlock # Evict Managed on Unlock
# #
# Decides whether we should evict managed resources from # Decides whether we should evict managed resources from
# system memory when they are unlocked entirely. # system memory when they are unlocked entirely.
# #
@ -254,7 +254,7 @@
# DPI Awareness # DPI Awareness
# #
# Decides whether we should call SetProcessDPIAware on device # Decides whether we should call SetProcessDPIAware on device
# creation. Helps avoid upscaling blur in modern Windows on # creation. Helps avoid upscaling blur in modern Windows on
# Hi-DPI screens/devices. # Hi-DPI screens/devices.
@ -266,7 +266,7 @@
# Strict Constant Copies # Strict Constant Copies
# #
# Decides whether we should always copy defined constants to # Decides whether we should always copy defined constants to
# the UBO when relative addressing is used, or only when the # the UBO when relative addressing is used, or only when the
# relative addressing starts a defined constant. # relative addressing starts a defined constant.
@ -278,7 +278,7 @@
# Strict Pow # Strict Pow
# #
# Decides whether we have an opSelect for handling pow(0,0) = 0 # Decides whether we have an opSelect for handling pow(0,0) = 0
# otherwise it becomes undefined. # otherwise it becomes undefined.
# #
@ -309,7 +309,7 @@
# - Memory Tracking Testing: True, False # - Memory Tracking Testing: True, False
# d3d9.maxAvailableMemory = 1024 # d3d9.maxAvailableMemory = 1024
d3d9.memoryTrackTest = False # d3d9.memoryTrackTest = False
# Force enable/disable floating point quirk emulation # Force enable/disable floating point quirk emulation

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

View 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

View File

@ -3,24 +3,44 @@
######################################################################## ########################################################################
export PW_USER_TEMP="$WINEPREFIX/drive_c/users/${USER}/Temp" export PW_USER_TEMP="$WINEPREFIX/drive_c/users/${USER}/Temp"
export PW_FORCE_LARGE_ADDRESS_AWARE=0 export PW_FORCE_LARGE_ADDRESS_AWARE=0
export PW_FORCE_DISABLED_GAMEMOD=1 export PW_USE_GAMEMODE=0
export PW_CHECK_AUTOINSTAL=1 export PW_CHECK_AUTOINSTAL=1
export PW_WINEDBG_DISABLE=1 export PW_WINEDBG_DISABLE=1
export PW_NO_WRITE_WATCH=0 export PW_NO_WRITE_WATCH=0
export PW_VULKAN_USE=0 export PW_VULKAN_USE=0
export PW_NO_FSYNC=1 export PW_NO_FSYNC=1
export PW_NO_ESYNC=1 export PW_NO_ESYNC=1
unset PORTWINE_CREATE_SHORTCUT_NAME
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 `pgrep "$1" | head -n 1` ] && [ ! -z `pgrep wrap | head -n 1` ]; then
echo -e "PID "$1" not found"
sleep 1
else
KILL_PORTWINE
break
fi
done
fi
}
PW_WGC () { PW_WGC () {
export LAUNCH_PARAMETERS=("/SILENT" "/SP-") export LAUNCH_PARAMETERS=("/VERYSILENT")
[ "${update_loc}" = "RUS" ] && export WGC_LOC=RU || export WGC_LOC=EU [ "${update_loc}" = "RUS" ] && export WGC_LOC=RU || export WGC_LOC=EU
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Wargaming_Game_Center_Install_WoT_RU.exe" export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Wargaming_Game_Center_Install_WoT_${WGC_LOC}.exe"
START_PORTWINE START_PORTWINE
if try_download "https://redirect.wargaming.net/WGC/Wargaming_Game_Center_Install_WoT_${WGC_LOC}.exe" "${PW_AUTOINSTALL_EXE}" if try_download "https://redirect.wargaming.net/WGC/Wargaming_Game_Center_Install_WoT_${WGC_LOC}.exe" "${PW_AUTOINSTALL_EXE}"
then then
PW_START_PROGRESS_BAR_CS "Starting WGC installation..." PW_START_PROGRESS_BAR_BLOCK "Starting WGC installation..."
pw_kill_autostart wgc.exe &
PW_RUN "${PW_AUTOINSTALL_EXE}" PW_RUN "${PW_AUTOINSTALL_EXE}"
portwine_exe="$WINEPREFIX/drive_c/ProgramData/Wargaming.net/GameCenter/wgc.exe" portwine_exe="$WINEPREFIX/drive_c/ProgramData/Wargaming.net/GameCenter/wgc_api/wgc_api.exe"
export PORTWINE_CREATE_SHORTCUT_NAME="Wargaming Game Center"
try_remove_file "${PW_AUTOINSTALL_EXE}" try_remove_file "${PW_AUTOINSTALL_EXE}"
KILL_PORTWINE KILL_PORTWINE
PORTWINE_CREATE_SHORTCUT PORTWINE_CREATE_SHORTCUT
@ -35,6 +55,7 @@ PW_ORIGIN () {
if try_download "https://download.dm.origin.com/origin/live/OriginSetup.exe" "${PW_AUTOINSTALL_EXE}" if try_download "https://download.dm.origin.com/origin/live/OriginSetup.exe" "${PW_AUTOINSTALL_EXE}"
then then
PW_START_PROGRESS_BAR_BLOCK "Installing the Origin. Please wait..." PW_START_PROGRESS_BAR_BLOCK "Installing the Origin. Please wait..."
pw_kill_autostart Origin.exe &
PW_RUN "${PW_AUTOINSTALL_EXE}" PW_RUN "${PW_AUTOINSTALL_EXE}"
portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/Origin/Origin.exe" portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/Origin/Origin.exe"
PW_STOP_PROGRESS_BAR PW_STOP_PROGRESS_BAR
@ -52,13 +73,12 @@ PW_BATTLE_NET () {
if try_download "http://dist.blizzard.com/downloads/bna-installers/322d5bb9ae0318de3d4cde7641c96425/retail.1/Battle.net-Setup-${BN_LOC}.exe" "${PW_AUTOINSTALL_EXE}" if try_download "http://dist.blizzard.com/downloads/bna-installers/322d5bb9ae0318de3d4cde7641c96425/retail.1/Battle.net-Setup-${BN_LOC}.exe" "${PW_AUTOINSTALL_EXE}"
then then
PW_START_PROGRESS_BAR "Installing the Battle Net. Please wait..." PW_START_PROGRESS_BAR "Installing the Battle Net. Please wait..."
pw_kill_autostart Battle.net.exe &
PW_RUN "${PW_AUTOINSTALL_EXE}" 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"` portwine_exe=`find "$WINEPREFIX/drive_c/" -type f -name "Battle.net.exe"`
PW_STOP_PROGRESS PW_STOP_PROGRESS
PORTWINE_CREATE_SHORTCUT PORTWINE_CREATE_SHORTCUT
try_remove_file "${PW_AUTOINSTALL_EXE}" try_remove_file "${PW_AUTOINSTALL_EXE}"
fi fi
STOP_PORTWINE STOP_PORTWINE
} }
@ -70,10 +90,11 @@ PW_EPIC () {
if try_download "https://launcher-public-service-prod06.ol.epicgames.com/launcher/api/installer/download/EpicGamesLauncherInstaller.msi" "${PW_AUTOINSTALL_EXE}" if try_download "https://launcher-public-service-prod06.ol.epicgames.com/launcher/api/installer/download/EpicGamesLauncherInstaller.msi" "${PW_AUTOINSTALL_EXE}"
then then
PW_START_PROGRESS_BAR_BLOCK "Installing Epic Games Launcher. Please wait..." PW_START_PROGRESS_BAR_BLOCK "Installing Epic Games Launcher. Please wait..."
pw_kill_autostart EpicGamesLauncher.exe
PW_RUN msiexec /i "${PW_AUTOINSTALL_EXE}" & PW_RUN msiexec /i "${PW_AUTOINSTALL_EXE}" &
sleep 10 sleep 10
if [ ! -z `pgrep msiexec* | head -n 1` ] ; then if [ ! -z `pgrep msiexec* | head -n 1` ] ; then
while [ ! -z `pgrep msiexec* | head -n 1` ] || [ ! -z `pgrep rundll32* | head -n 1` ] ; do while [ ! -z `pgrep msiexec* | head -n 1` ] || [ ! -z `pgrep rundll32* | head -n 1` ] || [ ! -z `pgrep wrap | head -n 1` ]; do
[ ! -z `pgrep rundll32* | head -n 1` ] && kill -n 9 `pgrep rundll32* | head -n 1` && echo "Kill rundll32.exe" [ ! -z `pgrep rundll32* | head -n 1` ] && kill -n 9 `pgrep rundll32* | head -n 1` && echo "Kill rundll32.exe"
sleep 5 sleep 5
done done
@ -88,14 +109,15 @@ PW_EPIC () {
} }
PW_GOG () { PW_GOG () {
export LAUNCH_PARAMETERS=("/runWithoutUpdating" "/deelevated" ) export LAUNCH_PARAMETERS=("/VERYSILENT")
export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/OriginSetup.exe" export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/setup_galaxy_2.0.37.384.exe"
START_PORTWINE 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}" if try_download "https://content-system.gog.com/open_link/download?path=/open/galaxy/client/2.0.37.384/setup_galaxy_2.0.37.384.exe" "${PW_AUTOINSTALL_EXE}"
then then
PW_START_PROGRESS_BAR_CS "Installing the GOG Galaxy. Please wait..." PW_START_PROGRESS_BAR_BLOCK "Installing the GOG Galaxy. Please wait..."
pw_kill_autostart GalaxyClient.* &
PW_RUN "${PW_AUTOINSTALL_EXE}" PW_RUN "${PW_AUTOINSTALL_EXE}"
portwine_exe=`find "$WINEPREFIX/drive_c/" -type f -name "GalaxyClient.exe"` portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/GOG Galaxy/GalaxyClient.exe"
try_remove_file "${PW_AUTOINSTALL_EXE}" try_remove_file "${PW_AUTOINSTALL_EXE}"
KILL_PORTWINE KILL_PORTWINE
PW_STOP_PROGRESS_BAR PW_STOP_PROGRESS_BAR
@ -125,3 +147,42 @@ PW_EVE () {
fi fi
STOP_PORTWINE 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_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
}
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_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
PORTWINE_CREATE_SHORTCUT
fi
STOP_PORTWINE
}

View File

@ -4,7 +4,7 @@
read "update_loc" < "${PORT_WINE_TMP_PATH}/${portname}_loc" read "update_loc" < "${PORT_WINE_TMP_PATH}/${portname}_loc"
export update_loc=${update_loc} export update_loc=${update_loc}
if [ "${update_loc}" = "RUS" ] if [ "${update_loc}" = "RUS" ]
then then
export inst_set="Выбор" export inst_set="Выбор"
@ -18,7 +18,7 @@ then
export ss_ogl_1="Использовать OpenGL. (DirectX в OpenGL)" export ss_ogl_1="Использовать OpenGL. (DirectX в OpenGL)"
export ss_ogl_2="Использовать VKD3D. ( DX12 в vulkan)" export ss_ogl_2="Использовать VKD3D. ( DX12 в vulkan)"
export ss_ogl_3="Использовать DXVK и D9VK. (DX9-DX11 в Vulkan и выключить DX12)" export ss_ogl_3="Использовать DXVK и D9VK. (DX9-DX11 в Vulkan и выключить DX12)"
export ss_done="Ярлык создан в корневом каталоге порта.\nДобавить его в МЕНЮ -> ИГРЫ?" export ss_done="Ярлык создан в корневом каталоге порта.\nДобавить его в МЕНЮ -> ИГРЫ?"
export inst_succ="Установка завершена успешно!" export inst_succ="Установка завершена успешно!"
@ -29,8 +29,17 @@ then
export port_upd5="Напомнить позже" export port_upd5="Напомнить позже"
export port_upd6="Больше не напоминать" export port_upd6="Больше не напоминать"
export scripts_upd1="Обновление скриптов"
export scripts_upd2="Доступно обновление скриптов для ${portname}\n"
export scripts_upd3="Действие:"
export scripts_upd4="Обновить сейчас"
export scripts_upd5="Напомнить позже"
export scripts_upd6="Больше не напоминать"
export port_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="Да, удалить!"
@ -91,7 +100,7 @@ then
export loc_scripts_update=" Обновление базы данных для игр\n и программ успешно завершено.\n\n Перезапустите ${portname}." export loc_scripts_update=" Обновление базы данных для игр\n и программ успешно завершено.\n\n Перезапустите ${portname}."
export loc_edit_db="Изменить файл настроек для" export loc_edit_db="Изменить файл настроек для"
elif [ "${update_loc}" = "ENG" ] elif [ "${update_loc}" = "ENG" ]
then then
export inst_set="Sett..." export inst_set="Sett..."
@ -104,8 +113,8 @@ then
export ss_default_2="Old startup, with questions and logs" export ss_default_2="Old startup, with questions and logs"
export ss_ogl_1="Use OpenGL. (DirectX to OpenGL)" export ss_ogl_1="Use OpenGL. (DirectX to OpenGL)"
export ss_ogl_2="Use VKD3D. (DX12 to vulkan)" export ss_ogl_2="Use VKD3D. (DX12 to vulkan)"
export ss_ogl_3="Use DXVK and D9VK. (DX9-DX11 to Vulkan)" export ss_ogl_3="Use DXVK and D9VK. (DX9-DX11 to Vulkan)"
export ss_done="The shortcut was created in the ${portname} directory.\nAdd it to MENU -> GAMES?" export ss_done="The shortcut was created in the ${portname} directory.\nAdd it to MENU -> GAMES?"
export inst_succ="The installation was successful." export inst_succ="The installation was successful."
@ -116,8 +125,17 @@ then
export port_upd5="Remind me later" export port_upd5="Remind me later"
export port_upd6="Do not remind me" export port_upd6="Do not remind me"
export port_del1="Remove $portname" export scripts_upd1="New update for scripts"
export port_del2="Are you sure you want to delete the ${portname}?\n" export scripts_upd2="Scripts update avialable for ${portname}\n"
export scripts_upd3="Action:"
export scripts_upd4="Updating now"
export scripts_upd5="Remind me later"
export scripts_upd6="Do not remind me"
export port_clear_pfx="Do you want to clear prefix in PortProton?"
export port_del1="Remove $portname"
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!"

View File

@ -17,13 +17,13 @@ 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
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT ##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options

View File

@ -0,0 +1,6 @@
#!/bin/bash
#Author: garrett
#AI.exe
#Rating=5
########################################################
export PW_VULKAN_USE=dxvk

View File

@ -0,0 +1,41 @@
#!/bin/bash
#Author: akai
#Arthur.exe
#Rating=1-5
########################################################
export PW_VULKAN_USE=dxvk
#####################examples###########################
##export PW_COMMENT_DB="blablabla"
##export PW_WINDOWS_VER=10 # Set windows version 10, 7 or XP
##export PW_DLL_INSTALL="vcrun2017" # Install DDL in port prefix (used winetricks)
##export WINEDLLOVERRIDES="blabla=n,b"
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options
##export PW_VULKAN_USE=dxvk # dxvk, vkd3d or 0 for OpenGL
##export PW_DXVK_VER=1.8.1
##export PW_VKD3D_VER=2.2
##export PW_DXR_ON=1
##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN
##export PW_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_VKD3D_FEATURE_LEVEL=1
##export PW_DXGI_FROM_DXVK=1
##export PW_VIRTUAL_DESKTOP=1
##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue
##export ENABLE_VKBASALT=1
##export PW_NO_FSYNC=1 # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support.
##export PW_NO_ESYNC=1 # Do not use eventfd-based in-process synchronization primitives
export PULSE_LATENCY_MSEC=90 # Fix crackling audio in games
##export PW_USE_GAMEMODE=1 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PW_NO_WRITE_WATCH=1 # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
##export PW_HEAP_DELAY_FREE=1
##export PW_WINE_ALLOW_XIM=1 # Disable XIM support until libx11 >= 1.7 is widespread
##export WINEARCH=win32 # defaut = win64
##export WINEPREFIX=
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_USE_TERMINAL=1 # Force run in terminal
##export PW_LOG=1 # Enable debug mode fo terminal
##export PW_GUI_DISABLED_CS=1 # 1 = disabled GUI
##ADD_IN_START_PORTWINE () { commands ; }

View File

@ -10,7 +10,7 @@ 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"

View 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 ; }

View 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 ; }

View 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 ; }

View File

@ -13,18 +13,18 @@ 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
##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_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_FORCE_DISABLED_GAMEMOD=1 # Force disabele gamemod ##export PW_USE_GAMEMODE=1 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
export PULSE_LATENCY_MSEC=40 # Fix crackling audio in games export PULSE_LATENCY_MSEC=40 # Fix crackling audio in games
export LAUNCH_PARAMETERS=("--launcher-skip") # Additional launch options export LAUNCH_PARAMETERS=("--launcher-skip") # Additional launch options
##export PW_GUI_DISABLED_CS=1 # 1 = disabled GUI ##export PW_GUI_DISABLED_CS=1 # 1 = disabled GUI
##export VKD3D_CONFIG=force_bindless_texel_buffer export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue
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
##export DXVK_HUD=fps,devinfo ##export DXVK_HUD=fps,devinfo

View File

@ -11,13 +11,13 @@ 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
#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=0 #export PW_WINEDBG_DISABLE=0
#export PW_FORCE_DISABLED_GAMEMOD=1 # Force disabele gamemod #export PW_USE_GAMEMODE=1 # Force disabele gamemod
#export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. #export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
export PULSE_LATENCY_MSEC=60 export PULSE_LATENCY_MSEC=60
#export PW_DLL_INSTALL="foo bar" #export PW_DLL_INSTALL="foo bar"

View File

@ -0,0 +1,11 @@
#!/bin/bash
#Author: nix
#DOOMx64.exe
#DOOMx64vk.exe
#Rating=1-5
########################################################
export PW_VULKAN_USE=dxvk
#####################examples###########################
export PW_COMMENT_DB="DOOM 2016"
export PW_DLL_INSTALL="xact xact_x64 vcrun2019"
export WINEDLLOVERRIDES="xaudio2_8=n"

View File

@ -3,7 +3,7 @@
#DetroitBecomeHuman.exe #DetroitBecomeHuman.exe
#Rating=1-5 #Rating=1-5
################################################ ################################################
export PW_VULKAN_USE=dxvk export PW_VULKAN_USE=vkd3d
export PW_FORCE_USE_VSYNC=0 export PW_FORCE_USE_VSYNC=0
export PW_WINDOWS_VER="10" export PW_WINDOWS_VER="10"
#export PW_VIRTUAL_DESKTOP=1 #export PW_VIRTUAL_DESKTOP=1

View File

@ -14,13 +14,13 @@ export PW_VULKAN_USE=0
##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
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT ##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options

View File

@ -0,0 +1,39 @@
#!/bin/bash
#Author: xuser
#FL.exe
#FL64.exe
#Rating=1-5
################################################
export PW_VULKAN_USE=0
#####################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="FLEngine,FLEngine_x64=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_USE_NVAPI=0
##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_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 PW_NO_FSYNC=1 # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support.
export PW_NO_ESYNC=1 # Do not use eventfd-based in-process synchronization primitives
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
export PW_FORCE_DISABLED_GAMEMOD=1 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PW_NO_WRITE_WATCH=0 # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
##export PW_HEAP_DELAY_FREE=0
##export WINEARCH=win32 # defaut = win64
##export WINEPREFIX=
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_USE_TERMINAL=0 # Force run in terminal
##export PW_LOG=0 # Enable debug mode fo terminal
##export PW_GUI_DISABLED_CS=1 # 1 = disabled GUI
##ADD_IN_START_PORTWINE () { commands ; }

View File

@ -11,12 +11,12 @@ 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
#export PW_WINEDBG_DISABLE=1 #export PW_WINEDBG_DISABLE=1
#export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod #export PW_USE_GAMEMODE=0 # Force disabele gamemod
#export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. #export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
#export PULSE_LATENCY_MSEC=60 #export PULSE_LATENCY_MSEC=60
#export PW_DLL_INSTALL="" #export PW_DLL_INSTALL=""

View File

@ -14,13 +14,13 @@
##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
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT ##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options

View 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 ; }

View 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 ; }

View 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 ; }

View File

@ -0,0 +1,8 @@
#!/bin/bash
#Author: garrett
#ForzaHorizon4.exe
#Rating=5
################################################
export PW_DLL_INSTALL="dotnet472 vcrun2019"
export PW_VULKAN_USE=vkd3d
export WINEPREFIX="${PORT_WINE_PATH}/data/pfx_dotnet"

0
data_from_portwine/scripts/portwine_db/Game-TS3 Normal file → Executable file
View File

View File

@ -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

View File

@ -12,13 +12,13 @@ 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
#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_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod #export PW_USE_GAMEMODE=0 # Force disabele gamemod
#export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. #export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
#export PULSE_LATENCY_MSEC=60 #export PULSE_LATENCY_MSEC=60
#export PW_DLL_INSTALL="foo bar" #export PW_DLL_INSTALL="foo bar"

View File

@ -5,5 +5,5 @@
################################################ ################################################
export PW_VULKAN_USE=vkd3d #dxvk or vkd3d export PW_VULKAN_USE=vkd3d #dxvk or vkd3d
export WINEDLLOVERRIDES="" export WINEDLLOVERRIDES=""
export PW_DLL_INSTALL="vcrun2017" export PW_DLL_INSTALL="vcrun2019"
export LAUNCH_PARAMETERS="-EpicPortal" export LAUNCH_PARAMETERS="-EpicPortal"

View File

@ -5,5 +5,5 @@
################################################ ################################################
export PW_VULKAN_USE=0 export PW_VULKAN_USE=0
export PW_WINDOWS_VER="XP" export PW_WINDOWS_VER="XP"
export PW_FORCE_DISABLED_GAMEMOD=1 export PW_USE_GAMEMODE=1
export LAUNCH_PARAMETERS="-d3d9" export LAUNCH_PARAMETERS="-d3d9"

View File

@ -14,13 +14,13 @@ export PW_VULKAN_USE=dxvk
##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
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT ##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
export PULSE_LATENCY_MSEC=120 # Fix crackling audio in games export PULSE_LATENCY_MSEC=120 # Fix crackling audio in games
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options

View File

@ -15,13 +15,13 @@
##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
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT ##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options

View File

@ -12,13 +12,13 @@ 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
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT ##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options

View File

@ -12,13 +12,13 @@ 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
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT ##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options

View File

@ -0,0 +1,10 @@
#!/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

View File

@ -0,0 +1,32 @@
#!/bin/bash
#Author: vellyn
#MikuMikuDance.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="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 ; }

View File

@ -15,13 +15,13 @@
##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
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT ##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options

View File

@ -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
@ -29,7 +29,7 @@ export PW_DLL_INSTALL="d3dcompiler_42 d3dcompiler_43 d3dx9"
##export PW_NO_FSYNC=1 # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. ##export PW_NO_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_FORCE_DISABLED_GAMEMOD=1 # Force disabele gamemod ##export PW_USE_GAMEMODE=1 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_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

View File

@ -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
@ -29,7 +29,7 @@ export PW_NVAPI_DISABLE=1
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PW_NO_WRITE_WATCH=0 # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). ##export PW_NO_WRITE_WATCH=0 # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
##export PW_HEAP_DELAY_FREE=0 ##export PW_HEAP_DELAY_FREE=0

View File

@ -1,11 +1,11 @@
#!/bin/bash #!/bin/bash
#Author: #Author:
#RDR2.exe #RDR2.exe
#PlayRDR2.exe #PlayRDR2.exe
#Rating=? #Rating=?
################################################ ################################################
export PW_VULKAN_USE=vkd3d export PW_VULKAN_USE=vkd3d
export WINEDLLOVERRIDES="amd_ags_x64=b,n" export WINEDLLOVERRIDES="vulkan-1=n"
export PW_DXGI_FROM_DXVK=1 export PW_DXGI_FROM_DXVK=1
export LAUNCH_PARAMETERS="-adapter=1 -vulkan -width=1920 -height=1080 -USEALLAVAILABLECORES -cpuLoadRebalancing -ignorepipelinecach" export LAUNCH_PARAMETERS="-adapter=1 -vulkan -width=1920 -height=1080 -USEALLAVAILABLECORES -cpuLoadRebalancing -ignorepipelinecach"
export PULSE_LATENCY_MSEC=60 export PULSE_LATENCY_MSEC=60

View File

@ -0,0 +1,35 @@
#!/bin/bash
#Author: xuser
#SR2_pc.exe
#Rating=1-5
#####################examples###########################
##export PW_COMMENT_DB="blablabla"
##export PW_DLL_INSTALL="xact" # Install DDL in port prefix (used winetricks)
##export WINEDLLOVERRIDES="blabla=n,b"
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options
##export PW_VULKAN_USE=dxvk # dxvk, vkd3d or 0 for OpenGL
##export PW_DXR_ON=1
##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN
##export PW_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_USE_BUILD_IN_DXGI=1
##export PW_VIRTUAL_DESKTOP=1
##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue
##export ENABLE_VKBASALT=1
##export PW_NO_FSYNC=1 # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support.
##export PW_NO_ESYNC=1 # Do not use eventfd-based in-process synchronization primitives
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export PW_USE_GAMEMODE=1 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PW_NO_WRITE_WATCH=1 # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
##export PW_HEAP_DELAY_FREE=1
##export PW_WINE_ALLOW_XIM=1 # Disable XIM support until libx11 >= 1.7 is widespread
##export WINEARCH=win32 # defaut = win64
##export WINEPREFIX=
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_USE_TERMINAL=1 # Force run in terminal
##export PW_LOG=1 # Enable debug mode fo terminal
##export PW_GUI_DISABLED_CS=1 # 1 = disabled GUI
##ADD_IN_START_PORTWINE () { commands ; }

View File

@ -0,0 +1,42 @@
#!/bin/bash
#Author: xihnik
#Sam3.exe
#Rating=3
########################################################
export PW_DLL_INSTALL="d3dx9 vcrun2013 d3dcompiller_47"
export PULSE_LATENCY_MSEC=150
#####################examples###########################
##export PW_COMMENT_DB="blablabla"
##export PW_WINDOWS_VER=10 # Set windows version 10, 7 or XP
##export PW_DLL_INSTALL="vcrun2017" # Install DDL in port prefix (used winetricks)
##export WINEDLLOVERRIDES="blabla=n,b"
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options
##export PW_VULKAN_USE=dxvk # dxvk, vkd3d or 0 for OpenGL
##export PW_DXVK_VER=1.8.1
##export PW_VKD3D_VER=2.2
##export PW_DXR_ON=1
##export PW_VULKAN_NO_ASYNC=1 # Disabled ASYNC for VULKAN
##export PW_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_VKD3D_FEATURE_LEVEL=1
##export PW_DXGI_FROM_DXVK=1
##export PW_VIRTUAL_DESKTOP=1
##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue
##export ENABLE_VKBASALT=1
##export PW_NO_FSYNC=1 # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support.
##export PW_NO_ESYNC=1 # Do not use eventfd-based in-process synchronization primitives
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export PW_USE_GAMEMODE=1 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PW_NO_WRITE_WATCH=1 # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
##export PW_HEAP_DELAY_FREE=1
##export PW_WINE_ALLOW_XIM=1 # Disable XIM support until libx11 >= 1.7 is widespread
##export WINEARCH=win32 # defaut = win64
##export WINEPREFIX=
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_USE_TERMINAL=1 # Force run in terminal
##export PW_LOG=1 # Enable debug mode fo terminal
##export PW_GUI_DISABLED_CS=1 # 1 = disabled GUI
##ADD_IN_START_PORTWINE () { commands ; }

View File

@ -15,13 +15,13 @@ export PW_WINDOWS_VER=7 # Set windows version 10, 7 or XP
##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
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT ##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options

View File

@ -5,5 +5,5 @@
################################################ ################################################
export PW_VULKAN_USE=0 export PW_VULKAN_USE=0
export PW_WINDOWS_VER="XP" export PW_WINDOWS_VER="XP"
export PW_FORCE_DISABLED_GAMEMOD=1 export PW_USE_GAMEMODE=1
export LAUNCH_PARAMETERS="-d3d9" export LAUNCH_PARAMETERS="-d3d9"

View File

@ -15,13 +15,13 @@
##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
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT ##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options

View File

@ -12,13 +12,13 @@ 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
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT ##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options

View File

@ -16,13 +16,13 @@
##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
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT ##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options

View File

@ -15,13 +15,13 @@
##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
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT ##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options

View File

@ -0,0 +1,23 @@
#!/bin/bash
#Author: cefeiko
#WorldOfTanksEnCoreLauncher.exe
#Rating=1-5
################################################
export PW_VULKAN_USE=dxvk
export PW_USE_TERMINAL=0
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_COMMENT_DB="World Of Tanks EnCore"
## export DXVK_HUD=fps,devinfo
## export PW_MANGOHUD=1
#####################examples###########################
while [ `pidof -s dotNetFx40_Full_x86_x64.exe` ] ; do
if [ $? -eq 0 ] ; then
sleep 1
elif
export dotnet_pids=`ps -ax | grep mscorsvw.exe | awk '{print $1}' | uniq`
[ ! -z $dotnet_pids ]
kill -n 9 $dotnet_pids
sleep 1
fi
done

View File

@ -13,13 +13,13 @@ 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
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT ##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_FORCE_DISABLED_GAMEMOD=1 # Force disabele gamemod ##export PW_USE_GAMEMODE=1 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options

View File

@ -14,13 +14,13 @@
##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
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT ##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options

View File

@ -11,15 +11,12 @@
##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_VULKAN_USE=dxvk # dxvk, vkd3d or 0 for OpenGL
##export PW_DXVK_VER=1.8.1
##export PW_VKD3D_VER=2.2
##export PW_DXR_ON=1 ##export PW_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_DXGI_FROM_DXVK=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
@ -29,8 +26,6 @@
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export PW_FORCE_DISABLED_GAMEMOD=1 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PW_NO_WRITE_WATCH=1 # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). ##export PW_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
@ -40,9 +35,8 @@
##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 ; }
export PW_DLL_INSTALL="vcrun2019 vcrun6 vcrun6sp6 mfc42 d3dcompiler_42 d3dcompiler_43 d3dcompiler_47 d3dx9" export PW_DLL_INSTALL="vcrun6sp6 vcrun6 mfc42 vcrun2019 d3dcompiler_42 d3dcompiler_43 d3dcompiler_47 d3dx9"

View File

@ -15,13 +15,13 @@ 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
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT ##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options

View File

@ -15,7 +15,7 @@ export WINEDLLOVERRIDES="concrt140,msvcp140,msvcp140_1,msvcp140_2,d3dcompiler_47
##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
@ -30,7 +30,7 @@ export WINEDLLOVERRIDES="concrt140,msvcp140,msvcp140_1,msvcp140_2,d3dcompiler_47
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PW_NO_WRITE_WATCH=0 # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). ##export PW_NO_WRITE_WATCH=0 # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
##export PW_HEAP_DELAY_FREE=0 ##export PW_HEAP_DELAY_FREE=0

View File

@ -20,13 +20,13 @@
##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
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT ##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options

View File

@ -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
@ -31,7 +31,7 @@
##export PW_NO_FSYNC=1 # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. ##export PW_NO_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_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PW_NO_WRITE_WATCH=0 # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). ##export PW_NO_WRITE_WATCH=0 # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
##export PW_HEAP_DELAY_FREE=0 ##export PW_HEAP_DELAY_FREE=0

View File

@ -0,0 +1,34 @@
#!/bin/bash
#Author: xuser
#osu!.exe
#Rating=1-5
########################################################
export PW_VULKAN_USE=0
#####################examples###########################
##export PW_COMMENT_DB="blablabla"
##export PW_WINDOWS_VER=10 # Set windows version 10, 7 or XP
export PW_DLL_INSTALL="dotnet40" # 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="${PORT_WINE_PATH}/data/pfx_dotnet"
##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 ; }

View File

@ -12,13 +12,13 @@ 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
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT ##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options

View File

@ -0,0 +1,42 @@
#!/bin/bash
#Author: xihnik
#s1_sp64_ship.exe
#Rating=1-5
################################################
export PW_VULKAN_USE=dxvk
export PW_DLL_INSTALL="vcrun2019 d3dx9"
#export PW_NO_FSYNC=1
export PW_WINDOWS_VER=7
#####################examples###########################
##export PW_COMMENT_DB="blablabla"
##export PW_VULKAN_USE=dxvk # dxvk, vkd3d or 0 for OpenGL
##export PW_DXVK_VER=1.8.1
##export PW_VKD3D_VER=2.2
##export WINEDLLOVERRIDES="blabla=n,b"
##export PW_DLL_INSTALL="vcrun2019 vcrun6" # Install DDL in port prefix (used winetricks)
##export PW_LOG=0 # Enable debug mode fo terminal
##export PW_NO_FSYNC=1 # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support.
##export PW_NO_ESYNC=1 # Do not use eventfd-based in-process synchronization primitives
##export PW_DXVK_NO_ASYNC=1 # Disabled ASYNC for VULKAN
##export PW_USE_TERMINAL=0 # Force run in terminal
##export PW_OLD_GL_STRING=0
##export PW_USE_NVAPI=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_HIDE_NVIDIA_GPU=0
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options
##export PW_GUI_DISABLED_CS=1 # 1 = disabled GUI
##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue,dxr
##export PW_WINDOWS_VER=10 # Set windows version 10, 7 or XP
##export PW_VIRTUAL_DESKTOP=1
##export DXVK_HUD=fps,devinfo
##export PW_HEAP_DELAY_FREE=0
##export PW_DXGI_FROM_DXVK=0
##export WINEARCH=win32 # defaut = win64
##export WINEPREFIX=
##ADD_IN_START_PORTWINE () { commands ; }

View File

@ -9,22 +9,22 @@
################################################ ################################################
export PW_VULKAN_USE=0 #dxvk or vkd3d export PW_VULKAN_USE=0 #dxvk or vkd3d
#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.
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 #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_FORCE_DISABLED_GAMEMOD=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="vcrun6sp6 mfc42 vcrun6 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

View File

@ -1,18 +1,16 @@
#!/bin/bash #!/bin/bash
#Author: PortWINE #Author: PortWINE
#wgc.exe #wgc.exe
#wgc_api.exe
#Rating=5 #Rating=5
export PW_COMMENT_DB="Wargaming Game Center"
################################################ ################################################
#export PW_VULKAN_USE=dxvk #dxvk, vkd3d or 0 for OpenGL #export PW_VULKAN_USE=dxvk #dxvk, vkd3d or 0 for OpenGL
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=7 # Set windows version 10, 7 or XP export PW_WINDOWS_VER=10 # Set windows version 10, 7 or XP
#export PW_NVAPI_DISABLE=1 #export PW_USE_NVAPI=0
#export WINEDLLOVERRIDES="xaudio2_7=n" #export WINEDLLOVERRIDES="ucrtbase,xaudio2_7,xaudio2_8=n"
export PW_DLL_INSTALL="lucida vcrun2019" # Install DDL in port prefix (used winetricks) export PW_DLL_INSTALL="lucida vcrun2019" # Install DDL in port prefix (used winetricks)
##export PW_GUI_DISABLED_CS=1 ##export PW_GUI_DISABLED_CS=1
export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
ADD_IN_START_PORTWINE () {
sed -i 's/true/false/g' "$WINEPREFIX/drive_c/ProgramData/Wargaming.net/GameCenter/preferences.xml"
}

View File

@ -15,13 +15,13 @@ export PW_DLL_INSTALL="vcrun2013 vcrun2017 dotnet472"
##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
##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT ##export PW_FORCE_USE_VSYNC=2 # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG ##export PW_WINEDBG_DISABLE=1 # Disabled WINEDBG
##export PW_FORCE_DISABLED_GAMEMOD=0 # Force disabele gamemod ##export PW_USE_GAMEMODE=0 # Force disabele gamemod
##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. ##export PW_FORCE_LARGE_ADDRESS_AWARE=1 # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default.
##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games ##export PULSE_LATENCY_MSEC=60 # Fix crackling audio in games
##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')" # Additional launch options

View File

@ -1,7 +0,0 @@
#!/bin/bash
# Author: PortWINE-Linux.ru
. "$(dirname $(readlink -f "$0"))/runlib"
KILL_PORTWINE
if [ -e "${PORT_WINE_TMP_PATH}/pw_vulkan" ]; then
rm -f "${PORT_WINE_TMP_PATH}/pw_vulkan"
fi

View File

@ -1,6 +1,6 @@
#!/bin/bash #!/bin/bash
# Author: Castro-Fidel (PortWINE-Linux.ru) # Author: Castro-Fidel (PortWINE-Linux.ru)
# Development assistants: Cefeiko; Rus_Nor; gavr; RidBowt; Dezert1r # Development assistants: Cefeiko; Rus_Nor; gavr; RidBowt; Dezert1r; Taz_mania; Anton_Famillianov
######################################################################## ########################################################################
echo ' echo '
████─████─████─███─█───█─███─█──█─███ ████─████─████─███─█───█─███─█──█─███
@ -12,7 +12,7 @@ echo '
' '
[ $(id -u) = 0 ] && echo "Do not run this script as root!" && zenity --error --text "Do not run this script as root!" && exit 1 [ $(id -u) = 0 ] && echo "Do not run this script as root!" && zenity --error --text "Do not run this script as root!" && exit 1
if [ "${s_install}" != "1" ] && [ ! -x "`which "zenity" 2>/dev/null`" ];then 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 () { pw_ping_test () {
@ -26,7 +26,7 @@ print_info () {
echo "INFO: $@" echo "INFO: $@"
} }
print_var () { print_var () {
for vp in $@ ; do echo "${vp}=${!vp}" ; done for vp in $@ ; do echo "${vp}=${!vp}" ; done
} }
try_copy_file () { try_copy_file () {
if [ ! -f "$1" ] ; then print_info "file $1 not found for copy" && return 1 if [ ! -f "$1" ] ; then print_info "file $1 not found for copy" && return 1
@ -46,31 +46,30 @@ try_copy_dir () {
cp -fr "$1" "$2" cp -fr "$1" "$2"
[ "$?" != 0 ] && print_error "failed to copy directory $1 to $2" || return 0 [ "$?" != 0 ] && print_error "failed to copy directory $1 to $2" || return 0
fi fi
return 1 return 1
} }
try_remove_file () { try_remove_file () {
if [ -f "$1" ] ; then if [ -f "$1" ] ; then
rm -f "$1" rm -f "$1"
[ "$?" != 0 ] && print_error "failed to remove file $1" || return 0 [ "$?" != 0 ] && print_error "failed to remove file $1" || return 0
fi fi
return 1 return 1
} }
try_remove_dir () { try_remove_dir () {
if [ -d "$1" ] ; then if [ -d "$1" ] ; then
rm -fr "$1" rm -fr "$1"
[ "$?" != 0 ] && print_error "failed to remove directory $1" || return 0 [ "$?" != 0 ] && print_error "failed to remove directory $1" || return 0
fi fi
return 1 return 1
} }
try_force_link_file () { try_force_link_file () {
if [ ! -f "$1" ] ; then print_info "file $1 not found for link" if [ ! -f "$1" ] ; then print_info "file $1 not found for link"
elif [ -z "$2" ] ; then print_error "no way to link file $1" elif [ -z "$2" ] ; then print_error "no way to link file $1"
else else
[ -f "$2" ] && rm -f "$2" ln -sf "$1" "$2"
ln -s "$1" "$2"
[ "$?" != 0 ] && print_error "failed to link file $1 to $2" || return 0 [ "$?" != 0 ] && print_error "failed to link file $1 to $2" || return 0
fi fi
return 1 return 1
} }
try_force_link_dir () { try_force_link_dir () {
if [ ! -d "$1" ] ; then print_info "directory $1 not found for link" if [ ! -d "$1" ] ; then print_info "directory $1 not found for link"
@ -79,14 +78,18 @@ try_force_link_dir () {
ln -sf "$1" "$2" ln -sf "$1" "$2"
[ "$?" != 0 ] && print_error "failed to link directory $1 to $2" || return 0 [ "$?" != 0 ] && print_error "failed to link directory $1 to $2" || return 0
fi fi
return 1 return 1
} }
try_download () { try_download () {
set -o pipefail set -o pipefail
wget -c -t 5 -T 2 "$1" --output-document="$2" 2>&1 | \ wget -c -t 5 -T 2 "$1" --output-document="$2" 2>&1 | \
sed -u 's/^[a-zA-Z\-].*//; s/.* \{1,2\}\([0-9]\{1,3\}\)%.*/\1\n#Downloading... \1%/; s/^20[0-9][0-9].*/#Done./' | \ 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 zenity --progress --percentage=0 --title="Download $(basename $1)" --text=Starting... --auto-close --auto-kill --width=500 --height=90
[ "${PIPESTATUS[0]}" != 0 ] && print_error "failed to download $1. Scipping." && return 1 || return 0 [ "${PIPESTATUS[0]}" != 0 ] && print_error "failed to download $1. Scipping." && return 1 || return 0
}
try_download_silent () {
wget -c -t 5 -T 2 "$1" --output-document="$2"
[ "$?" != 0 ] && print_error "failed to download $1. Scipping." && return 1 || return 0
} }
zenity_error_download () { zenity_error_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 `zenity --error --title "Error..." --text "You will need to check internet connettion,\nand press OK for repeet download" --no-wrap ` > /dev/null 2>&1
@ -94,44 +97,99 @@ zenity_error_download () {
create_new_dir () { create_new_dir () {
if [ ! -d "$1" ] ; then if [ ! -d "$1" ] ; then
mkdir -p "$1" mkdir -p "$1"
fi fi
} }
var_winedlloverride_update () { var_winedlloverride_update () {
if [ ! -z "${WINEDLLOVERRIDES}" ] if [ ! -z "${WINEDLLOVERRIDES}" ]
then export WINEDLLOVERRIDES="${1};${WINEDLLOVERRIDES}" then export WINEDLLOVERRIDES="${1};${WINEDLLOVERRIDES}"
else export WINEDLLOVERRIDES="${1}" else export WINEDLLOVERRIDES="${1}"
fi fi
} }
var_vkd3d_config_update () { var_vkd3d_config_update () {
if [ ! -z "${VKD3D_CONFIG}" ] if [ ! -z "${VKD3D_CONFIG}" ]
then export VKD3D_CONFIG="${1};${VKD3D_CONFIG}" then export VKD3D_CONFIG="${1};${VKD3D_CONFIG}"
else export VKD3D_CONFIG="${1}" else export VKD3D_CONFIG="${1}"
fi fi
} }
unpack_tar_xz () { unpack_tar_xz () {
set -o pipefail set -o pipefail
tar -Jxvf "$1" -C "$2" | sszen tar -Jxvf "$1" -C "$2" | sszen
[ "${PIPESTATUS[0]}" != 0 ] && print_error "File unpacking error." && return 1 || return 0 [ "${PIPESTATUS[0]}" != 0 ] && print_error "File unpacking error." && return 1 || return 0
} }
pw_mangohud_check () { pw_mangohud_check () {
export RUN_MANGOHUD="" export RUN_MANGOHUD=""
export MANGOHUD=0 unset MANGOHUD
export MANGOHUD_DLSYM=0 unset MANGOHUD_DLSYM
if [ -x "`which mangohud 2>/dev/null`" ] && [ "${PW_MANGOHUD}" == "1" ] ; then if [ -x "`which mangohud 2>/dev/null`" ] && [ "${PW_MANGOHUD}" == "1" ] ; then
if [ "${PW_VULKAN_USE}" = "0" ]; then if [ "${PW_VULKAN_USE}" = "0" ]; then
export MANGOHUD_DLSYM=1 export MANGOHUD_DLSYM=1
export RUN_MANGOHUD=mangohud export RUN_MANGOHUD=mangohud
else else
export MANGOHUD=1 export MANGOHUD=1
fi fi
else
export DISABLE_MANGOHUD=1
fi fi
} }
pw_vkbasalt_check () {
if [ -d "${HOME}/.local/share/reshade/Shaders/" ]; then
export VKBASALT_CONFIG_FILE="${PORT_WINE_PATH}/data/vkBasalt.conf"
[[ xuser = `cat "${VKBASALT_CONFIG_FILE}" | grep -om1 xuser` ]] && sed -i "s%/xuser/%/${USER}/%" "${VKBASALT_CONFIG_FILE}"
elif [ -d "/usr/share/reshade" ]; then
export VKBASALT_CONFIG_FILE="${PORT_WINE_PATH}/data/vkBasalt.conf"
mkdir -p "${HOME}/.local/share/reshade"
cp -fR /usr/share/reshade "${HOME}/.local/share"
[[ xuser = `cat "${VKBASALT_CONFIG_FILE}" | grep -om1 xuser` ]] && sed -i "s%/xuser/%/${USER}/%" "${VKBASALT_CONFIG_FILE}"
[[ Shaders = `cat "${VKBASALT_CONFIG_FILE}" | grep -om1 Shaders` ]] && sed -i "s%/Shaders/%/shaders/%" "${VKBASALT_CONFIG_FILE}"
[[ Textures = `cat "${VKBASALT_CONFIG_FILE}" | grep -om1 Textures` ]] && sed -i 's%/Textures$%/textures%' "${VKBASALT_CONFIG_FILE}"
fi
}
gui_question () {
`zenity --question --title "${inst_set}." --text "$1" --no-wrap ` &> /dev/null
[ $? -eq "0" ] && return 0 || return 1
}
pw_clear_pfx () { pw_clear_pfx () {
try_remove_file "${WINEPREFIX}/system.reg" try_remove_file "${WINEPREFIX}/system.reg"
try_remove_file "${WINEPREFIX}/user.reg" try_remove_file "${WINEPREFIX}/user.reg"
try_remove_file "${WINEPREFIX}/userdef.reg" try_remove_file "${WINEPREFIX}/userdef.reg"
try_remove_file "${WINEPREFIX}/winetricks.log" 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/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
} }
sszen() { sszen() {
zenity --progress --title="Settings..." --text="Updating parameters" --pulsate --auto-close --width=500 --height=90 --no-cancel zenity --progress --title="Settings..." --text="Updating parameters" --pulsate --auto-close --width=500 --height=90 --no-cancel
@ -148,13 +206,13 @@ PW_START_PROGRESS_BAR_BLOCK () {
} }
PW_STOP_PROGRESS_BAR () { PW_STOP_PROGRESS_BAR () {
while [ ! -z "`pgrep -a yad | grep "\-\-progress" | awk '{print $1}'`" ] 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` do kill -n 9 `pgrep -a yad | grep "\-\-progress" | awk '{print $1}' | head -n 1` &> /dev/null
done done
} }
PW_LOAD_LIBS () { PW_LOAD_LIBS () {
if [ ! -e "${WINELIB}/run-in-soldier" ] || [ ! -e "${WINELIB}/runtime/bin/yad" ] || [ ! -e "${WINELIB}/runtime/lib/p7zip/7zr" ] \ if [ ! -e "${PW_WINELIB}/runtime/bin/yad" ] || [ ! -e "${PW_WINELIB}/runtime/lib/p7zip/7z" ] \
|| [ ! -e "${WINELIB}/runtime/bin/vkcube" ] || [ ! -e "${WINELIB}/runtime/bin/xterm" ] || \ || [ ! -e "${PW_WINELIB}/runtime/bin/vkcube" ] || [ ! -e "${PW_WINELIB}/runtime/bin/xterm" ] || \
[ -e "${HOME}/.PortWINE/tmp/libs${pw_libs_ver}.tar.xz" ] ; then [ -e "${HOME}/.PortWINE/tmp/libs${pw_libs_ver}.tar.xz" ] ; then
print_info "Download and install libraries..." 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 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 if unpack_tar_xz "${HOME}/.PortWINE/tmp/libs${pw_libs_ver}.tar.xz" "${HOME}/.PortWINE/" ; then
@ -172,19 +230,21 @@ PW_LOAD_LIBS () {
--no-wrap ` > /dev/null 2>&1 && PW_LOAD_LIBS --no-wrap ` > /dev/null 2>&1 && PW_LOAD_LIBS
fi fi
fi fi
export pw_yad="${WINELIB}/runtime/bin/yad" export pw_yad="${PW_WINELIB}/runtime/bin/yad"
export pw_zstd="${WINELIB}/runtime/bin/zstd" export pw_yad_new="${PW_WINELIB}/runtime/bin/yad_new"
export pw_7z="${WINELIB}/runtime/lib/p7zip/7zr" 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 if [ -x "`which xterm 2>/dev/null`" ]; then
export SYS_XTERM=`which xterm` export SYS_XTERM=`which xterm`
export PW_XTERM="${SYS_XTERM} -geometry 159x37 -e" export PW_XTERM="${SYS_XTERM} -geometry 159x37 -e"
else else
export PW_XTERM="${WINELIB}/runtime/bin/xterm -geometry 159x37 -e" export PW_XTERM="${PW_WINELIB}/runtime/bin/xterm -geometry 159x37 -e"
fi fi
} }
PW_DOWNLOAD_MONO () { PW_DOWNLOAD_MONO () {
if [ ! -d "${HOME}/.PortWINE/mono/wine-mono-${mono_ver}" ] ; then if [ ! -d "${HOME}/.PortWINE/mono/wine-mono-${mono_ver}" ] ; then
export url_mono="https://github.com/madewokherd/wine-mono/releases/download/wine-mono-${mono_ver}/wine-mono-${mono_ver}-x86.tar.xz"
echo "######################################################" echo "######################################################"
print_info "Download and install wine mono..." print_info "Download and install wine mono..."
if try_download "${url_mono}" "${HOME}/.PortWINE/tmp/wine-mono-${mono_ver}-x86.tar.xz" ; then if try_download "${url_mono}" "${HOME}/.PortWINE/tmp/wine-mono-${mono_ver}-x86.tar.xz" ; then
@ -202,6 +262,7 @@ PW_DOWNLOAD_MONO () {
} }
PW_DOWNLOAD_GECKO () { PW_DOWNLOAD_GECKO () {
if [ ! -d "${HOME}/.PortWINE/gecko/wine-gecko-${gecko_ver}-x86" ] ; then 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 "######################################################"
echo "Download and install wine gecko x86..." echo "Download and install wine gecko x86..."
if try_download "${url_gecko_x86}" "${HOME}/.PortWINE/tmp/wine-gecko-${gecko_ver}-x86.tar.xz" ; then if try_download "${url_gecko_x86}" "${HOME}/.PortWINE/tmp/wine-gecko-${gecko_ver}-x86.tar.xz" ; then
@ -216,7 +277,8 @@ PW_DOWNLOAD_GECKO () {
zenity_error_download && PW_DOWNLOAD_GECKO zenity_error_download && PW_DOWNLOAD_GECKO
fi fi
fi fi
if [ ! -d "${HOME}/.PortWINE/gecko/wine-gecko-${gecko_ver}-x86_64" ] ; then if [ ! -d "${HOME}/.PortWINE/gecko/wine-gecko-${gecko_ver}-x86_64" ] ; then
export url_gecko_x86_64="https://dl.winehq.org/wine/wine-gecko/${gecko_ver}/wine-gecko-${gecko_ver}-x86_64.tar.xz"
echo "######################################################" echo "######################################################"
echo "Download and install wine gecko x86_64..." 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 if try_download "${url_gecko_x86_64}" "${HOME}/.PortWINE/tmp/wine-gecko-${gecko_ver}-x86_64.tar.xz" ; then
@ -231,74 +293,114 @@ PW_DOWNLOAD_GECKO () {
zenity_error_download && PW_DOWNLOAD_GECKO zenity_error_download && PW_DOWNLOAD_GECKO
fi fi
fi fi
create_new_dir "${WINEDIR}/share/wine/"
try_force_link_dir "${HOME}/.PortWINE/gecko" "${WINEDIR}"/share/wine/
try_force_link_dir "${HOME}/.PortWINE/mono" "${WINEDIR}"/share/wine/
} }
START_PORTWINE () 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
}
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
}
START_PORTWINE () {
PW_TRAY_ICON &
. "${USER_CONF}"
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
if [ ! -f "${HOME}/.Xresources" ]; then
try_remove_dir "${PORT_WINE_PATH}/data/vulkan" cp -f "${PORT_SCRIPTS_PATH}/.Xresources" "${HOME}"
create_new_dir "${PW_VULKAN_DLL}" xrdb -merge "${HOME}/.Xresources"
export url_dxvk="https://github.com/doitsujin/dxvk/releases/download/v${PW_DXVK_VER}/dxvk-${PW_DXVK_VER}.tar.gz"
if [ ! -d "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}" ] ; then
if pw_ping_test ; then
if try_download "${url_dxvk}" "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}.tar.gz" ; then
tar -zxvf "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}.tar.gz" -C "${PW_VULKAN_DLL}/"
try_remove_file "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}.tar.gz"
else
try_remove_file "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}.tar.gz"
`zenity --error --title "Error..." --text "You will need check internet connettion,\nor change DXVK version in db file!" --no-wrap ` > /dev/null 2>&1
PW_EDIT_DB & exit 1
fi
else
export PW_DXVK_VER="${PW_DEF_DXVK_VER}"
fi
fi
export url_vkd3d="https://github.com/HansKristian-Work/vkd3d-proton/releases/download/v${PW_VKD3D_VER}/vkd3d-proton-${PW_VKD3D_VER}.tar.zst"
if [ ! -d "${PW_VULKAN_DLL}/vkd3d-proton-${PW_VKD3D_VER}" ] ; then
if pw_ping_test ; then
if try_download "${url_vkd3d}" "${PW_VULKAN_DLL}/vkd3d-proton-${PW_VKD3D_VER}.tar.zst" ; then
tar -C "${PW_VULKAN_DLL}/" -I "${pw_zstd}" -xvf "${PW_VULKAN_DLL}/vkd3d-proton-${PW_VKD3D_VER}.tar.zst"
try_remove_file "${PW_VULKAN_DLL}/vkd3d-proton-${PW_VKD3D_VER}.tar.zst"
else
try_remove_file "${PW_VULKAN_DLL}/vkd3d-proton-${PW_VKD3D_VER}.tar.zst"
`zenity --error --title "Error..." --text "You will need to change VKD3D version in db file!" --no-wrap ` > /dev/null 2>&1
PW_EDIT_DB & exit 1
fi
else
export PW_VKD3D_VER="${PW_DEF_VKD3D_VER}"
fi
fi fi
PW_START_PROGRESS_BAR_CS "Start ${portname}... Please wait..." PW_START_PROGRESS_BAR_CS "Start ${portname}... Please wait..."
export WINELOADER="${WINEDIR}/bin/wine"
export WINEDLLPATH="${WINEDIR}/lib64/wine:${WINEDIR}/lib/wine:${PATH_TO_GAME}"
export WINESERVER="${WINEDIR}/bin/wineserver"
if [ ! -z "${PATH}" ]
then export PATH="${WINEDIR}/bin:${PATH}"
else export PATH="${WINEDIR}/bin"
fi
if [ ! -z "${LD_LIBRARY_PATH}" ]
then export LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib:${LD_LIBRARY_PATH}"
else export LD_LIBRARY_PATH="${WINEDIR}/lib64:${WINEDIR}/lib"
fi
export WINE="${WINELOADER}"
export GST_PLUGIN_SYSTEM_PATH_1_0="${WINEDIR}/lib64/gstreamer-1.0:${WINEDIR}/gstreamer-1.0"
export WINE_GST_REGISTRY_DIR="${PORT_WINE_TMP_PATH}" export 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 PW_FORCE_LARGE_ADDRESS_AWARE=1
export WINE="${WINEDIR}/bin/wine"
export WINELOADER="${WINEDIR}/bin/wine"
export WINESERVER="${WINEDIR}/bin/wineserver"
export WINEDLLPATH="${WINEDIR}/lib64/wine:${WINEDIR}/lib/wine"
create_new_dir "${WINEDIR}/share/wine/"
try_remove_dir "${WINEDIR}"/share/wine/gecko
try_remove_dir "${WINEDIR}"/share/wine/mono
try_force_link_dir "${HOME}/.PortWINE/gecko" "${WINEDIR}"/share/wine/
try_force_link_dir "${HOME}/.PortWINE/mono" "${WINEDIR}"/share/wine/
if [ ! -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}" ]
then export PATH="${WINEDIR}/bin:${PATH}"
else export PATH="${WINEDIR}/bin"
fi
if [ "${PW_USE_RUNTIME}" = 0 ] ; then
export PW_RUNTIME=""
echo "RUNTIME is disabled"
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/:"
if [ ! -z "${PW_SANDBOX_HOME_PATH}" ] && [ -d "${PW_SANDBOX_HOME_PATH}" ]; then
export PW_RUNTIME="${PW_WINELIB}/pressure-vessel/bin/pressure-vessel-unruntime \
--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_REMOVE_GAME_OVERLAY=0
export PRESSURE_VESSEL_IMPORT_VULKAN_LAYERS=1
export PRESSURE_VESSEL_GC_RUNTIMES=0
export PRESSURE_VESSEL_GC_LEGACY_RUNTIMES=0
export PRESSURE_VESSEL_RUNTIME_BASE="${PW_WINELIB}"
export PRESSURE_VESSEL_PREFIX="${PW_WINELIB}/pressure-vessel"
unset PRESSURE_VESSEL_FILESYSTEMS_RO
unset PRESSURE_VESSEL_FILESYSTEMS_RW
for PWRTMRO in ${PW_RT_MOUNT_RO[*]} ; do
if [ ! -z "${PRESSURE_VESSEL_FILESYSTEMS_RO}" ]
then export PRESSURE_VESSEL_FILESYSTEMS_RO="${PRESSURE_VESSEL_FILESYSTEMS_RO}:${PWRTMRO}"
else export PRESSURE_VESSEL_FILESYSTEMS_RO="${PWRTMRO}"
fi
done
for PWRTMRW in ${PW_RT_MOUNT_RW[*]} ; do
if [ ! -z "${PRESSURE_VESSEL_FILESYSTEMS_RW}" ]
then export PRESSURE_VESSEL_FILESYSTEMS_RW="${PRESSURE_VESSEL_FILESYSTEMS_RW}:${PWRTMRW}"
else export PRESSURE_VESSEL_FILESYSTEMS_RW="${PWRTMRW}"
fi
done
echo "RUNTIME is enabled"
fi
if [ ! -z "${PW_LOG}" ] && [ "${PW_LOG}" != 0 ] ; then if [ ! -z "${PW_LOG}" ] && [ "${PW_LOG}" != 0 ] ; then
export WINEDEBUG="fixme-all,err+loaddll,err+dll,err+file,err+reg" export WINEDEBUG="fixme-all,err+loaddll,err+dll,err+file,err+reg"
@ -341,7 +443,12 @@ 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
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/"
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
@ -383,7 +490,7 @@ START_PORTWINE ()
export optirun_on="prime-run" export optirun_on="prime-run"
export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json
fi fi
#export __NV_PRIME_RENDER_OFFLOAD=1 export __NV_PRIME_RENDER_OFFLOAD=1
export __GLX_VENDOR_LIBRARY_NAME=nvidia export __GLX_VENDOR_LIBRARY_NAME=nvidia
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
@ -409,16 +516,18 @@ 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_FORCE_DISABLED_GAMEMOD" -eq "0" ]; then if [ -x "`which "gamemoderun" 2>/dev/null`" ] && [ "$PW_USE_GAMEMODE" = "1" ]; then
export PW_GAMEMODERUN=1 export PW_GAMEMODERUN=1
echo "Gamemod will be launched." echo "Gamemod will be launched."
else else
export PW_GAMEMODERUN=0 export PW_GAMEMODERUN=0
echo "Gamemod is not installed or disabled in vars script: PW_FORCE_DISABLED_GAMEMOD=$PW_FORCE_DISABLED_GAMEMOD" echo "Gamemod is not installed or disabled in vars script: PW_USE_GAMEMODE=$PW_USE_GAMEMODE"
fi fi
PW_INIT_PFX PW_INIT_PFX
RUN_WINETRICKS_FROM_DB RUN_WINETRICKS_FROM_DB
@ -441,7 +550,11 @@ KILL_PORTWINE () {
fi fi
done done
fi 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 () { STOP_PORTWINE () {
WAIT_WINESERVER WAIT_WINESERVER
@ -455,11 +568,15 @@ STOP_PORTWINE () {
PW_STOP_PROGRESS_BAR PW_STOP_PROGRESS_BAR
try_remove_file "${PORT_SCRIPTS_PATH}/0" try_remove_file "${PORT_SCRIPTS_PATH}/0"
try_remove_file "${PORT_SCRIPTS_PATH}/1" 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
} }
UPDATE_WINETRICKS () { UPDATE_WINETRICKS () {
W_TRX_URL="https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks" W_TRX_URL="https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks"
pw_ping_test && W_TRX_EXT_VER="$(curl -s --list-only ${W_TRX_URL} | grep -i 'WINETRICKS_VERSION=' | sed 's/WINETRICKS_VERSION=//')" 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}" 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=//')" 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}" print_info "Version winetricks in port: ${W_TRX_INT_VER}"
@ -478,38 +595,40 @@ UPDATE_WINETRICKS () {
RUN_WINETRICKS_FROM_DB () { RUN_WINETRICKS_FROM_DB () {
UPDATE_WINETRICKS UPDATE_WINETRICKS
if [ ! -z "${PW_MUST_HAVE_DLL}" ]
then export PW_DLL_INSTALL="${PW_MUST_HAVE_DLL} ${PW_DLL_INSTALL}"
fi
if [ ! -z "${PW_DLL_INSTALL}" ]; then 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
for need_install_dll_to_pfx in ${PW_DLL_INSTALL} ; do touch "${WINEPREFIX}/winetricks.log"
if [ "${need_install_dll_to_pfx}" == "vcrun2015" ] || [ "${need_install_dll_to_pfx}" == "vcrun2017" ] ; then
need_install_dll_to_pfx="vcrun2019"
sed -i '/vcrun2015/d' "${WINEPREFIX}/winetricks.log"
sed -i '/vcrun2017/d' "${WINEPREFIX}/winetricks.log"
elif [ "${need_install_dll_to_pfx}" == "vcrun2019" ] ; then
sed -i '/vcrun2015/d' "${WINEPREFIX}/winetricks.log"
sed -i '/vcrun2017/d' "${WINEPREFIX}/winetricks.log"
fi
grep "${need_install_dll_to_pfx}" "${WINEPREFIX}/winetricks.log"
if [ "$?" == "1" ] ; then
if [ -z "${PW_DLL_NEED_INSTALL}" ]
then export PW_DLL_NEED_INSTALL="${need_install_dll_to_pfx}"
else export PW_DLL_NEED_INSTALL="${need_install_dll_to_pfx} ${PW_DLL_NEED_INSTALL}"
fi
export USE_WT_FROM_DB=1
fi
done
else
export PW_DLL_NEED_INSTALL="${PW_DLL_INSTALL}"
export USE_WT_FROM_DB=1
fi fi
try_remove_dir "${HOME}/.cache/winetricks/vcrun2019/"
for need_install_dll_to_pfx in ${PW_DLL_INSTALL} ; do
if [ "${need_install_dll_to_pfx}" == "vcrun2015" ] || [ "${need_install_dll_to_pfx}" == "vcrun2017" ] ; then
need_install_dll_to_pfx="vcrun2019"
sed -i '/vcrun2015/d' "${WINEPREFIX}/winetricks.log"
sed -i '/vcrun2017/d' "${WINEPREFIX}/winetricks.log"
elif [ "${need_install_dll_to_pfx}" == "vcrun2019" ] ; then
sed -i '/vcrun2015/d' "${WINEPREFIX}/winetricks.log"
sed -i '/vcrun2017/d' "${WINEPREFIX}/winetricks.log"
fi
grep "${need_install_dll_to_pfx}" "${WINEPREFIX}/winetricks.log"
if [ "$?" == "1" ] ; then
if [ -z "${PW_DLL_NEED_INSTALL}" ]
then export PW_DLL_NEED_INSTALL="${need_install_dll_to_pfx}"
else export PW_DLL_NEED_INSTALL="${need_install_dll_to_pfx} ${PW_DLL_NEED_INSTALL}"
fi
export USE_WT_FROM_DB=1
fi
done
if [ "${USE_WT_FROM_DB}" == "1" ] ; then if [ "${USE_WT_FROM_DB}" == "1" ] ; then
UPDATE_WINETRICKS
PW_STOP_PROGRESS_BAR PW_STOP_PROGRESS_BAR
print_info "Need to install DLL in prefix: ${PW_DLL_NEED_INSTALL}" print_info "Try to install DLL in prefix: ${PW_DLL_NEED_INSTALL}"
${PW_TERM} ${PW_RUNTIME} "${PORT_WINE_TMP_PATH}/winetricks" -q -r --force ${PW_DLL_NEED_INSTALL} chmod -R 775 "${HOME}/.cache/winetricks"
${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}
fi fi
PW_START_PROGRESS_BAR_CS "Start ${portname}... Please wait..." PW_START_PROGRESS_BAR_CS "Start ${portname}... Please wait..."
fi fi
@ -517,8 +636,9 @@ RUN_WINETRICKS_FROM_DB () {
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" export PW_WINDOWS_VER="xp64"
fi fi
${PW_RUNTIME} "${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
fi fi
} }
PW_INIT_DB () { PW_INIT_DB () {
@ -544,15 +664,14 @@ PW_UPDATE () {
fi fi
if [ ! -f "${PORT_WINE_TMP_PATH}/update_notifier" ] ; then if [ ! -f "${PORT_WINE_TMP_PATH}/update_notifier" ] ; then
echo "1" > "${PORT_WINE_TMP_PATH}/update_notifier" echo "1" > "${PORT_WINE_TMP_PATH}/update_notifier"
fi fi
read "update_not" < "${PORT_WINE_TMP_PATH}/update_notifier" read "update_not" < "${PORT_WINE_TMP_PATH}/update_notifier"
if [ "${update_not}" = "1" ] ; then if [ "${update_not}" = "1" ] ; then
pw_ping_test && echo `curl -s --list-only "${PW_FTP_URL}/current_version/${portname}_ver"` > "${PORT_WINE_TMP_PATH}/${portname}_cur_ver" if try_download_silent "${PW_FTP_URL}/current_version/${portname}_ver" "${PORT_WINE_TMP_PATH}/${portname}_cur_ver" ; then
if [ -f "${PORT_WINE_TMP_PATH}/${portname}_ver" ] ; then
read current_ver < "${PORT_WINE_TMP_PATH}/${portname}_cur_ver" read current_ver < "${PORT_WINE_TMP_PATH}/${portname}_cur_ver"
try_remove_file "${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 if [ ! -z "${current_ver}" ] && [ "${current_ver}" -gt "${install_ver}" ] ; then
xsd=`zenity --title "${port_upd1}" --text "${port_upd2}" --list --radiolist --height=220 --column="${inst_set}" --column "${port_upd3}" \ xsd=`zenity --title "${port_upd1}" --text "${port_upd2}" --list --radiolist --height=230 --column="${inst_set}" --column "${port_upd3}" \
TRUE "${port_upd4}" \ TRUE "${port_upd4}" \
FALSE "${port_upd5}" \ FALSE "${port_upd5}" \
FALSE "${port_upd6}" ` FALSE "${port_upd6}" `
@ -560,16 +679,16 @@ PW_UPDATE () {
"${port_upd4}") "${port_upd4}")
KILL_PORTWINE KILL_PORTWINE
# if try_download https://portwine-linux.ru/ftp/portwine/PortProton-$current_ver "${HOME}/.PortWINE/tmp/PortProton-$current_ver" ; then # if try_download https://portwine-linux.ru/ftp/portwine/PortProton-$current_ver "${HOME}/.PortWINE/tmp/PortProton-$current_ver" ; then
# sh "${HOME}/.PortWINE/tmp/PortProton-$current_ver" # sh "${HOME}/.PortWINE/tmp/PortProton-$current_ver"
# try_remove_file "${HOME}/.PortWINE/tmp/PortProton-$current_ver" # try_remove_file "${HOME}/.PortWINE/tmp/PortProton-$current_ver"
# fi & # fi &
xdg-open $porturl xdg-open $porturl
exit 0 ;; exit 0 ;;
"${port_upd5}") "${port_upd5}")
echo " " ;; echo " " ;;
"${port_upd6}") "${port_upd6}")
echo "0" > "${PORT_WINE_TMP_PATH}/update_notifier" ;; echo "0" > "${PORT_WINE_TMP_PATH}/update_notifier" ;;
esac esac
fi fi
fi fi
fi fi
@ -581,35 +700,35 @@ PW_UPDATE () {
port_time=$((${port_time}-1)) port_time=$((${port_time}-1))
echo "${port_time}" > "${HOME}/.config/.PortTime" echo "${port_time}" > "${HOME}/.config/.PortTime"
else else
xsd2=`zenity --title "${port_time1}" --text "${port_time2}" --list --radiolist --height=240 --column="${inst_set3}" --column "${port_time3}" \ xsd2=`zenity --title "${port_time1}" --text "${port_time2}" --list --radiolist --height=230 --column="${inst_set3}" --column "${port_time3}" \
TRUE "${port_time4}" \ TRUE "${port_time4}" \
FALSE "${port_time5}" \ FALSE "${port_time5}" \
FALSE "${port_time6}" ` FALSE "${port_time6}" `
if [ $? = 1 ] ; then if [ $? = 1 ] ; then
echo "1" > "${HOME}/.config/.PortTime" echo "1" > "${HOME}/.config/.PortTime"
else else
case $xsd2 in case $xsd2 in
"${port_time4}") "${port_time4}")
xdg-open "$urlg" & xdg-open "$urlg" &
echo "300" > "${HOME}/.config/.PortTime" echo "300" > "${HOME}/.config/.PortTime"
exit 0 ;; exit 0 ;;
"${port_time5}") "${port_time5}")
echo "75" > "${HOME}/.config/.PortTime" ;; echo "75" > "${HOME}/.config/.PortTime" ;;
"${port_time6}") "${port_time6}")
echo "150" > "${HOME}/.config/.PortTime" ;; echo "150" > "${HOME}/.config/.PortTime" ;;
esac esac
fi fi
fi fi
} }
PW_INIT_PFX () { PW_INIT_PFX () {
rm -f "${WINEDIR}"*/lib*/*steam*
rm -f "${WINEDIR}"*/lib*/wine/*steam*
rm -f "${WINEDIR}"*/lib*/wine/fakedlls/*steam*
if [ ! -d "${WINEPREFIX}" ] || [ ! -d "${WINEPREFIX}"/drive_c/windows ] || \ if [ ! -d "${WINEPREFIX}" ] || [ ! -d "${WINEPREFIX}"/drive_c/windows ] || \
[ ! -d "${WINEPREFIX}/dosdevices" ] || [ ! -f "${WINEPREFIX}"/userdef.reg ] || \ [ ! -d "${WINEPREFIX}/dosdevices" ] || [ ! -f "${WINEPREFIX}"/userdef.reg ] || \
[ ! -f "${WINEPREFIX}"/system.reg ] || [ ! -f "${WINEPREFIX}"/user.reg ] [ ! -f "${WINEPREFIX}"/system.reg ] || [ ! -f "${WINEPREFIX}"/user.reg ]
then then
rm -f "${WINEDIR}"*/lib*/*steam*
rm -f "${WINEDIR}"*/lib*/wine/*steam*
rm -f "${WINEDIR}"*/lib*/wine/*/*steam*
pw_clear_pfx pw_clear_pfx
create_new_dir "${WINEPREFIX}" create_new_dir "${WINEPREFIX}"
if [ -d "${WINEDIR}/share/default_pfx/" ] ; then if [ -d "${WINEDIR}/share/default_pfx/" ] ; then
@ -617,42 +736,53 @@ PW_INIT_PFX () {
fi fi
create_new_dir "${WINEPREFIX}/drive_c" create_new_dir "${WINEPREFIX}/drive_c"
create_new_dir "${WINEPREFIX}/dosdevices" create_new_dir "${WINEPREFIX}/dosdevices"
[ ! -d "${WINEPREFIX}/dosdevices/c:" ] && try_force_link_dir "${WINEPREFIX}/drive_c/" "${WINEPREFIX}/dosdevices/c:"
[ ! -d "${WINEPREFIX}/dosdevices/z:" ] && try_force_link_dir "/" "${WINEPREFIX}/dosdevices/z:"
create_new_dir "${WINEPREFIX}/drive_c/windows/syswow64/" create_new_dir "${WINEPREFIX}/drive_c/windows/syswow64/"
create_new_dir "${WINEPREFIX}/drive_c/windows/system32/" 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_STOP_PROGRESS_BAR
PW_START_PROGRESS_BAR_BLOCK "Updating prefix... Please wait..." PW_START_PROGRESS_BAR_BLOCK "Updating prefix... Please wait..."
KILL_PORTWINE KILL_PORTWINE
${PW_RUNTIME} "${WINELOADER}" wineboot -u ${PW_RUNTIME} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" wineboot -u
WAIT_WINESERVER WAIT_WINESERVER
KILL_PORTWINE KILL_PORTWINE
PW_STOP_PROGRESS_BAR PW_STOP_PROGRESS_BAR
PW_START_PROGRESS_BAR_CS "Initialization prefix..." PW_START_PROGRESS_BAR_CS "Initialization prefix..."
fi 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 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}" try_force_link_dir "${PORT_WINE_PATH}/data/pfx/drive_c/users/steamuser" "${PORT_WINE_PATH}/data/pfx/drive_c/users/${USER}"
fi 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/windows/Fonts/" create_new_dir "${WINEPREFIX}/drive_c/users/Public/Documents/Steam"
try_copy_file "${WINEDIR}/share/fonts/"LiberationSans-Regular.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"arial.ttf create_new_dir "${WINEPREFIX}/drive_c/users/steamuser/Documents/Steam"
try_copy_file "${WINEDIR}/share/fonts/"LiberationSans-Bold.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"arialbd.ttf if [ ! -d "${WINEPREFIX}/drive_c/users/steamuser/My Documents" ]
try_copy_file "${WINEDIR}/share/fonts/"LiberationSerif-Regular.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"times.ttf then try_force_link_dir "${WINEPREFIX}/drive_c/users/steamuser/Documents" "${WINEPREFIX}/drive_c/users/steamuser/My Documents"
try_copy_file "${WINEDIR}/share/fonts/"LiberationMono-Regular.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"cour.ttf fi
try_copy_file "${WINEDIR}/share/fonts/"SourceHanSansSCRegular.otf "${WINEPREFIX}/drive_c/windows/Fonts/"msyh.ttf
var_winedlloverride_update "steam_api,steam_api64,steamclient,steamclient64=n" var_winedlloverride_update "steam_api,steam_api64,steamclient,steamclient64=n"
export TOTAL_VRAM=`"${WINELIB}/amd64/usr/bin/glxinfo" -B | grep Total | awk -F: '{print $2}' | awk '{print $1}'` # export TOTAL_VRAM=`"${PW_WINELIB}/runtime/bin/glxinfo" -B | grep Total | awk -F: '{print $2}' | awk '{print $1}'`
echo "TOTAL_VRAM=${TOTAL_VRAM}" # 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}/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/" try_copy_file "${WINEDIR}/lib64/wine/dxvk/dxvk_config.dll" "${WINEPREFIX}/drive_c/windows/system32/"
if [ "${PW_VULKAN_USE}" = "0" ]; then if [ "${PW_VULKAN_USE}" = "0" ] ; then
export MESA_GLSL_CACHE_DIR="${PORT_WINE_TMP_PATH}" export MESA_GLSL_CACHE_DIR="${PORT_WINE_TMP_PATH}"
export GL_NO_DSO_FINALIZER=1 export __GLX_VENDOR_LIBRARY_NAME=nvidia
export GL_YIELD="NOTHING" export GL_YIELD="NOTHING"
export GL_SHARPEN_IGNORE_FILM_GRAIN=0
export GL_SHARPEN_ENABLE=1
export __GL_SHARPEN_VALUE=0
for wine_build_dll in d3d11 d3d10 d3d10core d3d10_1 d3d9 ; do 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/" 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/" then try_copy_file "${WINEDIR}/lib/wine/i386-windows/${wine_build_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
@ -661,55 +791,37 @@ PW_INIT_PFX () {
then try_copy_file "${WINEDIR}/lib64/wine/x86_64-windows/${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 fi
done done
if ! try_copy_file "${WINEDIR}"/lib/wine/fakedlls/dxgi.dll "${WINEPREFIX}/drive_c/windows/syswow64/" var_winedlloverride_update "d3d11,d3d10,d3d10core,d3d10_1,d3d9,dxgi=b;d3d12="
then try_copy_file "${WINEDIR}"/lib/wine/i386-windows/dxgi.dll "${WINEPREFIX}/drive_c/windows/syswow64/"
fi
if ! try_copy_file "${WINEDIR}"/lib64/wine/fakedlls/dxgi.dll "${WINEPREFIX}/drive_c/windows/system32/"
then try_copy_file "${WINEDIR}"/lib64/wine/x86_64-windows/dxgi.dll "${WINEPREFIX}/drive_c/windows/system32/"
fi
var_winedlloverride_update "dxgi=b;d3d12="
echo "Use OpenGL" echo "Use OpenGL"
elif [ "${PW_VULKAN_USE}" = "dxvk" ]; then elif [ "${PW_VULKAN_USE}" = "vkd3d" ] ; then
for wine_dxvk_dll in d3d11 d3d10 d3d10core d3d10_1 d3d9 dxgi ; do echo "Try copy native VKD3D files"
try_copy_file "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}/x32/${wine_dxvk_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/" for wine_vkd3d_dll in d3d12 libvkd3d-proton-utils-3 ; do
try_copy_file "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}/x64/${wine_dxvk_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/" try_copy_file "${WINEDIR}/lib/wine/vkd3d-proton/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
var_winedlloverride_update "${wine_dxvk_dll}=n" try_copy_file "${WINEDIR}/lib64/wine/vkd3d-proton/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/"
done
var_winedlloverride_update "d3d12="
echo "Use DXVK version ${PW_DXVK_VER} (DX9-DX11 to Vulkan)"
else
for wine_vkd3d_dll in d3d12 ; do
try_copy_file "${PW_VULKAN_DLL}/vkd3d-proton-${PW_VKD3D_VER}/x86/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
try_copy_file "${PW_VULKAN_DLL}/vkd3d-proton-${PW_VKD3D_VER}/x64/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/"
var_winedlloverride_update "${wine_vkd3d_dll}=n" var_winedlloverride_update "${wine_vkd3d_dll}=n"
done done
if [ ! -z "${PW_DXGI_FROM_DXVK}" ] && [ "${PW_DXGI_FROM_DXVK}" != 0 ] ; then var_winedlloverride_update "dxgi=b"
for wine_dxvk_dll in d3d11 d3d10 d3d10core d3d10_1 d3d9 dxgi ; do
try_copy_file "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}/x32/${wine_dxvk_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
try_copy_file "${PW_VULKAN_DLL}/dxvk-${PW_DXVK_VER}/x64/${wine_dxvk_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/"
var_winedlloverride_update "${wine_dxvk_dll}=n"
done
else
if ! try_copy_file "${WINEDIR}"/lib/wine/fakedlls/dxgi.dll "${WINEPREFIX}/drive_c/windows/syswow64/"
then try_copy_file "${WINEDIR}"/lib/wine/i386-windows/dxgi.dll "${WINEPREFIX}/drive_c/windows/syswow64/"
fi
if ! try_copy_file "${WINEDIR}"/lib64/wine/fakedlls/dxgi.dll "${WINEPREFIX}/drive_c/windows/system32/"
then try_copy_file "${WINEDIR}"/lib64/wine/x86_64-windows/dxgi.dll "${WINEPREFIX}/drive_c/windows/system32/"
fi
var_winedlloverride_update "dxgi=b"
for wine_build_dll in d3d11 d3d10 d3d10core d3d10_1 d3d9 ; do
if ! try_copy_file "${WINEDIR}/lib/wine/${wine_build_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
then try_copy_file "${WINEDIR}/lib/wine/i386-windows/${wine_build_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
fi
if ! try_copy_file "${WINEDIR}/lib64/wine/${wine_build_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/"
then try_copy_file "${WINEDIR}/lib64/wine/x86_64-windows/${wine_build_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/"
fi
done
fi
export VKD3D_FEATURE_LEVEL="12_0" export VKD3D_FEATURE_LEVEL="12_0"
export PW_WINDOWS_VER="10" echo "Use VKD3D-PROTON only (DX12 to vulkan)"
echo "Use VKD3D-PROTON version ${PW_VKD3D_VER} (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 fi
PW_OTHER_FIXES PW_OTHER_FIXES
} }
@ -717,28 +829,49 @@ PW_SCRIPTS_UPDATE () {
if [ ! -f "${PORT_WINE_TMP_PATH}/scripts_ver" ] ; then if [ ! -f "${PORT_WINE_TMP_PATH}/scripts_ver" ] ; then
echo "1000" > "${PORT_WINE_TMP_PATH}/scripts_ver" echo "1000" > "${PORT_WINE_TMP_PATH}/scripts_ver"
fi fi
pw_ping_test && echo `curl -s --list-only "${PW_FTP_URL}/current_version/scripts_ver"` > "${PORT_WINE_TMP_PATH}/scripts_cur_ver" export scripts_install_ver=`cat "${PORT_WINE_TMP_PATH}/scripts_ver" | head -n 1`
if [ "$?" == "0" ] ; then if [ ! -f "${PORT_WINE_TMP_PATH}/scripts_update_notifier" ] ; then
read scripts_current_ver < "${PORT_WINE_TMP_PATH}/scripts_cur_ver" echo "1" > "${PORT_WINE_TMP_PATH}/scripts_update_notifier"
try_remove_file "${PORT_WINE_TMP_PATH}/scripts_cur_ver" fi
if [ ! -z "${scripts_current_ver}" ] && [ "${scripts_current_ver}" -gt "${scripts_install_ver}" ] ; then read "scripts_update_not" < "${PORT_WINE_TMP_PATH}/scripts_update_notifier"
echo "######################################################" if [ "${scripts_update_not}" = "1" ] ; then
echo "Update scripts..." 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
try_remove_file "${PORT_WINE_TMP_PATH}/scripts.tar.xz" export scripts_current_ver=`cat "${PORT_WINE_TMP_PATH}/scripts_cur_ver" | grep SCRIPTS_VERSION | awk -F "=" '{print $2}'`
if try_download "${PW_FTP_URL}/dist/scripts.tar.xz" "${PORT_WINE_TMP_PATH}/scripts.tar.xz" ; then try_remove_file "${PORT_WINE_TMP_PATH}/scripts_cur_ver"
tar -Jxvf "${PORT_WINE_TMP_PATH}/scripts.tar.xz" -C "${PORT_WINE_PATH}/data/" echo "Scripts version in github = ${scripts_current_ver}"
if [ "$?" == "0" ] ; then echo "Scripts version local = ${scripts_install_ver}"
try_remove_file "${PORT_WINE_TMP_PATH}/scripts.tar.xz" if [ ! -z "${scripts_current_ver}" ] && [ "${scripts_current_ver}" -gt "${scripts_install_ver}" ] ; then
echo "${scripts_current_ver}" > "${PORT_WINE_TMP_PATH}/scripts_ver" xcsd=`zenity --title "${scripts_upd1}" --text "${scripts_upd2}" --list --radiolist --height=230 --column="${inst_set}" --column "${scripts_upd3}" \
"${pw_yad}" --title="Changelog" --borders=10 \ TRUE "${scripts_upd4}" \
--text="Скрипты были успешно обновлены.\nДля продолжения запуска порта нажмите ОК." \ FALSE "${scripts_upd5}" \
--text-align=center --text-info --show-uri --wrap --center --width=1200 --height=550 \ FALSE "${scripts_upd6}"`
--filename="${PORT_WINE_PATH}/data/changelog" --uri-color=red case $xcsd in
[ "$?" == 0 ] && /bin/bash -c ${pw_full_command_line[*]} & "${scripts_upd4}")
exit 0 echo "######################################################"
fi echo "Update scripts..."
else try_remove_file "${PORT_WINE_TMP_PATH}/PortWINE-master.tar.gz"
zenity_error_download && PW_SCRIPTS_UPDATE 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 fi
fi fi
@ -747,34 +880,36 @@ PW_SCRIPTS_UPDATE () {
PW_RUN () { 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}"
else else
cd "${WINEPREFIX}/drive_c" cd "${WINEPREFIX}/drive_c"
fi fi
pw_mangohud_check pw_mangohud_check
pw_vkbasalt_check
print_var "WINEDIR" "WINEARCH" "WINEPREFIX" "WINEDLLOVERRIDES" "PATH_TO_GAME" "PW_VULKAN_USE" "VKD3D_CONFIG" print_var "WINEDIR" "WINEARCH" "WINEPREFIX" "WINEDLLOVERRIDES" "PATH_TO_GAME" "PW_VULKAN_USE" "VKD3D_CONFIG"
if [ "${PW_LOG}" == 1 ] ; then if [ "${PW_LOG}" == 1 ] ; then
export PW_TERM=""
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} ${PW_RUNTIME} gamemoderun ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}" "&>>${PW_LOG_TO_FILE}" 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}"
$PW_TERM ${optirun_on} ${PW_RUNTIME} gamemoderun ${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} ${PW_RUNTIME} ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}" "&>>${PW_LOG_TO_FILE}" 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}"
$PW_TERM ${optirun_on} ${PW_RUNTIME} ${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 "Full command line: $PW_TERM ${optirun_on} ${PW_RUNTIME} gamemoderun ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}" echo "Use gamemode without terminal"
$PW_TERM ${optirun_on} ${PW_RUNTIME} gamemoderun ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} 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_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 "Full command line: $PW_TERM ${optirun_on} ${PW_RUNTIME} ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}" echo "Don\`t use gamemode without terminal"
$PW_TERM ${optirun_on} ${PW_RUNTIME} ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} 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_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###
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"
@ -793,23 +928,14 @@ fi
unset MANGOHUD PW_NO_ESYNC PW_NO_FSYNC PW_VULKAN_USE WINEDLLOVERRIDES PW_NO_WRITE_WATCH PW_CHECK_AUTOINSTAL 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 url_mono="https://github.com/madewokherd/wine-mono/releases/download/wine-mono-${mono_ver}/wine-mono-${mono_ver}-x86.tar.xz"
export url_gecko_x86="https://dl.winehq.org/wine/wine-gecko/${gecko_ver}/wine-gecko-${gecko_ver}-x86.tar.xz"
export url_gecko_x86_64="https://dl.winehq.org/wine/wine-gecko/${gecko_ver}/wine-gecko-${gecko_ver}-x86_64.tar.xz"
export urlg="https://portwine-linux.ru/portwine-faq/" export 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 WINEDIR="${PORT_WINE_PATH}"/data/dist export PW_WINELIB="${HOME}/.PortWINE/libs${pw_libs_ver}"
export WINELIB="${HOME}/.PortWINE/libs${pw_libs_ver}"
export WINEPREFIX="${PORT_WINE_PATH}/data/pfx"
export PW_COMPAT_MEDIA_PATH="${PORT_WINE_TMP_PATH}"
export WINE_WIN_START="${WINEPREFIX}/drive_c/windows/system32/start.exe"
export PW_RUNTIME="${WINELIB}/run-in-soldier --remove-game-overlay --share-home --runtime=runtime --"
export PW_GUI_ICON_PATH="${PORT_WINE_PATH}/data/img/gui" export PW_GUI_ICON_PATH="${PORT_WINE_PATH}/data/img/gui"
export PW_VULKAN_DLL="${HOME}/.PortWINE/vulkan"
export PW_DXVK_VER="${PW_DEF_DXVK_VER}"
export PW_VKD3D_VER="${PW_DEF_VKD3D_VER}"
export install_ver=`cat "${PORT_WINE_TMP_PATH}/${portname}_ver" | head -n 1` export install_ver=`cat "${PORT_WINE_TMP_PATH}/${portname}_ver" | head -n 1`
export scripts_install_ver=`cat "${PORT_WINE_TMP_PATH}/scripts_ver" | head -n 1` 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 PW_LOAD_LIBS

View File

@ -5,11 +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}/data/dxvk.conf"
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"
@ -17,7 +15,7 @@ try_remove_dir "${PORT_SCRIPTS_PATH}/vars"
create_new_dir "/home/${USER}/.local/share/applications" create_new_dir "/home/${USER}/.local/share/applications"
name_desktop="PortProton" name_desktop="PortProton"
echo "[Desktop Entry]" > "${PORT_WINE_PATH}/${name_desktop}.desktop" echo "[Desktop Entry]" > "${PORT_WINE_PATH}/${name_desktop}.desktop"
echo "Name=${name_desktop}" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" echo "Name=${name_desktop}" >> "${PORT_WINE_PATH}/${name_desktop}.desktop"
echo "Exec=env "${PORT_SCRIPTS_PATH}/start.sh %F"" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" echo "Exec=env "${PORT_SCRIPTS_PATH}/start.sh %F"" >> "${PORT_WINE_PATH}/${name_desktop}.desktop"
@ -34,7 +32,7 @@ cp -f "${PORT_WINE_PATH}/${name_desktop}.desktop" /home/${USER}/.local/share/app
update-desktop-database -q "${HOME}/.local/share/applications" update-desktop-database -q "${HOME}/.local/share/applications"
xdg-mime default PortProton.desktop "application/x-ms-dos-executable;application/x-wine-extension-msp;application/x-msi;application/x-msdos-program" xdg-mime default PortProton.desktop "application/x-ms-dos-executable;application/x-wine-extension-msp;application/x-msi;application/x-msdos-program"
name_desktop="readme" name_desktop="readme"
echo "[Desktop Entry]" > "${PORT_WINE_PATH}/${name_desktop}.desktop" echo "[Desktop Entry]" > "${PORT_WINE_PATH}/${name_desktop}.desktop"
echo "Name=${name_desktop}" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" echo "Name=${name_desktop}" >> "${PORT_WINE_PATH}/${name_desktop}.desktop"
echo "Version=1.0" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" echo "Version=1.0" >> "${PORT_WINE_PATH}/${name_desktop}.desktop"
@ -43,25 +41,11 @@ 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}/"*
try_force_link_dir "${PORT_WINE_PATH}/data/pfx/drive_c/" "${PORT_WINE_PATH}/"
if [ "${s_install}" = "1" ]; then if [ "${s_install}" = "1" ]; then
echo "Installation completed successfully." echo "Installation completed successfully."
else else
`zenity --info --title "${inst_set_top}" --text "${inst_succ}" --no-wrap ` > /dev/null 2>&1 `zenity --info --title "${inst_set_top}" --text "${inst_succ}" --no-wrap ` > /dev/null 2>&1
xdg-open "http://portwine-linux.ru/portwine-faq/" > /dev/null 2>&1 & exit 0 xdg-open "http://portwine-linux.ru/portwine-faq/" > /dev/null 2>&1 & exit 0
fi fi
unset INSTALLING_PORT

View File

@ -7,19 +7,18 @@ fi
. "$(dirname $(readlink -f "$0"))/runlib" . "$(dirname $(readlink -f "$0"))/runlib"
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}" "$WINE_WIN_START" /unix "$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" /unix "$portwine_exe" PW_RUN ${WINE_WIN_START} "$portwine_exe"
else else
PW_RUN "$WINE_WIN_START" explorer PW_RUN explorer
fi fi
} }
PORTWINE_CREATE_SHORTCUT () { PORTWINE_CREATE_SHORTCUT () {
@ -30,7 +29,11 @@ PORTWINE_CREATE_SHORTCUT () {
--title="${sc_path}" --filename="${PORT_WINE_PATH}/data/pfx/drive_c/") --title="${sc_path}" --filename="${PORT_WINE_PATH}/data/pfx/drive_c/")
if [ $? -eq 1 ];then exit 1; fi if [ $? -eq 1 ];then exit 1; fi
fi fi
PORTPROTON_NAME="$(basename "${PORTPROTON_EXE}" | sed s/".exe"/""/gi )" if [ ! -z "${PORTWINE_CREATE_SHORTCUT_NAME}" ] ; then
export PORTPROTON_NAME="${PORTWINE_CREATE_SHORTCUT_NAME}"
else
PORTPROTON_NAME="$(basename "${PORTPROTON_EXE}" | sed s/".exe"/""/gi )"
fi
PORTPROTON_PATH="$( cd "$( dirname "${PORTPROTON_EXE}" )" >/dev/null 2>&1 && pwd )" PORTPROTON_PATH="$( cd "$( dirname "${PORTPROTON_EXE}" )" >/dev/null 2>&1 && pwd )"
if [ -x "`which wrestool 2>/dev/null`" ]; then if [ -x "`which wrestool 2>/dev/null`" ]; then
wrestool -x --output="${PORTPROTON_PATH}/" -t14 "${PORTPROTON_EXE}" wrestool -x --output="${PORTPROTON_PATH}/" -t14 "${PORTPROTON_EXE}"
@ -80,13 +83,21 @@ PORTWINE_DEBUG () {
KILL_PORTWINE KILL_PORTWINE
export PW_LOG=1 export PW_LOG=1
export PW_WINEDBG_DISABLE=0 export PW_WINEDBG_DISABLE=0
START_PORTWINE
echo "${port_deb1}" > "${PORT_WINE_PATH}/${portname}.log" echo "${port_deb1}" > "${PORT_WINE_PATH}/${portname}.log"
echo "${port_deb2}" >> "${PORT_WINE_PATH}/${portname}.log" echo "${port_deb2}" >> "${PORT_WINE_PATH}/${portname}.log"
echo "-----------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "-------------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
echo "PortWINE version:" >> "${PORT_WINE_PATH}/${portname}.log" echo "PortWINE version:" >> "${PORT_WINE_PATH}/${portname}.log"
read install_ver < "${PORT_WINE_TMP_PATH}/${portname}_ver" read install_ver < "${PORT_WINE_TMP_PATH}/${portname}_ver"
echo "${portname}-${install_ver}" >> "${PORT_WINE_PATH}/${portname}.log" echo "${portname}-${install_ver}" >> "${PORT_WINE_PATH}/${portname}.log"
echo "------------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
echo "Scripts version:" >> "${PORT_WINE_PATH}/${portname}.log"
cat "${PORT_WINE_TMP_PATH}/scripts_ver" >> "${PORT_WINE_PATH}/${portname}.log"
echo "-----------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
if [ "${PW_USE_RUNTIME}" = 0 ] ; then
echo "RUNTIME is disabled" >> "${PORT_WINE_PATH}/${portname}.log"
else
echo "RUNTIME is enabled" >> "${PORT_WINE_PATH}/${portname}.log"
fi
echo "----------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "----------------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
if [ ! -z "${portwine_exe}" ] ; then if [ ! -z "${portwine_exe}" ] ; then
echo "Debug for programm:" >> "${PORT_WINE_PATH}/${portname}.log" echo "Debug for programm:" >> "${PORT_WINE_PATH}/${portname}.log"
@ -124,11 +135,11 @@ PORTWINE_DEBUG () {
free -m >> "${PORT_WINE_PATH}/${portname}.log" free -m >> "${PORT_WINE_PATH}/${portname}.log"
echo "-----------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "-----------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
echo "Graphic cards and drivers" >> "${PORT_WINE_PATH}/${portname}.log" echo "Graphic cards and drivers" >> "${PORT_WINE_PATH}/${portname}.log"
"${WINELIB}/amd64/usr/bin/glxinfo" -B >> "${PORT_WINE_PATH}/${portname}.log" "${PW_WINELIB}/runtime/bin/glxinfo" -B >> "${PORT_WINE_PATH}/${portname}.log"
echo "----------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "----------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
echo "Vulkan info device name:" >> "${PORT_WINE_PATH}/${portname}.log" echo "Vulkan info device name:" >> "${PORT_WINE_PATH}/${portname}.log"
"${WINELIB}/amd64/usr/bin/vulkaninfo" | grep deviceName >> "${PORT_WINE_PATH}/${portname}.log" "${PW_WINELIB}/runtime/bin/vulkaninfo" | grep deviceName >> "${PORT_WINE_PATH}/${portname}.log"
"${WINELIB}/amd64/usr/bin/vkcube" --c 50 "${PW_WINELIB}/runtime/bin/vkcube" --c 50
if [ $? -eq 0 ]; then if [ $? -eq 0 ]; then
echo "Vulkan cube test passed successfully" >> "${PORT_WINE_PATH}/${portname}.log" echo "Vulkan cube test passed successfully" >> "${PORT_WINE_PATH}/${portname}.log"
else else
@ -141,17 +152,20 @@ PORTWINE_DEBUG () {
fi fi
echo "--------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "--------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
echo "Version WINE in the Port" >> "${PORT_WINE_PATH}/${portname}.log" echo "Version WINE in the Port" >> "${PORT_WINE_PATH}/${portname}.log"
"$WINELOADER" --version 2>&1 | tee -a "${PORT_WINE_PATH}/${portname}.log" if [ -f "${WINEDIR}/version" ]
then cat "${WINEDIR}/version" >> "${PORT_WINE_PATH}/${portname}.log"
else ${PW_RUNTIME} "$WINELOADER" --version 2>&1 | tee -a "${PORT_WINE_PATH}/${portname}.log"
fi
echo "-------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "-------------------------------------------" >> "${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"
echo "------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
if [ ! -z "${PORTWINE_DB_FILE}" ]; then if [ ! -z "${PORTWINE_DB_FILE}" ]; then
echo "Use ${PORTWINE_DB_FILE} db file:" >> "${PORT_WINE_PATH}/${portname}.log" echo "Use ${PORTWINE_DB_FILE} db file:" >> "${PORT_WINE_PATH}/${portname}.log"
cat "${PORTWINE_DB_FILE}" | sed '/##/d' | awk '{print $1 " " $2}' >> "${PORT_WINE_PATH}/${portname}.log" cat "${PORTWINE_DB_FILE}" | sed '/##/d' >> "${PORT_WINE_PATH}/${portname}.log"
else else
echo "Use ${PORT_SCRIPTS_PATH}/portwine_db/default db file:" >> "${PORT_WINE_PATH}/${portname}.log" echo "Use ${PORT_SCRIPTS_PATH}/portwine_db/default db file:" >> "${PORT_WINE_PATH}/${portname}.log"
cat "${PORT_SCRIPTS_PATH}/portwine_db/default" | sed '/##/d' | awk '{print $1 " " $2}' >> "${PORT_WINE_PATH}/${portname}.log" cat "${PORT_SCRIPTS_PATH}/portwine_db/default" | sed '/##/d' >> "${PORT_WINE_PATH}/${portname}.log"
fi fi
echo "-----------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" echo "-----------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log"
echo "Log WINE:" >> "${PORT_WINE_PATH}/${portname}.log" echo "Log WINE:" >> "${PORT_WINE_PATH}/${portname}.log"
@ -168,26 +182,27 @@ PORTWINE_DEBUG () {
} }
PW_WINECFG () { PW_WINECFG () {
START_PORTWINE START_PORTWINE
PW_RUN "$WINE_WIN_START" winecfg PW_RUN winecfg
} }
PW_WINEFILE () { PW_WINEFILE () {
START_PORTWINE START_PORTWINE
PW_RUN "$WINE_WIN_START" explorer PW_RUN explorer
} }
PW_WINECMD () { PW_WINECMD () {
export PW_USE_TERMINAL=1 export PW_USE_TERMINAL=1
START_PORTWINE START_PORTWINE
PW_RUN cmd cd "${WINEPREFIX}/drive_c"
${PW_RUNTIME} xterm -e env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" cmd
} }
PW_WINEREG () { PW_WINEREG () {
START_PORTWINE START_PORTWINE
PW_RUN "$WINE_WIN_START" regedit PW_RUN regedit
} }
PW_WINETRICKS () { PW_WINETRICKS () {
UPDATE_WINETRICKS UPDATE_WINETRICKS
export PW_USE_TERMINAL=1 export PW_USE_TERMINAL=1
START_PORTWINE START_PORTWINE
"${PORT_WINE_TMP_PATH}/winetricks" -q -r --force ${PW_TERM} "${PORT_WINE_TMP_PATH}/winetricks" -q
} }
PW_EDIT_DB () { PW_EDIT_DB () {
xdg-open "${PORTWINE_DB_FILE}" xdg-open "${PORTWINE_DB_FILE}"
@ -196,6 +211,7 @@ PW_AUTO_INSTALL_FROM_DB () {
. "$PORT_SCRIPTS_PATH/autoinstall" . "$PORT_SCRIPTS_PATH/autoinstall"
$PW_YAD_SET $PW_YAD_SET
} }
###MAIN###
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 ] || [ -z "${PW_VULKAN_USE}" ]; then
if [ ! -z "${PORTWINE_DB_FILE}" ] && [ ! -z "${PW_VULKAN_USE}" ]; then if [ ! -z "${PORTWINE_DB_FILE}" ] && [ ! -z "${PW_VULKAN_USE}" ]; then
@ -208,7 +224,7 @@ if [ ! -z "${portwine_exe}" ]; then
--button='EDIT DB'!!"${loc_edit_db} ${PORTWINE_DB}":118 \ --button='EDIT DB'!!"${loc_edit_db} ${PORTWINE_DB}":118 \
--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="$?" PW_YAD_SET="$?"
elif [ ! -z "${PORTWINE_DB_FILE}" ] && [ -z "${PW_VULKAN_USE}" ]; then elif [ ! -z "${PORTWINE_DB_FILE}" ] && [ -z "${PW_VULKAN_USE}" ]; then
if [ -z "${PW_COMMENT_DB}" ] ; then if [ -z "${PW_COMMENT_DB}" ] ; then
@ -221,7 +237,7 @@ if [ ! -z "${portwine_exe}" ]; then
--button='EDIT DB'!!"${loc_edit_db} ${PORTWINE_DB}":118 \ --button='EDIT DB'!!"${loc_edit_db} ${PORTWINE_DB}":118 \
--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="$?" PW_YAD_SET="$?"
export VULKAN_MOD=`echo "$OUTPUT_START" | awk '{print $1}'` export VULKAN_MOD=`echo "$OUTPUT_START" | awk '{print $1}'`
else else
@ -231,7 +247,7 @@ if [ ! -z "${portwine_exe}" ]; then
--field="Run with :CB" "DXVK (DX 9-11 to Vulkan)"\!"VKD3D (DX 12 to Vulkan)"\!"OPENGL " \ --field="Run with :CB" "DXVK (DX 9-11 to Vulkan)"\!"VKD3D (DX 12 to Vulkan)"\!"OPENGL " \
--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="$?" PW_YAD_SET="$?"
export VULKAN_MOD=`echo "$OUTPUT_START" | awk '{print $1}'` export VULKAN_MOD=`echo "$OUTPUT_START" | awk '{print $1}'`
fi fi
@ -264,12 +280,48 @@ 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
}
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=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=2 --scroll \ "${pw_yad}" --plug=$KEY --tabnum=2 --form --columns=2 --scroll \
--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"' \
--field=" GoG Galaxy Launcher"!"$PW_GUI_ICON_PATH/gog.png":"BTN" '@bash -c "button_click PW_GOG"' \ --field=" GoG Galaxy Launcher"!"$PW_GUI_ICON_PATH/gog.png":"BTN" '@bash -c "button_click PW_GOG"' \
--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=" 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"' & \
@ -290,7 +342,7 @@ else
"${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
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}'`

View File

@ -1,16 +1,20 @@
#!/bin/bash #!/bin/bash
# Author: Castro-Fidel (PortWINE-Linux.ru) #Author: Castro-Fidel (PortWINE-Linux.ru)
#SCRIPTS_VERSION=1117
######################################################################## ########################################################################
#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
#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_FORCE_DISABLED_GAMEMOD=1 #export PW_XKBD_RU_HACK=1
export PW_USE_RUNTIME=1 # 0 - disabled; 1 - enabled
export PW_DEF_DXVK_VER=1.8.1 export PW_RT_MOUNT_RO=("${HOME}/.PortWINE")
export PW_DEF_VKD3D_VER=2.3.1 export PW_RT_MOUNT_RW=("/media" "/mnt" "/run/media/${USER}" "${PORT_WINE_PATH}")
#export PW_SANDBOX_HOME_PATH="${PORT_WINE_PATH}"
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=""
@ -18,16 +22,21 @@ export PW_USE_TERMINAL=0
export PW_WINEDBG_DISABLE=1 export PW_WINEDBG_DISABLE=1
export PW_WINDOWS_VER="7" export PW_WINDOWS_VER="10"
export WINEARCH="win64" export WINEARCH="win64"
export mono_ver=6.1.2 export mono_ver=6.1.2
export gecko_ver=2.47.2 export gecko_ver=2.47.2
export pw_libs_ver="_v13" export pw_libs_ver="_v16"
export PW_FORCE_LARGE_ADDRESS_AWARE=1 export WINEDIR="${PORT_WINE_PATH}/data/dist"
export WINEPREFIX="${PORT_WINE_PATH}/data/pfx"
export WINE_WIN_START="start.exe /i /unix"
export porturl="http://portwine-linux.ru/" export porturl="http://portwine-linux.ru/"
export PW_MUST_HAVE_DLL=""
export GDK_BACKEND="x11"
######################################################################## ########################################################################
ADD_IN_START_PORTWINE () ADD_IN_START_PORTWINE ()
{ {

View File

@ -0,0 +1,19 @@
reshadeTexturePath = /home/xuser/.local/share/reshade/Textures
reshadeIncludePath = /home/xuser/.local/share/reshade
FakeMotionBlur = /home/xuser/.local/share/reshade/Shaders/FakeMotionBlur.fx
FXAA = /home/xuser/.local/share/reshade/Shaders/FXAA.fx
GaussianBlur = /home/xuser/.local/share/reshade/Shaders/GaussianBlur.fx
HQ4X = /home/xuser/.local/share/reshade/Shaders/HQ4X.fx
Layer = /home/xuser/.local/share/reshade/Shaders/Layer.fx
LevelsPlus = /home/xuser/.local/share/reshade/Shaders/LevelsPlus.fx
MagicBloom = /home/xuser/.local/share/reshade/Shaders/MagicBloom.fx
ReflectiveBumpMapping = /home/xuser/.local/share/reshade/Shaders/ReflectiveBumpMapping.fx
SMAA = /home/xuser/.local/share/reshade/Shaders/SMAA.fx
Tonemap = /home/xuser/.local/share/reshade/Shaders/Tonemap.fx
Vignette = /home/xuser/.local/share/reshade/Shaders/Vignette.fx
Curves = /home/xuser/.local/share/reshade/Shaders/Curves.fx
FakeHDR = /home/xuser/.local/share/reshade/Shaders/FakeHDR.fx
casSharpness=0.8
toggleKey = Home
effects = Curves:cas

View File

@ -19,7 +19,7 @@ export PW_FTP_URL="https://portwine-linux.ru/ftp"
export INSTALLING_PORT=1 export INSTALLING_PORT=1
export PROGS_INST="" export PROGS_INST=""
export vexit=0 export vexit=0
export minimum_ldd_ver="2.28" export minimum_ldd_ver="2.21"
######################################################################## ########################################################################
export local_script_hash=$(sha256sum "$0" | awk '{print $1}') export local_script_hash=$(sha256sum "$0" | awk '{print $1}')
export remote_script_hash=`curl -s --list-only "${PW_FTP_URL}/portwine/${portname}-${port_ver}.sha256sum" | awk '{print $1}'` export remote_script_hash=`curl -s --list-only "${PW_FTP_URL}/portwine/${portname}-${port_ver}.sha256sum" | awk '{print $1}'`
@ -164,5 +164,5 @@ sed -n 1,168p "${links}/${setup_script}" > "${PORT_WINE_PATH}/data/tmp/${setup_s
echo "${portname}" > "${PORT_WINE_PATH}/data/tmp/portname" echo "${portname}" > "${PORT_WINE_PATH}/data/tmp/portname"
######################################################################## ########################################################################
cd "${PORT_WINE_PATH}/data/scripts" cd "${PORT_WINE_PATH}/data/scripts"
sh "${PORT_WINE_PATH}/data/scripts/setup.sh" && exit 0 /bin/bash -c "${PORT_WINE_PATH}/data/scripts/setup.sh" && exit 0
################################ARCH_BIN################################ ################################ARCH_BIN################################