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