Compare commits
47 Commits
779fc18eb5
...
devel
Author | SHA1 | Date | |
---|---|---|---|
|
fd9df57242 | ||
|
c55b2845ee | ||
|
62fd39f7c6 | ||
|
83ec48812b | ||
|
5ad6b9e72c | ||
|
066e37aad4 | ||
|
84674a3ae4 | ||
|
ffaccd507f | ||
|
4869746a30 | ||
a7d5784874 | |||
0b3d16c13f | |||
90ea238f34 | |||
a1695c032d | |||
fa55bb8f35 | |||
cb1fea9fdd | |||
691468d5a1 | |||
c7cb4503bb | |||
85e1ddd2d1 | |||
f863ab2664 | |||
d043905e16 | |||
b57b6d8a76 | |||
9cee5b32e9 | |||
b50f450b04 | |||
|
69ec71e564 | ||
|
e1a47bdb0e | ||
|
c1b7c33444 | ||
9c3d3e37e1 | |||
|
c33d9ba3f5 | ||
|
ca9c63711d | ||
|
9064faf36f | ||
|
88c5d78713 | ||
|
7c573daca5 | ||
|
e9a13ae5d8 | ||
|
e2f1476d90 | ||
|
ccd9b166d1 | ||
|
4e18752e5c | ||
|
0a277c430e | ||
|
4b72da7abf | ||
90df03eec7 | |||
f67d2c27f4 | |||
|
e9dc5604d4 | ||
|
a2acf29a37 | ||
|
a8f0badcd1 | ||
085220ea94 | |||
|
252ed89e4e | ||
|
d44749fbeb | ||
|
1b007ee3cb |
@@ -2,6 +2,35 @@ You can help us in the development of the project on the website: https://linux-
|
|||||||
----------------------------------------
|
----------------------------------------
|
||||||
Changelog:
|
Changelog:
|
||||||
|
|
||||||
|
###Scripts version 2439### / Date: 31.07.2025 / Download update size: 4 megabytes
|
||||||
|
* improved functions for checking and selecting video cards (thanks to Htylol)
|
||||||
|
* added blocking of 3D API versions not supported by the video card or driver (thanks to Htylol)
|
||||||
|
* added the ability to forcefully unblock all 3D API in global settings (thanks to Htylol)
|
||||||
|
* fixed amdvlk and amdgpupro driver selection (thanks to Htylol)
|
||||||
|
* fixed launching OpenGL games on NVIDIA video cards (thanks to Htylol)
|
||||||
|
* other small improvements and script fixes
|
||||||
|
|
||||||
|
###Scripts version 2438### / Date: 26.07.2025 / Download update size: 4 megabytes
|
||||||
|
* fixed locale detection for flatpak version of PortProton (thanks to Htylol)
|
||||||
|
* updated OPTISCALER to v02-0.7.7-pre12 (thanks to @eljeyna)
|
||||||
|
* more games working with OPTISCALER
|
||||||
|
|
||||||
|
###Scripts version 2437### / Date: 25.07.2025 / Download update size: 4 megabytes
|
||||||
|
* FSYNC and ESYNC are disabled by default
|
||||||
|
* WINE_LG is used by default for all Sony games
|
||||||
|
* added a block on enabling USE_LS_FRAME_GEN if the GLIBC version in the system is lower than 2.38
|
||||||
|
* additional interface optimizations were made (thanks to Htylol)
|
||||||
|
* work continued on improving the 3D Api selection functions (thanks to Htylol)
|
||||||
|
|
||||||
|
###Scripts version 2436### / Date: 24.07.2025 / Download update size: 230 megabytes
|
||||||
|
* changed DXVK and VKD3D versions for DirectX to Vulkan translation (thanks to Htylol):
|
||||||
|
- The newest ones work only with "MESA 25+" or "NVIDIA 550.54.14+" drivers
|
||||||
|
- Stable ones work with any drivers, provided that the video card supports Vulkan version "1.3+"
|
||||||
|
- Sarek works with any video card that supports Vulkan version "1.1+"
|
||||||
|
* PROTON_LG updated to version "10-10" (with NTSYNC support)
|
||||||
|
* accelerated opening of the list of third-party WINE versions (thanks to Boria138)
|
||||||
|
* added to the lists of third-party WINE all WOW64 versions from Kron4ek and x86_64_v3 builds from CachyOS (thanks to Boria138)
|
||||||
|
|
||||||
###Scripts version 2435### / stable / Date: 23.07.2025 / Download update size: 380 megabytes
|
###Scripts version 2435### / stable / Date: 23.07.2025 / Download update size: 380 megabytes
|
||||||
* cumulative update of stable version of PortProton scripts
|
* cumulative update of stable version of PortProton scripts
|
||||||
* removed tab for downloading third-party versions of WINE-GE-GUSTOM (outdated versions of WINE)
|
* removed tab for downloading third-party versions of WINE-GE-GUSTOM (outdated versions of WINE)
|
||||||
|
@@ -2,6 +2,35 @@
|
|||||||
-----------------------------------------
|
-----------------------------------------
|
||||||
История изменений:
|
История изменений:
|
||||||
|
|
||||||
|
###Scripts version 2439### / Дата: 31.07.2025 / Размер скачиваемого обновления: 4 мегабайта
|
||||||
|
* улучшены функции проверки и выбора видеокарт (спасибо Htylol)
|
||||||
|
* добавлена блокировка не поддерживаемых видеокартой, или драйвером, версий 3D Api (спасибо Htylol)
|
||||||
|
* добавлена возможность принудительной разблокировки всех 3D Api в глобальных настройках (спасибо Htylol)
|
||||||
|
* исправлен выбор драйвера amdvlk и amdgpupro (спасибо Htylol)
|
||||||
|
* исправлен запуск OpenGL игр на NVIDIA видеокартах (спасибо Htylol)
|
||||||
|
* другие небольшие улучшения и исправления скриптов
|
||||||
|
|
||||||
|
###Scripts version 2438### / Дата: 26.07.2025 / Размер скачиваемого обновления: 4 мегабайта
|
||||||
|
* исправлено определение локалей для flatpak версии PortProton (спасибо Htylol)
|
||||||
|
* обновлен OPTISCALER до версии v02-0.7.7-pre12 (спасибо @eljeyna)
|
||||||
|
* расширено количество игр работающих с OPTISCALER
|
||||||
|
|
||||||
|
###Scripts version 2437### / Дата: 25.07.2025 / Размер скачиваемого обновления: 4 мегабайта
|
||||||
|
* FSYNC и ESYNC по умолчанию выключены
|
||||||
|
* для всех игр от Sony по умолчанию используется WINE_LG
|
||||||
|
* добавлена блокировка включения USE_LS_FRAME_GEN если версия GLIBC в системе ниже чем 2.38
|
||||||
|
* произведены дополнительные оптимизации интерфейса (спасибо Htylol)
|
||||||
|
* продолжены работы по улучшению функций выбора 3D Api (спасибо Htylol)
|
||||||
|
|
||||||
|
###Scripts version 2436### / Дата: 24.07.2025 / Размер скачиваемого обновления: 230 мегабайт
|
||||||
|
* изменены версии DXVK и VKD3D для трансляции DirectX в Vulkan (спасибо Htylol):
|
||||||
|
- Новейшие работают только с драйверами "MESA 25+", или "NVIDIA 550.54.14+"
|
||||||
|
- Стабильные работают с любыми драйверами при условии что видеокарта поддерживает Vulkan версии "1.3+"
|
||||||
|
- Sarek работает с любой видеокартой поддерживающей Vulkan версии "1.1+"
|
||||||
|
* обновлен PROTON_LG до версии "10-10" (с поддержкой NTSYNC)
|
||||||
|
* ускорено открытие списка сторонних версий WINE (спасибо Boria138)
|
||||||
|
* добавлены в списки сторонних WINE все WOW64 версии от Kron4ek и сборки x86_64_v3 от CachyOS (спасибо Boria138)
|
||||||
|
|
||||||
###Scripts version 2435### / stable / Дата: 23.07.2025 / Размер скачиваемого обновления: 380 мегабайт
|
###Scripts version 2435### / stable / Дата: 23.07.2025 / Размер скачиваемого обновления: 380 мегабайт
|
||||||
* кумулятивное обновление стабильной версии скриптов PortProton
|
* кумулятивное обновление стабильной версии скриптов PortProton
|
||||||
* удалена вкладка скачивания сторонних версий WINE-GE-GUSTOM (устаревшие версии WINE)
|
* удалена вкладка скачивания сторонних версий WINE-GE-GUSTOM (устаревшие версии WINE)
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
msgid ""
|
msgid ""
|
||||||
msgstr "Project-Id-Version: PACKAGE VERSION\n"
|
msgstr "Project-Id-Version: PACKAGE VERSION\n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-07-24 16:50+0300\n"
|
"POT-Creation-Date: 2025-07-28 19:50+0500\n"
|
||||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||||
@@ -581,6 +581,10 @@ msgid "A very dangerous way to hack the memory write timer in ntdll. This "
|
|||||||
"recommended not to change the value.)"
|
"recommended not to change the value.)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "GLIBC version 2.38+ is required for use Lossless Scaling frame "
|
||||||
|
"generation"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Change the version of <b>WINDOWS</b> emulation"
|
msgid "Change the version of <b>WINDOWS</b> emulation"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -1427,6 +1431,9 @@ msgstr ""
|
|||||||
msgid "Disable GameScope and go to the previous menu"
|
msgid "Disable GameScope and go to the previous menu"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "The graphics card does not support Vulkan"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Recommended value"
|
msgid "Recommended value"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -1457,6 +1464,12 @@ msgstr ""
|
|||||||
msgid "By time"
|
msgid "By time"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "unlock"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "unlocked"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "GLOBAL SETTINGS (USER.CONF)"
|
msgid "GLOBAL SETTINGS (USER.CONF)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@@ -1537,6 +1550,13 @@ msgstr ""
|
|||||||
msgid "This setting sorts the shortcuts in the main menu"
|
msgid "This setting sorts the shortcuts in the main menu"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "Unlock all 3D APIs"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "Allows you to unlock all available 3D APIs, even if your current "
|
||||||
|
"graphics card does not meet the minimum requirements"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Open the <b>user.conf</b> settings file in a system text editor to "
|
msgid "Open the <b>user.conf</b> settings file in a system text editor to "
|
||||||
"view and change variables manually"
|
"view and change variables manually"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -1623,12 +1643,6 @@ msgstr ""
|
|||||||
msgid "FONTS"
|
msgid "FONTS"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgid "Attention working version of vulkan not detected!"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
msgid "It is recommended to run games in OpenGL (low performance possible)!"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
msgid "PortProton was launched in creation mode PortProton.log and it is "
|
msgid "PortProton was launched in creation mode PortProton.log and it is "
|
||||||
"successfully stored in the root directory of the port"
|
"successfully stored in the root directory of the port"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
@@ -8,7 +8,7 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: \n"
|
"Project-Id-Version: \n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-07-24 16:50+0300\n"
|
"POT-Creation-Date: 2025-07-28 19:50+0500\n"
|
||||||
"PO-Revision-Date: 2025-07-24 15:26+0500\n"
|
"PO-Revision-Date: 2025-07-24 15:26+0500\n"
|
||||||
"Last-Translator: \n"
|
"Last-Translator: \n"
|
||||||
"Language-Team: \n"
|
"Language-Team: \n"
|
||||||
@@ -707,6 +707,10 @@ msgstr ""
|
|||||||
"Esto mejora el rendimiento de algunos juegos muy específicos. (Se recomienda "
|
"Esto mejora el rendimiento de algunos juegos muy específicos. (Se recomienda "
|
||||||
"no cambiar el valor)"
|
"no cambiar el valor)"
|
||||||
|
|
||||||
|
msgid ""
|
||||||
|
"GLIBC version 2.38+ is required for use Lossless Scaling frame generation"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Change the version of <b>WINDOWS</b> emulation"
|
msgid "Change the version of <b>WINDOWS</b> emulation"
|
||||||
msgstr "Cambiar la versión de emulación de <b>WINDOWS</b>"
|
msgstr "Cambiar la versión de emulación de <b>WINDOWS</b>"
|
||||||
|
|
||||||
@@ -1861,6 +1865,10 @@ msgstr ""
|
|||||||
msgid "Disable GameScope and go to the previous menu"
|
msgid "Disable GameScope and go to the previous menu"
|
||||||
msgstr "Desactivar GameScope e ir al menú anterior"
|
msgstr "Desactivar GameScope e ir al menú anterior"
|
||||||
|
|
||||||
|
#, fuzzy
|
||||||
|
msgid "The graphics card does not support Vulkan"
|
||||||
|
msgstr "Elige una tarjeta gráfica para ejecutar el juego"
|
||||||
|
|
||||||
msgid "Recommended value"
|
msgid "Recommended value"
|
||||||
msgstr "Valor recomendado"
|
msgstr "Valor recomendado"
|
||||||
|
|
||||||
@@ -1891,6 +1899,12 @@ msgstr "Desde el último inicio"
|
|||||||
msgid "By time"
|
msgid "By time"
|
||||||
msgstr "Mostrar tiempo"
|
msgstr "Mostrar tiempo"
|
||||||
|
|
||||||
|
msgid "unlock"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid "unlocked"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "GLOBAL SETTINGS (USER.CONF)"
|
msgid "GLOBAL SETTINGS (USER.CONF)"
|
||||||
msgstr "CONFIGURACIONES GLOBALES (USER.CONF)"
|
msgstr "CONFIGURACIONES GLOBALES (USER.CONF)"
|
||||||
|
|
||||||
@@ -1989,6 +2003,14 @@ msgstr ""
|
|||||||
"Esta configuración ordena los accesos directos en el menú principal según el "
|
"Esta configuración ordena los accesos directos en el menú principal según el "
|
||||||
"tiempo transcurrido en la aplicación o juego"
|
"tiempo transcurrido en la aplicación o juego"
|
||||||
|
|
||||||
|
msgid "Unlock all 3D APIs"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgid ""
|
||||||
|
"Allows you to unlock all available 3D APIs, even if your current graphics "
|
||||||
|
"card does not meet the minimum requirements"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Open the <b>user.conf</b> settings file in a system text editor to view and "
|
"Open the <b>user.conf</b> settings file in a system text editor to view and "
|
||||||
"change variables manually"
|
"change variables manually"
|
||||||
@@ -2082,13 +2104,6 @@ msgstr "DLLS"
|
|||||||
msgid "FONTS"
|
msgid "FONTS"
|
||||||
msgstr "FUENTES"
|
msgstr "FUENTES"
|
||||||
|
|
||||||
msgid "Attention working version of vulkan not detected!"
|
|
||||||
msgstr "¡Atención, no se detectó la versión funcional de vulkan!"
|
|
||||||
|
|
||||||
msgid "It is recommended to run games in OpenGL (low performance possible)!"
|
|
||||||
msgstr ""
|
|
||||||
"¡Se recomienda ejecutar juegos en OpenGL (es posible un rendimiento bajo)!"
|
|
||||||
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"PortProton was launched in creation mode PortProton.log and it is "
|
"PortProton was launched in creation mode PortProton.log and it is "
|
||||||
"successfully stored in the root directory of the port"
|
"successfully stored in the root directory of the port"
|
||||||
@@ -2218,6 +2233,13 @@ msgstr "UNIRSE"
|
|||||||
msgid "THIRD PARTY LIBRARIES"
|
msgid "THIRD PARTY LIBRARIES"
|
||||||
msgstr "BIBLIOTECAS DE TERCEROS"
|
msgstr "BIBLIOTECAS DE TERCEROS"
|
||||||
|
|
||||||
|
#~ msgid "Attention working version of vulkan not detected!"
|
||||||
|
#~ msgstr "¡Atención, no se detectó la versión funcional de vulkan!"
|
||||||
|
|
||||||
|
#~ msgid "It is recommended to run games in OpenGL (low performance possible)!"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "¡Se recomienda ejecutar juegos en OpenGL (es posible un rendimiento bajo)!"
|
||||||
|
|
||||||
#~ msgid "Legacy DXVK (Vulkan v1.1)"
|
#~ msgid "Legacy DXVK (Vulkan v1.1)"
|
||||||
#~ msgstr "DXVK heredado (Vulkan v1.1)"
|
#~ msgstr "DXVK heredado (Vulkan v1.1)"
|
||||||
|
|
||||||
@@ -2269,8 +2291,8 @@ msgstr "BIBLIOTECAS DE TERCEROS"
|
|||||||
#~ msgid ""
|
#~ msgid ""
|
||||||
#~ "For adding shortcut to STEAM, needed restart.\\n\\nRestart STEAM now?"
|
#~ "For adding shortcut to STEAM, needed restart.\\n\\nRestart STEAM now?"
|
||||||
#~ msgstr ""
|
#~ msgstr ""
|
||||||
#~ "Para agregar el acceso directo a STEAM, es necesario reiniciar.\\n"
|
#~ "Para agregar el acceso directo a STEAM, es necesario reiniciar."
|
||||||
#~ "\\¿Quieres reiniciar STEAM ahora?"
|
#~ "\\n\\¿Quieres reiniciar STEAM ahora?"
|
||||||
|
|
||||||
#~ msgid "Restarting STEAM... Please wait."
|
#~ msgid "Restarting STEAM... Please wait."
|
||||||
#~ msgstr "Restarting STEAM... Please wait."
|
#~ msgstr "Restarting STEAM... Please wait."
|
||||||
|
@@ -7,16 +7,16 @@ msgid ""
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
"Project-Id-Version: \n"
|
"Project-Id-Version: \n"
|
||||||
"Report-Msgid-Bugs-To: \n"
|
"Report-Msgid-Bugs-To: \n"
|
||||||
"POT-Creation-Date: 2025-07-24 16:50+0300\n"
|
"POT-Creation-Date: 2025-07-28 19:50+0500\n"
|
||||||
"PO-Revision-Date: 2025-07-24 16:51+0300\n"
|
"PO-Revision-Date: 2025-07-28 19:50+0500\n"
|
||||||
"Last-Translator: \n"
|
"Last-Translator: \n"
|
||||||
"Language-Team: \n"
|
"Language-Team: \n"
|
||||||
"Language: ru_RU\n"
|
"Language: ru_RU\n"
|
||||||
"MIME-Version: 1.0\n"
|
"MIME-Version: 1.0\n"
|
||||||
"Content-Type: text/plain; charset=UTF-8\n"
|
"Content-Type: text/plain; charset=UTF-8\n"
|
||||||
"Content-Transfer-Encoding: 8bit\n"
|
"Content-Transfer-Encoding: 8bit\n"
|
||||||
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
|
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
|
||||||
"%10<=4 && (n%100<12 || n%100>14) ? 1 : 2);\n"
|
"n%10<=4 && (n%100<12 || n%100>14) ? 1 : 2);\n"
|
||||||
"X-Generator: Poedit 3.6\n"
|
"X-Generator: Poedit 3.6\n"
|
||||||
|
|
||||||
msgid ""
|
msgid ""
|
||||||
@@ -368,8 +368,8 @@ msgid ""
|
|||||||
"More than one DB file found for the application being launched.\\nSelect the "
|
"More than one DB file found for the application being launched.\\nSelect the "
|
||||||
"required one, or delete the extra DB file before the next run.\\n"
|
"required one, or delete the extra DB file before the next run.\\n"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Для запускаемого приложения найдено более одного конфигурационного файла ."
|
"Для запускаемого приложения найдено более одного конфигурационного "
|
||||||
"ppdb.\\nВыберите нужный или удалите лишний файл .ppdb перед следующим "
|
"файла .ppdb.\\nВыберите нужный или удалите лишний файл .ppdb перед следующим "
|
||||||
"запуском\\n"
|
"запуском\\n"
|
||||||
|
|
||||||
msgid "Update scripts:"
|
msgid "Update scripts:"
|
||||||
@@ -506,8 +506,8 @@ msgid ""
|
|||||||
"<b>Super + Y :</b> Toggle NIS upscaling\n"
|
"<b>Super + Y :</b> Toggle NIS upscaling\n"
|
||||||
"<b>Super + I :</b> Increase FSR sharpness by 1\n"
|
"<b>Super + I :</b> Increase FSR sharpness by 1\n"
|
||||||
"<b>Super + O :</b> Decrease FSR sharpness by 1\n"
|
"<b>Super + O :</b> Decrease FSR sharpness by 1\n"
|
||||||
"<b>Super + S :</b> Take screenshot (currently goes to /tmp/gamescope_DATE."
|
"<b>Super + S :</b> Take screenshot (currently goes to /tmp/"
|
||||||
"png)\n"
|
"gamescope_DATE.png)\n"
|
||||||
"<b>Super + G :</b> Toggle keyboard grab\n"
|
"<b>Super + G :</b> Toggle keyboard grab\n"
|
||||||
"<b>Super + C :</b> Update clipboard"
|
"<b>Super + C :</b> Update clipboard"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -732,6 +732,10 @@ msgstr ""
|
|||||||
"производительность некоторых очень специфических игр (рекомендуется не "
|
"производительность некоторых очень специфических игр (рекомендуется не "
|
||||||
"изменять значение)"
|
"изменять значение)"
|
||||||
|
|
||||||
|
msgid ""
|
||||||
|
"GLIBC version 2.38+ is required for use Lossless Scaling frame generation"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
msgid "Change the version of <b>WINDOWS</b> emulation"
|
msgid "Change the version of <b>WINDOWS</b> emulation"
|
||||||
msgstr "Изменить версию эмуляции <b>WINDOWS</b>"
|
msgstr "Изменить версию эмуляции <b>WINDOWS</b>"
|
||||||
|
|
||||||
@@ -1349,9 +1353,9 @@ msgid ""
|
|||||||
"MangoHud settings (Keys <b>R_SHIFT + F12</b> disable MangoHud)\\n<b>note:</"
|
"MangoHud settings (Keys <b>R_SHIFT + F12</b> disable MangoHud)\\n<b>note:</"
|
||||||
"b> To display help for each item, just hover the mouse cursor over the text."
|
"b> To display help for each item, just hover the mouse cursor over the text."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
"Настройки MangoHud (клавиши <b>R_SHIFT + F12</b> отключают "
|
"Настройки MangoHud (клавиши <b>R_SHIFT + F12</b> отключают MangoHud)"
|
||||||
"MangoHud)\\n<b>Примечание:</b> Чтобы отобразить справку для каждого "
|
"\\n<b>Примечание:</b> Чтобы отобразить справку для каждого элемента, "
|
||||||
"элемента, наведите курсор мыши на текст."
|
"наведите курсор мыши на текст."
|
||||||
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Enabling fps limitation with MANGOHUD tools built into PortProton (Keys "
|
"Enabling fps limitation with MANGOHUD tools built into PortProton (Keys "
|
||||||
@@ -1849,6 +1853,9 @@ msgstr ""
|
|||||||
msgid "Disable GameScope and go to the previous menu"
|
msgid "Disable GameScope and go to the previous menu"
|
||||||
msgstr "Отключить Gamescope и перейти в предыдущее меню"
|
msgstr "Отключить Gamescope и перейти в предыдущее меню"
|
||||||
|
|
||||||
|
msgid "The graphics card does not support Vulkan"
|
||||||
|
msgstr "Видеокарта не поддерживает Vulkan"
|
||||||
|
|
||||||
msgid "Recommended value"
|
msgid "Recommended value"
|
||||||
msgstr "Рекомендуемое значение"
|
msgstr "Рекомендуемое значение"
|
||||||
|
|
||||||
@@ -1879,6 +1886,12 @@ msgstr "По данным последнего запуска"
|
|||||||
msgid "By time"
|
msgid "By time"
|
||||||
msgstr "По проведённому времени"
|
msgstr "По проведённому времени"
|
||||||
|
|
||||||
|
msgid "unlock"
|
||||||
|
msgstr "разблокировать"
|
||||||
|
|
||||||
|
msgid "unlocked"
|
||||||
|
msgstr "разблокировано"
|
||||||
|
|
||||||
msgid "GLOBAL SETTINGS (USER.CONF)"
|
msgid "GLOBAL SETTINGS (USER.CONF)"
|
||||||
msgstr "ГЛОБАЛЬНЫЕ НАСТРОЙКИ (USER.CONF)"
|
msgstr "ГЛОБАЛЬНЫЕ НАСТРОЙКИ (USER.CONF)"
|
||||||
|
|
||||||
@@ -1974,6 +1987,16 @@ msgstr "Сортировка ярлыков по"
|
|||||||
msgid "This setting sorts the shortcuts in the main menu"
|
msgid "This setting sorts the shortcuts in the main menu"
|
||||||
msgstr "Эта настройка сортирует ярлыки в главном меню"
|
msgstr "Эта настройка сортирует ярлыки в главном меню"
|
||||||
|
|
||||||
|
msgid "Unlock all 3D APIs"
|
||||||
|
msgstr "Разблокировать все 3D API"
|
||||||
|
|
||||||
|
msgid ""
|
||||||
|
"Allows you to unlock all available 3D APIs, even if your current graphics "
|
||||||
|
"card does not meet the minimum requirements"
|
||||||
|
msgstr ""
|
||||||
|
"Позволяет разблокировать все доступные 3D API, даже если ваша текущая "
|
||||||
|
"видеокарта не соответствует минимальным требованиям"
|
||||||
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"Open the <b>user.conf</b> settings file in a system text editor to view and "
|
"Open the <b>user.conf</b> settings file in a system text editor to view and "
|
||||||
"change variables manually"
|
"change variables manually"
|
||||||
@@ -2068,13 +2091,6 @@ msgstr "БИБЛИОТЕКИ"
|
|||||||
msgid "FONTS"
|
msgid "FONTS"
|
||||||
msgstr "ШРИФТЫ"
|
msgstr "ШРИФТЫ"
|
||||||
|
|
||||||
msgid "Attention working version of vulkan not detected!"
|
|
||||||
msgstr "Внимание, рабочая версия Vulkan не обнаружена!"
|
|
||||||
|
|
||||||
msgid "It is recommended to run games in OpenGL (low performance possible)!"
|
|
||||||
msgstr ""
|
|
||||||
"Игры рекомендуется запускать в OpenGL (возможна низкая производительность)"
|
|
||||||
|
|
||||||
msgid ""
|
msgid ""
|
||||||
"PortProton was launched in creation mode PortProton.log and it is "
|
"PortProton was launched in creation mode PortProton.log and it is "
|
||||||
"successfully stored in the root directory of the port"
|
"successfully stored in the root directory of the port"
|
||||||
@@ -2197,11 +2213,18 @@ msgid "SPONSORS"
|
|||||||
msgstr "СПОНСОРЫ"
|
msgstr "СПОНСОРЫ"
|
||||||
|
|
||||||
msgid "JOIN"
|
msgid "JOIN"
|
||||||
msgstr "ПРИСОЕДЕНИТЬСЯ"
|
msgstr "ПРИСОЕДИНИТЬСЯ"
|
||||||
|
|
||||||
msgid "THIRD PARTY LIBRARIES"
|
msgid "THIRD PARTY LIBRARIES"
|
||||||
msgstr "БИБЛИОТЕКИ"
|
msgstr "БИБЛИОТЕКИ"
|
||||||
|
|
||||||
|
#~ msgid "Attention working version of vulkan not detected!"
|
||||||
|
#~ msgstr "Внимание, рабочая версия Vulkan не обнаружена!"
|
||||||
|
|
||||||
|
#~ msgid "It is recommended to run games in OpenGL (low performance possible)!"
|
||||||
|
#~ msgstr ""
|
||||||
|
#~ "Игры рекомендуется запускать в OpenGL (возможна низкая производительность)"
|
||||||
|
|
||||||
#~ msgid "Legacy DXVK (Vulkan v1.1)"
|
#~ msgid "Legacy DXVK (Vulkan v1.1)"
|
||||||
#~ msgstr "Устаревший DXVK (Vulkan v1.1)"
|
#~ msgstr "Устаревший DXVK (Vulkan v1.1)"
|
||||||
|
|
||||||
@@ -2267,14 +2290,14 @@ msgstr "БИБЛИОТЕКИ"
|
|||||||
|
|
||||||
#~ msgid ""
|
#~ msgid ""
|
||||||
#~ "<b>Gamescope is not detected on the system, to install it, run the "
|
#~ "<b>Gamescope is not detected on the system, to install it, run the "
|
||||||
#~ "command in the terminal:\\nflatpak install -y runtime/org.freedesktop."
|
#~ "command in the terminal:\\nflatpak install -y runtime/"
|
||||||
#~ "Platform.VulkanLayer.gamescope/x86_64/$%{GAMESCOPE_VERSION}%\\n(Can be "
|
#~ "org.freedesktop.Platform.VulkanLayer.gamescope/x86_64/$%"
|
||||||
#~ "selected and copied)</b>"
|
#~ "{GAMESCOPE_VERSION}%\\n(Can be selected and copied)</b>"
|
||||||
#~ msgstr ""
|
#~ msgstr ""
|
||||||
#~ "<b>Gamescope не найден в системе, для его установки выполните команду в "
|
#~ "<b>Gamescope не найден в системе, для его установки выполните команду в "
|
||||||
#~ "терминале:\\nflatpak install -y runtime/org.freedesktop.Platform."
|
#~ "терминале:\\nflatpak install -y runtime/"
|
||||||
#~ "VulkanLayer.gamescope/x86_64/$%{GAMESCOPE_VERSION}%\\n(Данный текст можно "
|
#~ "org.freedesktop.Platform.VulkanLayer.gamescope/x86_64/$%"
|
||||||
#~ "выделить и скопировать)</b>"
|
#~ "{GAMESCOPE_VERSION}%\\n(Данный текст можно выделить и скопировать)</b>"
|
||||||
|
|
||||||
#, sh-format
|
#, sh-format
|
||||||
#~ msgid ""
|
#~ msgid ""
|
||||||
@@ -2561,8 +2584,8 @@ msgstr "БИБЛИОТЕКИ"
|
|||||||
#~ "<b>-F fsr:</b> use AMD FidelityFX™ Super Resolution 1.0 for upscaling.\n"
|
#~ "<b>-F fsr:</b> use AMD FidelityFX™ Super Resolution 1.0 for upscaling.\n"
|
||||||
#~ "<b>-F nis:</b> use NVIDIA Image Scaling v1.0.3 for upscaling.\n"
|
#~ "<b>-F nis:</b> use NVIDIA Image Scaling v1.0.3 for upscaling.\n"
|
||||||
#~ "<b>-S integer:</b> use integer scaling.\n"
|
#~ "<b>-S integer:</b> use integer scaling.\n"
|
||||||
#~ "<b>-S stretch:</b> use stretch scaling, the game will fill the window. (e."
|
#~ "<b>-S stretch:</b> use stretch scaling, the game will fill the window. "
|
||||||
#~ "g. 4:3 to 16:9).\n"
|
#~ "(e.g. 4:3 to 16:9).\n"
|
||||||
#~ "<b>-b:</b> create a border-less window.\n"
|
#~ "<b>-b:</b> create a border-less window.\n"
|
||||||
#~ "<b>-f:</b> create a full-screen window."
|
#~ "<b>-f:</b> create a full-screen window."
|
||||||
#~ msgstr ""
|
#~ msgstr ""
|
||||||
@@ -2571,8 +2594,8 @@ msgstr "БИБЛИОТЕКИ"
|
|||||||
#~ "размера окна Gamescope обновит эти настройки. Если указано -H, а -W нет, "
|
#~ "размера окна Gamescope обновит эти настройки. Если указано -H, а -W нет, "
|
||||||
#~ "предполагается соотношение сторон 16:9. По умолчанию установлено значение "
|
#~ "предполагается соотношение сторон 16:9. По умолчанию установлено значение "
|
||||||
#~ "1280×720.\n"
|
#~ "1280×720.\n"
|
||||||
#~ "<b>-w, -h:</b> установить разрешение, используемое в игре. Если указано -"
|
#~ "<b>-w, -h:</b> установить разрешение, используемое в игре. Если указано "
|
||||||
#~ "h, а -w нет, предполагается соотношение сторон 16:9. По умолчанию "
|
#~ "-h, а -w нет, предполагается соотношение сторон 16:9. По умолчанию "
|
||||||
#~ "используются значения, указанные в -W и -H.\n"
|
#~ "используются значения, указанные в -W и -H.\n"
|
||||||
#~ "<b>-r:</b> установить ограничение частоты кадров для игры. По умолчанию "
|
#~ "<b>-r:</b> установить ограничение частоты кадров для игры. По умолчанию "
|
||||||
#~ "значение неограниченно.\n"
|
#~ "значение неограниченно.\n"
|
||||||
|
@@ -854,48 +854,35 @@ check_selinux () {
|
|||||||
export -f check_selinux
|
export -f check_selinux
|
||||||
|
|
||||||
check_vendor_gpu () {
|
check_vendor_gpu () {
|
||||||
unset VENDOR_GPU_USE
|
check_pci_driver () {
|
||||||
if [[ $PW_GPU_USE != disabled ]] ; then
|
case "$1" in
|
||||||
case "${PW_GPU_USE,,}" in
|
|
||||||
*nvidia*)
|
*nvidia*)
|
||||||
[[ -d /sys/bus/pci/drivers/nvidia ]] && VENDOR_GPU_USE+=("nvidia")
|
[[ -d /sys/bus/pci/drivers/nvidia ]] && VENDOR_GPU_USE="nvidia"
|
||||||
[[ -d /sys/bus/pci/drivers/nouveau ]] && VENDOR_GPU_USE+=("nouveau")
|
[[ -d /sys/bus/pci/drivers/nouveau ]] && VENDOR_GPU_USE="nouveau"
|
||||||
;;
|
;;
|
||||||
*amd*)
|
*amd*)
|
||||||
[[ -d /sys/bus/pci/drivers/amdgpu ]] && VENDOR_GPU_USE+=("amd")
|
[[ -d /sys/bus/pci/drivers/amdgpu ]] && VENDOR_GPU_USE="amd"
|
||||||
;;
|
;;
|
||||||
*intel*)
|
*intel*)
|
||||||
[[ -d /sys/bus/pci/drivers/i915 ]] && VENDOR_GPU_USE+=("intel")
|
[[ -d /sys/bus/pci/drivers/i915 ]] && VENDOR_GPU_USE="intel"
|
||||||
;;
|
;;
|
||||||
|
*)
|
||||||
|
[[ -d /sys/bus/pci/drivers/nvidia ]] && VENDOR_GPU_USE="nvidia"
|
||||||
|
[[ -d /sys/bus/pci/drivers/nouveau ]] && VENDOR_GPU_USE="nouveau"
|
||||||
|
[[ -d /sys/bus/pci/drivers/amdgpu ]] && VENDOR_GPU_USE="amd"
|
||||||
|
[[ -d /sys/bus/pci/drivers/i915 ]] && VENDOR_GPU_USE="intel"
|
||||||
|
;;
|
||||||
esac
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
if [[ -n $PW_GPU_USE && $PW_GPU_USE != "disabled" ]]
|
||||||
|
then check_pci_driver "${PW_GPU_USE,,}"
|
||||||
|
elif pw_check_glxinfo
|
||||||
|
then check_pci_driver "$(<"${PW_TMPFS_PATH}/glxinfo.tmp" tr '[:upper:]' '[:lower:]')"
|
||||||
|
else check_pci_driver
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if command -v glxinfo &>/dev/null ; then
|
echo "$VENDOR_GPU_USE"
|
||||||
if [[ ! -f "${PW_TMPFS_PATH}/glxinfo.tmp" ]] ; then
|
|
||||||
glxinfo -B &> "${PW_TMPFS_PATH}/glxinfo.tmp"
|
|
||||||
fi
|
|
||||||
case "$(<"${PW_TMPFS_PATH}/glxinfo.tmp" tr '[:upper:]' '[:lower:]')" in
|
|
||||||
*nvidia*)
|
|
||||||
[[ -d /sys/bus/pci/drivers/nvidia ]] && VENDOR_GPU_USE+=("nvidia")
|
|
||||||
[[ -d /sys/bus/pci/drivers/nouveau ]] && VENDOR_GPU_USE+=("nouveau")
|
|
||||||
;;
|
|
||||||
*amd*)
|
|
||||||
[[ -d /sys/bus/pci/drivers/amdgpu ]] && VENDOR_GPU_USE+=("amd")
|
|
||||||
;;
|
|
||||||
*intel*)
|
|
||||||
[[ -d /sys/bus/pci/drivers/i915 ]] && VENDOR_GPU_USE+=("intel")
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ -z ${VENDOR_GPU_USE[0]} ]] ; then
|
|
||||||
[[ -d /sys/bus/pci/drivers/nvidia ]] && VENDOR_GPU_USE+=("nvidia")
|
|
||||||
[[ -d /sys/bus/pci/drivers/nouveau ]] && VENDOR_GPU_USE+=("nouveau")
|
|
||||||
[[ -d /sys/bus/pci/drivers/amdgpu ]] && VENDOR_GPU_USE+=("amd")
|
|
||||||
[[ -d /sys/bus/pci/drivers/i915 ]] && VENDOR_GPU_USE+=("intel")
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "${VENDOR_GPU_USE[*]}"
|
|
||||||
}
|
}
|
||||||
|
|
||||||
background_pid () {
|
background_pid () {
|
||||||
@@ -1347,7 +1334,6 @@ seconds_to_time () {
|
|||||||
|
|
||||||
combobox_fix () {
|
combobox_fix () {
|
||||||
if [[ -z "$1" ]] ; then
|
if [[ -z "$1" ]] ; then
|
||||||
print_error "no argument specified for combobox_fix"
|
|
||||||
return 1
|
return 1
|
||||||
else
|
else
|
||||||
local name1 name2
|
local name1 name2
|
||||||
@@ -1658,12 +1644,7 @@ init_wine_ver () {
|
|||||||
done
|
done
|
||||||
IFS="$orig_IFS"
|
IFS="$orig_IFS"
|
||||||
fi
|
fi
|
||||||
if [[ -z $(lsbash "${PORT_WINE_PATH}/data/dist/" --grep "${PW_WINE_USE}") ]] ; then
|
|
||||||
if [[ "$PW_WINE_USE" =~ PROTON_LG* ]]
|
|
||||||
then export PW_WINE_USE=PROTON_LG
|
|
||||||
else export PW_WINE_USE=WINE_LG
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
if [[ "$PW_WINE_USE" == PROTON_LG ]]
|
if [[ "$PW_WINE_USE" == PROTON_LG ]]
|
||||||
then export PW_WINE_USE="${PW_PROTON_LG_VER}"
|
then export PW_WINE_USE="${PW_PROTON_LG_VER}"
|
||||||
elif [[ "$PW_WINE_USE" == WINE_LG ]]
|
elif [[ "$PW_WINE_USE" == WINE_LG ]]
|
||||||
@@ -1735,15 +1716,15 @@ init_wine_ver () {
|
|||||||
export WINEDLLPATH
|
export WINEDLLPATH
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if ! check_flatpak ; then
|
if ! check_flatpak ; then
|
||||||
WINE_LIBRARY_PATH="${WINEDIR}/lib"
|
WINE_LIBRARY_PATH="${WINEDIR}/lib"
|
||||||
if [[ -d "${WINEDIR}/lib64/gstreamer-1.0" ]]
|
if [[ -d "${WINEDIR}/lib64/gstreamer-1.0" ]]
|
||||||
then WINE_LIBRARY_PATH+=":${WINEDIR}/lib64"
|
then WINE_LIBRARY_PATH+=":${WINEDIR}/lib64"
|
||||||
elif [[ -d "${WINEDIR}/lib/x86_64-linux-gnu" ]]
|
elif [[ -d "${WINEDIR}/lib/x86_64-linux-gnu" ]]
|
||||||
then WINE_LIBRARY_PATH+=":${WINEDIR}/lib/x86_64-linux-gnu:${WINEDIR}/lib/i386-linux-gnu"
|
then WINE_LIBRARY_PATH+=":${WINEDIR}/lib/x86_64-linux-gnu:${WINEDIR}/lib/i386-linux-gnu"
|
||||||
fi
|
fi
|
||||||
export WINE_LIBRARY_PATH
|
export WINE_LIBRARY_PATH
|
||||||
fi
|
fi
|
||||||
|
|
||||||
export MEDIACONV_BLANK_VIDEO_FILE="${WINEDIR}"/share/media/blank.mkv
|
export MEDIACONV_BLANK_VIDEO_FILE="${WINEDIR}"/share/media/blank.mkv
|
||||||
export MEDIACONV_BLANK_AUDIO_FILE="${WINEDIR}"/share/media/blank.ptna
|
export MEDIACONV_BLANK_AUDIO_FILE="${WINEDIR}"/share/media/blank.ptna
|
||||||
@@ -1781,8 +1762,8 @@ pw_init_runtime () {
|
|||||||
|
|
||||||
PW_PV_OVERRIDES="/usr/lib/pressure-vessel/overrides/lib"
|
PW_PV_OVERRIDES="/usr/lib/pressure-vessel/overrides/lib"
|
||||||
|
|
||||||
if ! check_flatpak; then
|
if ! check_flatpak; then
|
||||||
export PW_LD_LIBRARY_PATH="\
|
export PW_LD_LIBRARY_PATH="\
|
||||||
${PW_PLUGINS_PATH}/portable/lib/lib64:\
|
${PW_PLUGINS_PATH}/portable/lib/lib64:\
|
||||||
${PW_PLUGINS_PATH}/portable/lib/lib32:\
|
${PW_PLUGINS_PATH}/portable/lib/lib32:\
|
||||||
${PW_PV_OVERRIDES}/x86_64-linux-gnu/aliases:\
|
${PW_PV_OVERRIDES}/x86_64-linux-gnu/aliases:\
|
||||||
@@ -1791,7 +1772,7 @@ ${PW_PV_OVERRIDES}/i386-linux-gnu/aliases:\
|
|||||||
/overrides/lib/i386-linux-gnu:\
|
/overrides/lib/i386-linux-gnu:\
|
||||||
/lib/x86_64-linux-gnu:\
|
/lib/x86_64-linux-gnu:\
|
||||||
/lib/i386-linux-gnu"
|
/lib/i386-linux-gnu"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
export PW_PATH="${PW_PLUGINS_PATH}/portable/bin${PATH:+:$PATH}"
|
export PW_PATH="${PW_PLUGINS_PATH}/portable/bin${PATH:+:$PATH}"
|
||||||
|
|
||||||
@@ -2451,13 +2432,16 @@ pw_init_db () {
|
|||||||
if [[ -f "${PORTWINE_DB_FILE}" ]] ; then
|
if [[ -f "${PORTWINE_DB_FILE}" ]] ; then
|
||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${PORTWINE_DB_FILE}"
|
source "${PORTWINE_DB_FILE}"
|
||||||
init_wine_ver &&
|
export PW_WINE_VER="$PW_WINE_USE"
|
||||||
|
init_wine_ver
|
||||||
print_info "Use $PORTWINE_DB_FILE db file."
|
print_info "Use $PORTWINE_DB_FILE db file."
|
||||||
else
|
else
|
||||||
if [[ "${PW_DISABLED_CREATE_DB}" != 1 ]] ; then
|
if [[ "${PW_DISABLED_CREATE_DB}" != 1 ]] ; then
|
||||||
if [[ -n "${PORTWINE_DB}" ]] ; then
|
if [[ -n "${PORTWINE_DB}" ]] ; then
|
||||||
PORTWINE_DB_FILE=$(grep -il "#${PORTWINE_DB}.exe" "${PORT_SCRIPTS_PATH}/portwine_db"/*)
|
PORTWINE_DB_FILE=$(grep -il "#${PORTWINE_DB}.exe" "${PORT_SCRIPTS_PATH}/portwine_db"/*)
|
||||||
export PORTWINE_DB_FILE
|
export PORTWINE_DB_FILE
|
||||||
|
use_exiftool "$portwine_exe"
|
||||||
|
grep -q "Sony" "${PW_TMPFS_PATH}/exiftool.tmp" && PW_WINE_USE="WINE_LG"
|
||||||
if [[ -z "${PORTWINE_DB_FILE}" ]] ; then
|
if [[ -z "${PORTWINE_DB_FILE}" ]] ; then
|
||||||
{
|
{
|
||||||
echo "#!/usr/bin/env bash"
|
echo "#!/usr/bin/env bash"
|
||||||
@@ -2475,7 +2459,7 @@ pw_init_db () {
|
|||||||
# shellcheck source=/dev/null
|
# shellcheck source=/dev/null
|
||||||
source "${PORTWINE_DB_FILE}"
|
source "${PORTWINE_DB_FILE}"
|
||||||
fi
|
fi
|
||||||
edit_db_from_gui PW_VULKAN_USE PW_WINE_USE PW_PREFIX_NAME
|
edit_db_from_gui PW_WINE_USE PW_PREFIX_NAME
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -2496,40 +2480,40 @@ pw_init_db () {
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
case "${PW_AMD_VULKAN_USE}" in
|
case "${PW_AMD_VULKAN_USE}" in
|
||||||
"amdvlk")
|
"amdvlk")
|
||||||
PW_VK_ICD_FILENAMES=""
|
PW_VK_ICD_FILENAMES=""
|
||||||
for dir in /opt/amdgpu/etc/vulkan/icd.d /etc/vulkan/icd.d /usr/share/vulkan/icd.d; do
|
for dir in /opt/amdgpu/etc/vulkan/icd.d /etc/vulkan/icd.d /usr/share/vulkan/icd.d; do
|
||||||
for file in "$dir"/amd_icd*.json; do
|
for file in "$dir"/amd_icd*.json; do
|
||||||
[ -f "$file" ] && PW_VK_ICD_FILENAMES="${PW_VK_ICD_FILENAMES:+${PW_VK_ICD_FILENAMES}:}$file"
|
[ -f "$file" ] && PW_VK_ICD_FILENAMES="${PW_VK_ICD_FILENAMES:+${PW_VK_ICD_FILENAMES}:}$file"
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
export PW_VK_ICD_FILENAMES
|
export PW_VK_ICD_FILENAMES
|
||||||
;;
|
;;
|
||||||
|
|
||||||
"amdgpupro")
|
"amdgpupro")
|
||||||
PW_VK_ICD_FILENAMES=""
|
PW_VK_ICD_FILENAMES=""
|
||||||
for dir in /opt/amdgpu-pro/etc/vulkan/icd.d /usr/share/vulkan/icd.d; do
|
for dir in /opt/amdgpu-pro/etc/vulkan/icd.d /usr/share/vulkan/icd.d; do
|
||||||
for file in "$dir"/amd_pro_icd*.json; do
|
for file in "$dir"/amd_pro_icd*.json; do
|
||||||
[ -f "$file" ] && PW_VK_ICD_FILENAMES="${PW_VK_ICD_FILENAMES:+${PW_VK_ICD_FILENAMES}:}$file"
|
[ -f "$file" ] && PW_VK_ICD_FILENAMES="${PW_VK_ICD_FILENAMES:+${PW_VK_ICD_FILENAMES}:}$file"
|
||||||
done
|
done
|
||||||
done
|
done
|
||||||
|
|
||||||
# add libs from https://github.com/CosmicFusion/fedora-amdgpu-pro/tree/main/x86_64/libdrm-pro to ld_library_path (this repo is deprecated and archived but why not)
|
# add libs from https://github.com/CosmicFusion/fedora-amdgpu-pro/tree/main/x86_64/libdrm-pro to ld_library_path (this repo is deprecated and archived but why not)
|
||||||
echo "$PW_VK_ICD_FILENAMES" | grep -qi "/opt/amdgpu-pro/etc/vulkan/icd.d/amd_icd.*.json" && \
|
echo "$PW_VK_ICD_FILENAMES" | grep -qi "/opt/amdgpu-pro/etc/vulkan/icd.d/amd_icd.*.json" && \
|
||||||
var_ld_library_path_update "/opt/amdgpu/libdrm/lib64:/opt/amdgpu/libdrm/lib32"
|
var_ld_library_path_update "/opt/amdgpu/libdrm/lib64:/opt/amdgpu/libdrm/lib32"
|
||||||
|
|
||||||
export PW_VK_ICD_FILENAMES
|
export PW_VK_ICD_FILENAMES
|
||||||
;;
|
;;
|
||||||
|
|
||||||
"radv")
|
"radv")
|
||||||
PW_VK_ICD_FILENAMES=""
|
PW_VK_ICD_FILENAMES=""
|
||||||
for file in /usr/share/vulkan/icd.d/radeon_icd.{i686,x86_64}.json; do
|
for file in /usr/share/vulkan/icd.d/radeon_icd.{i686,x86_64}.json; do
|
||||||
[ -f "$file" ] && PW_VK_ICD_FILENAMES="${PW_VK_ICD_FILENAMES:+${PW_VK_ICD_FILENAMES}:}$file"
|
[ -f "$file" ] && PW_VK_ICD_FILENAMES="${PW_VK_ICD_FILENAMES:+${PW_VK_ICD_FILENAMES}:}$file"
|
||||||
done
|
done
|
||||||
export PW_VK_ICD_FILENAMES
|
export PW_VK_ICD_FILENAMES
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
[[ "${START_FROM_STEAM}" == 1 ]] && export PW_GUI_DISABLED_CS=1
|
[[ "${START_FROM_STEAM}" == 1 ]] && export PW_GUI_DISABLED_CS=1
|
||||||
[[ "${START_FROM_PP_GUI}" == 1 ]] && export PW_GUI_DISABLED_CS=0 && unset START_FROM_PP_GUI
|
[[ "${START_FROM_PP_GUI}" == 1 ]] && export PW_GUI_DISABLED_CS=0 && unset START_FROM_PP_GUI
|
||||||
@@ -2697,8 +2681,6 @@ pw_port_update () {
|
|||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
tmp_next_ver=$(grep "SCRIPTS_NEXT_VERSION" "${PORT_WINE_TMP_PATH}/curent_var_ver" | awk -F "=" '{print $2}')
|
|
||||||
tmp_stab_ver=$(grep "SCRIPTS_STABLE_VERSION" "${PORT_WINE_TMP_PATH}/curent_var_ver" | awk -F "=" '{print $2}')
|
|
||||||
scripts_current_ver=$(grep "$BRANCH_VERSION_UPDATE" "${PORT_WINE_TMP_PATH}/curent_var_ver" | awk -F "=" '{print $2}')
|
scripts_current_ver=$(grep "$BRANCH_VERSION_UPDATE" "${PORT_WINE_TMP_PATH}/curent_var_ver" | awk -F "=" '{print $2}')
|
||||||
if [[ ! -f "${PORT_WINE_TMP_PATH}/update_remind_later" ]] ; then
|
if [[ ! -f "${PORT_WINE_TMP_PATH}/update_remind_later" ]] ; then
|
||||||
echo "$scripts_current_ver" > "${PORT_WINE_TMP_PATH}/update_remind_later"
|
echo "$scripts_current_ver" > "${PORT_WINE_TMP_PATH}/update_remind_later"
|
||||||
@@ -2770,7 +2752,7 @@ pw_port_update () {
|
|||||||
try_remove_dir "${PORT_WINE_TMP_PATH}/$PW_NAME_ARCHIVE/"
|
try_remove_dir "${PORT_WINE_TMP_PATH}/$PW_NAME_ARCHIVE/"
|
||||||
echo "${scripts_current_ver}" > "${PORT_WINE_TMP_PATH}/scripts_ver"
|
echo "${scripts_current_ver}" > "${PORT_WINE_TMP_PATH}/scripts_ver"
|
||||||
unset SKIP_CHECK_UPDATES
|
unset SKIP_CHECK_UPDATES
|
||||||
[[ "$tmp_next_ver" == "$tmp_stab_ver" ]] && echo "Stable update."
|
curl -X GET "http://cloud.linux-gaming.ru:8081/api/download/${scripts_current_ver}" &>/dev/null
|
||||||
echo "Restarting PP after update..."
|
echo "Restarting PP after update..."
|
||||||
restart_pp
|
restart_pp
|
||||||
fi
|
fi
|
||||||
@@ -2808,23 +2790,186 @@ pw_check_command () {
|
|||||||
export -f pw_check_command
|
export -f pw_check_command
|
||||||
|
|
||||||
pw_check_vulkan () {
|
pw_check_vulkan () {
|
||||||
if [[ ! -f "${PW_TMPFS_PATH}/vulkaninfo.tmp" ]] ; then
|
TIMEOUT_CMD="5"
|
||||||
TIMEOUT_CMD="5"
|
export DISABLE_LAYER_AMD_SWITCHABLE_GRAPHICS_1="1"
|
||||||
if ! pw_check_command vulkaninfo ; then
|
if ! pw_check_command vulkaninfo ; then
|
||||||
print_warning "use portable vulkaninfo"
|
print_warning "use portable vulkaninfo"
|
||||||
"$PW_PLUGINS_PATH"/portable/bin/x86_64-linux-gnu-vulkaninfo &> "${PW_TMPFS_PATH}/vulkaninfo.tmp"
|
"$PW_PLUGINS_PATH"/portable/bin/x86_64-linux-gnu-vulkaninfo &> "${PW_TMPFS_PATH}/vulkaninfo.tmp"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
compare_versions () {
|
||||||
|
IFS='.' read -ra a1 <<< "$1"
|
||||||
|
IFS='.' read -ra a2 <<< "$2"
|
||||||
|
local len=$(( ${#a1[@]} > ${#a2[@]} ? ${#a1[@]} : ${#a2[@]} ))
|
||||||
|
|
||||||
|
for ((i=0; i<len; i++)) ; do
|
||||||
|
local n1=$(( ${a1[i]:-0} ))
|
||||||
|
local n2=$(( ${a2[i]:-0} ))
|
||||||
|
if (( n1 > n2 )) ; then
|
||||||
|
return 0
|
||||||
|
elif (( n1 < n2 )) ; then
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
get_gpu_names () {
|
||||||
|
GET_GPU_NAMES=$(awk -F '= ' '/deviceName/{print $2}' "${PW_TMPFS_PATH}/vulkaninfo.tmp" | sed '/llvm/d' | sort -u | paste -sd '!')
|
||||||
|
if [[ ${GET_GPU_NAMES,,} =~ radv ]] ; then
|
||||||
|
IFS='!' read -r -a GET_GPU_NAMES_ARRAY <<< "$GET_GPU_NAMES"
|
||||||
|
for i in "${!GET_GPU_NAMES_ARRAY[@]}" ; do
|
||||||
|
if [[ ${GET_GPU_NAMES_ARRAY[i],,} =~ amd && ! ${GET_GPU_NAMES_ARRAY[i],,} =~ radv ]] ; then
|
||||||
|
unset 'GET_GPU_NAMES_ARRAY[i]'
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
GET_GPU_NAMES_ARRAY=("${GET_GPU_NAMES_ARRAY[@]}")
|
||||||
|
if [[ -n ${GET_GPU_NAMES_ARRAY[1]} ]] ; then
|
||||||
|
printf -v GET_GPU_NAMES '%s!' "${GET_GPU_NAMES_ARRAY[@]}"
|
||||||
|
GET_GPU_NAMES="${GET_GPU_NAMES%?}"
|
||||||
|
else
|
||||||
|
GET_GPU_NAMES="${GET_GPU_NAMES_ARRAY[0]}"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
export GET_GPU_NAMES
|
||||||
|
}
|
||||||
|
|
||||||
|
pw_check_dxvk () {
|
||||||
|
background_pid --end "pw_check_vulkan" "1"
|
||||||
|
if [[ -z $PW_VULKAN_DRIVER_USE ]] && [[ -f "${PW_TMPFS_PATH}/vulkaninfo.tmp" ]] ; then
|
||||||
|
if [[ -z $PW_GPU_USE ]] ; then
|
||||||
|
if [[ -z $GET_GPU_NAMES ]] ; then
|
||||||
|
get_gpu_names
|
||||||
|
fi
|
||||||
|
IFS='!' read -r -a SELECTED_VULKAN_GPU <<< "$GET_GPU_NAMES"
|
||||||
|
else
|
||||||
|
IFS='' read -r -a SELECTED_VULKAN_GPU <<< "$PW_GPU_USE"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -n ${SELECTED_VULKAN_GPU[*]} ]] ; then # оптимизация когда vulkan драйвера в системе нет
|
||||||
|
# если используется amdvlk или amdgpupro, то проверка на vulkan драйвер происходит среди них, а не через mesa драйвер
|
||||||
|
if [[ $PW_AMD_VULKAN_USE =~ ^(amdvlk|amdgpupro)$ ]] ; then
|
||||||
|
if [[ ${SELECTED_VULKAN_GPU[*],,} =~ radv ]] ; then
|
||||||
|
for i in "${!SELECTED_VULKAN_GPU[@]}" ; do
|
||||||
|
if [[ ${SELECTED_VULKAN_GPU[i],,} =~ radv ]] ; then
|
||||||
|
SELECTED_VULKAN_GPU[i]="${SELECTED_VULKAN_GPU[i]// (RADV*}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
# какие карты в приоритете, если не выбран изначально PW_GPU_USE
|
||||||
|
if [[ -n ${SELECTED_VULKAN_GPU[1]} ]] ; then
|
||||||
|
for elem in "${SELECTED_VULKAN_GPU[@]}"; do
|
||||||
|
case ${elem,,} in
|
||||||
|
*nvidia*) nvidia_group+=("$elem") ;;
|
||||||
|
*amd*) amd_group+=("$elem") ;;
|
||||||
|
*intel*) intel_group+=("$elem") ;;
|
||||||
|
*) other_group+=("$elem") ;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
unset SELECTED_VULKAN_GPU
|
||||||
|
SELECTED_VULKAN_GPU_NEW=(
|
||||||
|
"${nvidia_group[@]}"
|
||||||
|
"${amd_group[@]}"
|
||||||
|
"${intel_group[@]}"
|
||||||
|
"${other_group[@]}"
|
||||||
|
)
|
||||||
|
fi
|
||||||
|
# получаем информацию о конкретном драйвере который выбран в PW_GPU_USE,
|
||||||
|
# либо ищем наилучший драйвер с учётом приоритета видеокарт + информация
|
||||||
|
mapfile -t PW_VULKAN_DRIVER_ARRAY < <(awk '
|
||||||
|
/apiVersion|driverVersion/ { print $3 }
|
||||||
|
/deviceName|driverName|driverInfo/ {
|
||||||
|
split($0, parts, "= ")
|
||||||
|
print parts[2]
|
||||||
|
}' "${PW_TMPFS_PATH}/vulkaninfo.tmp")
|
||||||
|
|
||||||
|
for i in "${SELECTED_VULKAN_GPU_NEW[@]}" "${SELECTED_VULKAN_GPU[@]}" ; do
|
||||||
|
x="0" && y="5"
|
||||||
|
while true ; do
|
||||||
|
PW_VULKAN_DRIVER_ARRAY_CHECK=("${PW_VULKAN_DRIVER_ARRAY[@]:x:y}")
|
||||||
|
if [[ -n $PW_AMD_VULKAN_USE && $PW_AMD_VULKAN_USE != "disabled" ]] ; then
|
||||||
|
[[ $PW_AMD_VULKAN_USE == "amdvlk" && ${PW_VULKAN_DRIVER_ARRAY_CHECK[3],,} == *"amd open-source driver"* ]] && break
|
||||||
|
[[ $PW_AMD_VULKAN_USE == "amdgpupro" && ${PW_VULKAN_DRIVER_ARRAY_CHECK[3],,} == *"amd proprietary driver"* ]] && break
|
||||||
|
else
|
||||||
|
[[ ${PW_VULKAN_DRIVER_ARRAY_CHECK[2]} == "$i" ]] && break
|
||||||
|
fi
|
||||||
|
x=$(( x + 5 )) && y=$(( y + 5 ))
|
||||||
|
# фикс, если вдруг PW_GPU_USE изменился или сломался
|
||||||
|
if [[ -z ${PW_VULKAN_DRIVER_ARRAY_CHECK[2]} ]] ; then
|
||||||
|
PW_AMD_VULKAN_USE="disabled"
|
||||||
|
edit_db_from_gui PW_AMD_VULKAN_USE
|
||||||
|
unset PW_GPU_USE
|
||||||
|
pw_check_dxvk
|
||||||
|
break
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
if [[ ${PW_VULKAN_DRIVER_ARRAY_CHECK[3],,} =~ nvidia ]] ; then
|
||||||
|
if compare_versions "${PW_VULKAN_DRIVER_ARRAY_CHECK[4]}" "550.54.14" ; then
|
||||||
|
PW_VULKAN_DRIVER_USE="6" && break
|
||||||
|
fi
|
||||||
|
elif [[ ${PW_VULKAN_DRIVER_ARRAY_CHECK[4],,} =~ mesa ]] ; then
|
||||||
|
if compare_versions "${PW_VULKAN_DRIVER_ARRAY_CHECK[1]}" "25.0" ; then
|
||||||
|
PW_VULKAN_DRIVER_USE="6" && break
|
||||||
|
fi
|
||||||
|
elif [[ ${PW_VULKAN_DRIVER_ARRAY_CHECK[3],,} == *"amd open-source driver"* ]] \
|
||||||
|
|| [[ ${PW_VULKAN_DRIVER_ARRAY_CHECK[3],,} == *"amd proprietary driver"* ]] ; then
|
||||||
|
if compare_versions "${PW_VULKAN_DRIVER_ARRAY_CHECK[1]}" "2.0.310" ; then
|
||||||
|
PW_VULKAN_DRIVER_USE="6" && break
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
# если используется nvidia, со встройкой opengl будет работать через встройку, с этим будет работать через nvidia
|
||||||
|
if [[ ${PW_VULKAN_DRIVER_ARRAY_CHECK[3],,} =~ nvidia ]] ; then
|
||||||
|
export __NV_PRIME_RENDER_OFFLOAD="1"
|
||||||
|
export __GLX_VENDOR_LIBRARY_NAME="nvidia"
|
||||||
|
else
|
||||||
|
export __NV_PRIME_RENDER_OFFLOAD="0"
|
||||||
|
fi
|
||||||
|
# если PW_GPU_USE изначально не было
|
||||||
|
if [[ -z $PW_GPU_USE ]] ; then
|
||||||
|
export PW_GPU_USE=${PW_VULKAN_DRIVER_ARRAY_CHECK[2]}
|
||||||
|
edit_user_conf_from_gui PW_GPU_USE
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
# формируется в зависимости от выбранного PW_GPU_USE и поддержки самого драйвера
|
||||||
|
if [[ $PW_VULKAN_DRIVER_USE == "6" ]] || [[ $PW_VULKAN_UNLOCKED == "unlocked" ]] ; then
|
||||||
|
[[ -z $PW_VULKAN_USE ]] && PW_VULKAN_USE="6"
|
||||||
|
case "$PW_VULKAN_USE" in
|
||||||
|
0) PW_DEFAULT_VULKAN_USE="$SORT_OPENGL!$SORT_NEWEST!$SORT_STABLE!$SORT_SAREK" ;;
|
||||||
|
1) PW_DEFAULT_VULKAN_USE="$SORT_SAREK!$SORT_NEWEST!$SORT_STABLE!$SORT_OPENGL" ;;
|
||||||
|
2) PW_DEFAULT_VULKAN_USE="$SORT_STABLE!$SORT_NEWEST!$SORT_SAREK!$SORT_OPENGL" ;;
|
||||||
|
*) PW_DEFAULT_VULKAN_USE="$SORT_NEWEST!$SORT_STABLE!$SORT_SAREK!$SORT_OPENGL" ;;
|
||||||
|
esac
|
||||||
|
else
|
||||||
|
if [[ -z $PW_GPU_USE || $PW_GPU_USE == "disabled" ]] ; then
|
||||||
|
[[ -z $PW_VULKAN_USE ]] && PW_VULKAN_USE="0"
|
||||||
|
PW_DEFAULT_VULKAN_USE="$SORT_OPENGL"
|
||||||
|
else
|
||||||
|
if compare_versions "${PW_VULKAN_DRIVER_ARRAY_CHECK[0]}" "1.3" ; then
|
||||||
|
[[ -z $PW_VULKAN_USE ]] && PW_VULKAN_USE="2"
|
||||||
|
case "$PW_VULKAN_USE" in
|
||||||
|
0) PW_DEFAULT_VULKAN_USE="$SORT_OPENGL!$SORT_STABLE!$SORT_SAREK" ;;
|
||||||
|
1) PW_DEFAULT_VULKAN_USE="$SORT_SAREK!$SORT_STABLE!$SORT_OPENGL" ;;
|
||||||
|
*) PW_DEFAULT_VULKAN_USE="$SORT_STABLE!$SORT_SAREK!$SORT_OPENGL" ;;
|
||||||
|
esac
|
||||||
|
else
|
||||||
|
[[ -z $PW_VULKAN_USE ]] && PW_VULKAN_USE="1"
|
||||||
|
case "$PW_VULKAN_USE" in
|
||||||
|
0) PW_DEFAULT_VULKAN_USE="$SORT_OPENGL!$SORT_SAREK" ;;
|
||||||
|
*) PW_DEFAULT_VULKAN_USE="$SORT_SAREK!$SORT_OPENGL" ;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
pw_check_glxinfo () {
|
pw_check_glxinfo () {
|
||||||
if [[ ! -f "${PW_TMPFS_PATH}/glxinfo.tmp" ]] ; then
|
TIMEOUT_CMD="5"
|
||||||
TIMEOUT_CMD="5"
|
pw_check_command glxinfo -B
|
||||||
if pw_check_command glxinfo -B
|
|
||||||
then return 0
|
|
||||||
else return 1
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pw_get_tmp_files () {
|
pw_get_tmp_files () {
|
||||||
@@ -2832,9 +2977,6 @@ pw_get_tmp_files () {
|
|||||||
do pw_check_command "$f_cmd"
|
do pw_check_command "$f_cmd"
|
||||||
done
|
done
|
||||||
|
|
||||||
pw_check_vulkan
|
|
||||||
pw_check_glxinfo
|
|
||||||
|
|
||||||
# GALLIUM NINE
|
# GALLIUM NINE
|
||||||
unset FIND_D3D_MODULE D3D_MODULE_PATH
|
unset FIND_D3D_MODULE D3D_MODULE_PATH
|
||||||
if ! check_flatpak ; then
|
if ! check_flatpak ; then
|
||||||
@@ -2860,16 +3002,14 @@ pw_get_tmp_files () {
|
|||||||
|
|
||||||
pw_skip_get_info () {
|
pw_skip_get_info () {
|
||||||
if [[ "${SKIP_CHECK_UPDATES_NEW}" != "1" ]] ; then
|
if [[ "${SKIP_CHECK_UPDATES_NEW}" != "1" ]] ; then
|
||||||
background_pid --end "pw_get_tmp_files" "1"
|
background_pid --end "pw_get_tmp_files" "2"
|
||||||
|
|
||||||
if [[ -f "${PW_TMPFS_PATH}/gamescope.tmp" ]] ; then
|
if [[ -f "${PW_TMPFS_PATH}/gamescope.tmp" ]] ; then
|
||||||
export GAMESCOPE_INSTALLED="1"
|
export GAMESCOPE_INSTALLED="1"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ -f "${PW_TMPFS_PATH}/vulkaninfo.tmp" ]] ; then
|
if [[ -f "${PW_TMPFS_PATH}/vulkaninfo.tmp" ]] ; then
|
||||||
VULKAN_DRIVER_NAME="$(grep -e 'driverName' "${PW_TMPFS_PATH}/vulkaninfo.tmp" | awk '{print$3}' | head -1)"
|
get_gpu_names
|
||||||
GET_GPU_NAMES=$(awk -F '=' '/deviceName/{print $2}' "${PW_TMPFS_PATH}/vulkaninfo.tmp" | sed '/llvm/d'| sort -u | sed 's/^ //' | paste -sd '!')
|
|
||||||
export VULKAN_DRIVER_NAME GET_GPU_NAMES
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ -f "${PW_TMPFS_PATH}/lspci.tmp" ]] ; then
|
if [[ -f "${PW_TMPFS_PATH}/lspci.tmp" ]] ; then
|
||||||
@@ -2886,12 +3026,13 @@ pw_skip_get_info () {
|
|||||||
|
|
||||||
if [[ -f "${PW_TMPFS_PATH}/locale.tmp" ]] ; then
|
if [[ -f "${PW_TMPFS_PATH}/locale.tmp" ]] ; then
|
||||||
GET_LOCALE_LIST="ru_RU.utf en_US.utf zh_CN.utf ja_JP.utf ko_KR.utf"
|
GET_LOCALE_LIST="ru_RU.utf en_US.utf zh_CN.utf ja_JP.utf ko_KR.utf"
|
||||||
unset LOCALE_LIST
|
unset LOCALE_LIST LOCALE_UTF
|
||||||
|
[[ $(<"${PW_TMPFS_PATH}/locale.tmp") =~ utf8 ]] && LOCALE_UTF="8"
|
||||||
for LOCALE in $GET_LOCALE_LIST ; do
|
for LOCALE in $GET_LOCALE_LIST ; do
|
||||||
if [[ $(<"${PW_TMPFS_PATH}/locale.tmp") =~ $LOCALE ]] ; then
|
if [[ $(<"${PW_TMPFS_PATH}/locale.tmp") =~ $LOCALE ]] ; then
|
||||||
if [[ -n "$LOCALE_LIST" ]]
|
if [[ -n "$LOCALE_LIST" ]]
|
||||||
then LOCALE_LIST+="!$LOCALE"
|
then LOCALE_LIST+="!$LOCALE$LOCALE_UTF"
|
||||||
else LOCALE_LIST="$LOCALE"
|
else LOCALE_LIST="$LOCALE$LOCALE_UTF"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
@@ -2942,7 +3083,7 @@ pw_skip_get_info () {
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
logical_cores=$(grep -c ^"processor" /proc/cpuinfo)
|
logical_cores=$(grep -c ^"processor" /proc/cpuinfo)
|
||||||
if (( $logical_cores <= "4" )) ; then
|
if (( logical_cores <= "4" )) ; then
|
||||||
GET_LOGICAL_CORE="$(seq -s! 1 $(( logical_cores - 1 )))"
|
GET_LOGICAL_CORE="$(seq -s! 1 $(( logical_cores - 1 )))"
|
||||||
else
|
else
|
||||||
GET_LOGICAL_CORE="1!2!$(seq -s! 4 4 $(( logical_cores - 1 )))"
|
GET_LOGICAL_CORE="1!2!$(seq -s! 4 4 $(( logical_cores - 1 )))"
|
||||||
@@ -3036,6 +3177,22 @@ edit_user_conf_from_gui () {
|
|||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
use_exiftool () {
|
||||||
|
if [[ ! -f "${PW_TMPFS_PATH}/exiftool.tmp" ]] \
|
||||||
|
|| ! grep -q "$1" "${PW_TMPFS_PATH}/exiftool.tmp"
|
||||||
|
then
|
||||||
|
echo "$1" > "${PW_TMPFS_PATH}/exiftool.tmp"
|
||||||
|
if ! command -v exiftool &>/dev/null \
|
||||||
|
|| ! timeout 3 exiftool "$1" &>> "${PW_TMPFS_PATH}/exiftool.tmp"
|
||||||
|
then
|
||||||
|
print_warning "use portable exiftool"
|
||||||
|
env PERL5LIB="${PW_PLUGINS_PATH}/portable/lib/perl5" \
|
||||||
|
"${PW_PLUGINS_PATH}/portable/bin/exiftool" \
|
||||||
|
"$1" &>> "${PW_TMPFS_PATH}/exiftool.tmp"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
pw_create_gui_png () {
|
pw_create_gui_png () {
|
||||||
if [[ -z $name_desktop_png ]] ; then
|
if [[ -z $name_desktop_png ]] ; then
|
||||||
basename_portwine_exe="$(basename "${portwine_exe}")"
|
basename_portwine_exe="$(basename "${portwine_exe}")"
|
||||||
@@ -3060,19 +3217,9 @@ pw_create_gui_png () {
|
|||||||
if [[ -n "${PORTWINE_CREATE_SHORTCUT_NAME}" ]] ; then
|
if [[ -n "${PORTWINE_CREATE_SHORTCUT_NAME}" ]] ; then
|
||||||
PORTPROTON_NAME="${PORTWINE_CREATE_SHORTCUT_NAME}"
|
PORTPROTON_NAME="${PORTWINE_CREATE_SHORTCUT_NAME}"
|
||||||
else
|
else
|
||||||
if command -v exiftool &>/dev/null ; then
|
use_exiftool "$portwine_exe"
|
||||||
if timeout 3 exiftool "$portwine_exe" &> "${PW_TMPFS_PATH}/exiftool.tmp" ; then
|
PW_PRODUCTNAME=$(sed -n 's/^Product Name\s*:\s*//p' "${PW_TMPFS_PATH}/exiftool.tmp")
|
||||||
PW_PRODUCTNAME=$(sed -n 's/^Product Name\s*:\s*//p' "${PW_TMPFS_PATH}/exiftool.tmp")
|
FILE_DESCRIPTION=$(sed -n 's/^File Description\s*:\s*//p' "${PW_TMPFS_PATH}/exiftool.tmp")
|
||||||
FILE_DESCRIPTION=$(sed -n 's/^File Description\s*:\s*//p' "${PW_TMPFS_PATH}/exiftool.tmp")
|
|
||||||
else
|
|
||||||
print_error "exiftool - broken!"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
print_warning "use portable exiftool"
|
|
||||||
env PERL5LIB="${PW_PLUGINS_PATH}/portable/lib/perl5" "${PW_PLUGINS_PATH}/portable/bin/exiftool" "$portwine_exe" &> "${PW_TMPFS_PATH}/exiftool.tmp"
|
|
||||||
PW_PRODUCTNAME=$(sed -n 's/^Product Name\s*:\s*//p' "${PW_TMPFS_PATH}/exiftool.tmp")
|
|
||||||
FILE_DESCRIPTION=$(sed -n 's/^File Description\s*:\s*//p' "${PW_TMPFS_PATH}/exiftool.tmp")
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ "$PW_PRODUCTNAME" =~ (Launcher|RU) ]]
|
if [[ "$PW_PRODUCTNAME" =~ (Launcher|RU) ]]
|
||||||
then
|
then
|
||||||
@@ -3511,17 +3658,17 @@ start_portwine () {
|
|||||||
OPTISCALER_PATH="$PW_PLUGINS_PATH/fake_dlss/optiscaler-$PW_OPTISCALER_VER"
|
OPTISCALER_PATH="$PW_PLUGINS_PATH/fake_dlss/optiscaler-$PW_OPTISCALER_VER"
|
||||||
OPTISCALER_FILES="dxgi.dll amd_fidelityfx_dx12.dll amd_fidelityfx_vk.dll libxess.dll \
|
OPTISCALER_FILES="dxgi.dll amd_fidelityfx_dx12.dll amd_fidelityfx_vk.dll libxess.dll \
|
||||||
libxess_dx11.dll dlssg_to_fsr3_amd_is_better.dll fakenvapi.ini \
|
libxess_dx11.dll dlssg_to_fsr3_amd_is_better.dll fakenvapi.ini \
|
||||||
nvapi64.dll OptiScaler.ini dxvk.conf"
|
nvapi64.dll OptiScaler.ini dxvk.conf D3D12 D3D12_Optiscaler optiscaler_version"
|
||||||
ORIGINAL_GAME_DLLS="amd_fidelityfx_dx12.dll amd_fidelityfx_vk.dll libxess.dll nvapi64.dll"
|
ORIGINAL_GAME_DLLS="amd_fidelityfx_dx12.dll amd_fidelityfx_vk.dll libxess.dll nvapi64.dll D3D12"
|
||||||
|
|
||||||
if [[ "${PW_USE_OPTISCALER}" != "1" ]] \
|
if [[ "${PW_USE_OPTISCALER}" != "1" ]] \
|
||||||
&& [[ -f "$PATH_TO_GAME/dlssg_to_fsr3_amd_is_better.dll" ]]
|
&& [[ -f "$PATH_TO_GAME/dlssg_to_fsr3_amd_is_better.dll" ]]
|
||||||
then
|
then
|
||||||
for dll in $OPTISCALER_FILES ; do
|
for dll in $OPTISCALER_FILES ; do
|
||||||
try_remove_file "$PATH_TO_GAME/$dll"
|
rm -fr "$PATH_TO_GAME/$dll"
|
||||||
done
|
done
|
||||||
for dll in $ORIGINAL_GAME_DLLS ; do
|
for dll in $ORIGINAL_GAME_DLLS ; do
|
||||||
if [[ -f "$PATH_TO_GAME/${dll}.b" ]] ; then
|
if [[ -e "$PATH_TO_GAME/${dll}.b" ]] ; then
|
||||||
mv -f "$PATH_TO_GAME/${dll}.b" "$PATH_TO_GAME/${dll}" 2>/dev/null
|
mv -f "$PATH_TO_GAME/${dll}.b" "$PATH_TO_GAME/${dll}" 2>/dev/null
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
@@ -3538,7 +3685,7 @@ start_portwine () {
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
export PW_WINE_FULLSCREEN_FSR="0"
|
export PW_USE_NVAPI_AND_DLSS="1"
|
||||||
|
|
||||||
set_to_dxvk_conf nvidia_new
|
set_to_dxvk_conf nvidia_new
|
||||||
|
|
||||||
@@ -3551,20 +3698,21 @@ start_portwine () {
|
|||||||
fatal "Force exit..."
|
fatal "Force exit..."
|
||||||
fi
|
fi
|
||||||
for dll in $ORIGINAL_GAME_DLLS ; do
|
for dll in $ORIGINAL_GAME_DLLS ; do
|
||||||
if [[ -f "$PATH_TO_GAME/$dll" ]] \
|
if [[ -e "$PATH_TO_GAME/$dll" ]] \
|
||||||
&& [[ ! -f "$PATH_TO_GAME/${dll}.b" ]]
|
&& [[ ! -e "$PATH_TO_GAME/${dll}.b" ]]
|
||||||
then
|
then
|
||||||
mv -f "$PATH_TO_GAME/$dll" "$PATH_TO_GAME/${dll}.b" 2>/dev/null
|
mv -f "$PATH_TO_GAME/$dll" "$PATH_TO_GAME/${dll}.b" 2>/dev/null
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
fi
|
fi
|
||||||
|
|
||||||
for dll in $OPTISCALER_FILES ; do
|
if [[ ! -f "$PATH_TO_GAME/optiscaler_version" ]] \
|
||||||
if [[ ! -f "$PATH_TO_GAME/$dll" ]] \
|
|| ! grep -q "$PW_OPTISCALER_VER" "$PATH_TO_GAME/optiscaler_version"
|
||||||
|| [[ -L "$PATH_TO_GAME/$dll" ]]
|
then
|
||||||
then try_copy_file "$OPTISCALER_PATH/$dll" "$PATH_TO_GAME/$dll"
|
for dll in $OPTISCALER_FILES ; do
|
||||||
fi
|
cp -fr "$OPTISCALER_PATH/$dll" "$PATH_TO_GAME/$dll" || print_error "$OPTISCALER_PATH/$dll not found for copy!"
|
||||||
done
|
done
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ "${PW_USE_RAY_TRACING}" == "1" ]] ; then
|
if [[ "${PW_USE_RAY_TRACING}" == "1" ]] ; then
|
||||||
@@ -3700,7 +3848,7 @@ if [[ "$GAMEMODERUN" != "1" ]]; then
|
|||||||
start_activity_simulation
|
start_activity_simulation
|
||||||
PW_INHIBIT_SLR=""
|
PW_INHIBIT_SLR=""
|
||||||
print_info "Screensaver will be inhibited using D-Bus (Flatpak mode)"
|
print_info "Screensaver will be inhibited using D-Bus (Flatpak mode)"
|
||||||
elif command -v systemd-inhibit &>/dev/null; then
|
elif [[ -e "/var/run/dbus/system_bus_socket" ]] && command -v systemd-inhibit &>/dev/null; then
|
||||||
PW_INHIBIT_SLR="systemd-inhibit --mode=block --who=ru.linux_gaming.PortProton --why=${translations[Launched]} --what=idle:sleep"
|
PW_INHIBIT_SLR="systemd-inhibit --mode=block --who=ru.linux_gaming.PortProton --why=${translations[Launched]} --what=idle:sleep"
|
||||||
print_info "Screensaver will be inhibited using systemd-inhibit (Native mode)"
|
print_info "Screensaver will be inhibited using systemd-inhibit (Native mode)"
|
||||||
fi
|
fi
|
||||||
@@ -3776,8 +3924,6 @@ fi
|
|||||||
# WINED3D OPENGL
|
# WINED3D OPENGL
|
||||||
print_info "Use WINED3D OpenGL"
|
print_info "Use WINED3D OpenGL"
|
||||||
unset PW_VKBASALT PW_USE_GALLIUM_ZINK PW_USE_WINED3D_VULKAN PW_USE_SUPPLIED_DXVK_VKD3D
|
unset PW_VKBASALT PW_USE_GALLIUM_ZINK PW_USE_WINED3D_VULKAN PW_USE_SUPPLIED_DXVK_VKD3D
|
||||||
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_NEW_VER}"
|
|
||||||
CP_VKD3D_FILES="libvkd3d-1 libvkd3d-shader-1"
|
|
||||||
CP_WINE_FILES="d3d12 d3d12core d3d11 d3d10core d3d10_1 d3d10 d3d9 d3d8 dxgi"
|
CP_WINE_FILES="d3d12 d3d12core d3d11 d3d10core d3d10_1 d3d10 d3d9 d3d8 dxgi"
|
||||||
;;
|
;;
|
||||||
1)
|
1)
|
||||||
@@ -3793,27 +3939,27 @@ fi
|
|||||||
fi
|
fi
|
||||||
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_SAREK_VER}"
|
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_SAREK_VER}"
|
||||||
CP_DXVK_FILES="d3d11 d3d10core d3d9 d3d8 dxgi"
|
CP_DXVK_FILES="d3d11 d3d10core d3d9 d3d8 dxgi"
|
||||||
CP_VKD3D_FILES="d3d12 libvkd3d-1 libvkd3d-shader-1"
|
CP_VKD3D_FILES="d3d12"
|
||||||
CP_WINE_FILES="d3d12core d3d10_1 d3d10"
|
CP_WINE_FILES="d3d12core d3d10_1 d3d10"
|
||||||
;;
|
;;
|
||||||
2)
|
2)
|
||||||
# NEWEST DXVK AND VKD3D
|
|
||||||
print_info "DXVK v.${DXVK_NEW_VER} in use"
|
|
||||||
print_info "VKD3D-PROTON v.${VKD3D_NEW_VER} in use"
|
|
||||||
PATH_TO_DXVK_FILES="${PW_VULKAN_DIR}/dxvk-${DXVK_NEW_VER}"
|
|
||||||
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_NEW_VER}"
|
|
||||||
CP_DXVK_FILES="d3d11 d3d10core d3d9 d3d8 dxgi"
|
|
||||||
CP_VKD3D_FILES="d3d12 d3d12core libvkd3d-1 libvkd3d-shader-1"
|
|
||||||
CP_WINE_FILES="d3d10_1 d3d10"
|
|
||||||
;;
|
|
||||||
6)
|
|
||||||
# STABLE DXVK AND VKD3D
|
# STABLE DXVK AND VKD3D
|
||||||
print_info "DXVK v.${DXVK_OLD_VER} in use"
|
print_info "DXVK v.${DXVK_OLD_VER} in use"
|
||||||
print_info "VKD3D-PROTON v.${VKD3D_OLD_VER} in use"
|
print_info "VKD3D-PROTON v.${VKD3D_OLD_VER} in use"
|
||||||
PATH_TO_DXVK_FILES="${PW_VULKAN_DIR}/dxvk-${DXVK_OLD_VER}"
|
PATH_TO_DXVK_FILES="${PW_VULKAN_DIR}/dxvk-${DXVK_OLD_VER}"
|
||||||
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_OLD_VER}"
|
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_OLD_VER}"
|
||||||
CP_DXVK_FILES="d3d11 d3d10core d3d9 d3d8 dxgi"
|
CP_DXVK_FILES="d3d11 d3d10core d3d9 d3d8 dxgi"
|
||||||
CP_VKD3D_FILES="d3d12 d3d12core libvkd3d-1 libvkd3d-shader-1"
|
CP_VKD3D_FILES="d3d12 d3d12core"
|
||||||
|
CP_WINE_FILES="d3d10_1 d3d10"
|
||||||
|
;;
|
||||||
|
6)
|
||||||
|
# NEWEST DXVK AND VKD3D
|
||||||
|
print_info "DXVK v.${DXVK_NEW_VER} in use"
|
||||||
|
print_info "VKD3D-PROTON v.${VKD3D_NEW_VER} in use"
|
||||||
|
PATH_TO_DXVK_FILES="${PW_VULKAN_DIR}/dxvk-${DXVK_NEW_VER}"
|
||||||
|
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_NEW_VER}"
|
||||||
|
CP_DXVK_FILES="d3d11 d3d10core d3d9 d3d8 dxgi"
|
||||||
|
CP_VKD3D_FILES="d3d12 d3d12core"
|
||||||
CP_WINE_FILES="d3d10_1 d3d10"
|
CP_WINE_FILES="d3d10_1 d3d10"
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
@@ -3824,8 +3970,6 @@ fi
|
|||||||
|| [[ $PW_USE_GALLIUM_ZINK == "1" ]] \
|
|| [[ $PW_USE_GALLIUM_ZINK == "1" ]] \
|
||||||
|| [[ $PW_USE_WINED3D_VULKAN == "1" ]] ; then
|
|| [[ $PW_USE_WINED3D_VULKAN == "1" ]] ; then
|
||||||
unset PATH_TO_DXVK_FILES CP_DXVK_FILES PW_USE_SUPPLIED_DXVK_VKD3D
|
unset PATH_TO_DXVK_FILES CP_DXVK_FILES PW_USE_SUPPLIED_DXVK_VKD3D
|
||||||
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_NEW_VER}"
|
|
||||||
CP_VKD3D_FILES="libvkd3d-1 libvkd3d-shader-1"
|
|
||||||
CP_WINE_FILES="d3d12 d3d12core d3d11 d3d10core d3d10_1 d3d10 d3d9 d3d8 dxgi"
|
CP_WINE_FILES="d3d12 d3d12core d3d11 d3d10core d3d10_1 d3d10 d3d9 d3d8 dxgi"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -3886,14 +4030,13 @@ fi
|
|||||||
else add_to_var CP_WINE_FILES "d3d8"
|
else add_to_var CP_WINE_FILES "d3d8"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
if [[ -f "${WINEDIR}/lib64/wine/vkd3d-proton/d3d12core.dll" && -f "${WINEDIR}/lib64/vkd3d/libvkd3d-1.dll" ]] \
|
if [[ -f "${WINEDIR}/lib64/wine/vkd3d-proton/d3d12core.dll" ]] \
|
||||||
|| [[ -f "${WINEDIR}/lib/wine/vkd3d-proton/x86_64-windows/d3d12core.dll" && -f "${WINEDIR}/lib/vkd3d/x86_64-windows/libvkd3d-1.dll" ]] ; then
|
|| [[ -f "${WINEDIR}/lib/wine/vkd3d-proton/x86_64-windows/d3d12core.dll" ]] ; then
|
||||||
CP_VKD3D_FILES="d3d12 d3d12core libvkd3d-1 libvkd3d-shader-1"
|
CP_VKD3D_FILES="d3d12 d3d12core"
|
||||||
elif [[ -f "${WINEDIR}/lib64/wine/vkd3d-proton/d3d12.dll" && -f "${WINEDIR}/lib64/vkd3d/libvkd3d-shader-1.dll" ]] ; then
|
elif [[ -f "${WINEDIR}/lib64/wine/vkd3d-proton/d3d12.dll" ]] ; then
|
||||||
CP_VKD3D_FILES="d3d12 libvkd3d-1 libvkd3d-shader-1"
|
CP_VKD3D_FILES="d3d12"
|
||||||
add_to_var CP_WINE_FILES "d3d12core"
|
add_to_var CP_WINE_FILES "d3d12core"
|
||||||
else
|
else
|
||||||
CP_VKD3D_FILES="libvkd3d-1 libvkd3d-shader-1"
|
|
||||||
add_to_var CP_WINE_FILES "d3d12 d3d12core"
|
add_to_var CP_WINE_FILES "d3d12 d3d12core"
|
||||||
fi
|
fi
|
||||||
[[ -f "${WINEDIR}/lib/wine/dxvk/x86_64-windows/d3d9.dll" ]] && PW_USE_SUPPLIED_DXVK_VKD3D="2"
|
[[ -f "${WINEDIR}/lib/wine/dxvk/x86_64-windows/d3d9.dll" ]] && PW_USE_SUPPLIED_DXVK_VKD3D="2"
|
||||||
@@ -4190,30 +4333,29 @@ fi
|
|||||||
if [[ $wine_vkd3d_dll =~ d3d12 ]] ; then
|
if [[ $wine_vkd3d_dll =~ d3d12 ]] ; then
|
||||||
try_force_link_file "${WINEDIR}/lib/wine/vkd3d-proton/i386-windows/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/${wine_vkd3d_dll}.dll"
|
try_force_link_file "${WINEDIR}/lib/wine/vkd3d-proton/i386-windows/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/${wine_vkd3d_dll}.dll"
|
||||||
try_force_link_file "${WINEDIR}/lib/wine/vkd3d-proton/x86_64-windows/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/${wine_vkd3d_dll}.dll"
|
try_force_link_file "${WINEDIR}/lib/wine/vkd3d-proton/x86_64-windows/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/${wine_vkd3d_dll}.dll"
|
||||||
fi
|
|
||||||
if [[ $wine_vkd3d_dll =~ libvkd3d ]] ; then
|
|
||||||
try_force_link_file "${WINEDIR}/lib/vkd3d/i386-windows/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/${wine_vkd3d_dll}.dll"
|
|
||||||
try_force_link_file "${WINEDIR}/lib/vkd3d/x86_64-windows/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/${wine_vkd3d_dll}.dll"
|
|
||||||
fi ;;
|
fi ;;
|
||||||
1)
|
1)
|
||||||
if [[ $wine_vkd3d_dll =~ d3d12 ]] ; then
|
if [[ $wine_vkd3d_dll =~ d3d12 ]] ; then
|
||||||
try_force_link_file "${WINEDIR}/lib/wine/vkd3d-proton/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/${wine_vkd3d_dll}.dll"
|
try_force_link_file "${WINEDIR}/lib/wine/vkd3d-proton/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/${wine_vkd3d_dll}.dll"
|
||||||
try_force_link_file "${WINEDIR}/lib64/wine/vkd3d-proton/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/${wine_vkd3d_dll}.dll"
|
try_force_link_file "${WINEDIR}/lib64/wine/vkd3d-proton/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/${wine_vkd3d_dll}.dll"
|
||||||
fi
|
|
||||||
if [[ $wine_vkd3d_dll =~ libvkd3d ]] ; then
|
|
||||||
try_force_link_file "${WINEDIR}/lib/vkd3d/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/${wine_vkd3d_dll}.dll"
|
|
||||||
try_force_link_file "${WINEDIR}/lib64/vkd3d/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/${wine_vkd3d_dll}.dll"
|
|
||||||
fi ;;
|
fi ;;
|
||||||
0)
|
0)
|
||||||
try_force_link_file "${PATH_TO_VKD3D_FILES}/x86/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/${wine_vkd3d_dll}.dll"
|
try_force_link_file "${PATH_TO_VKD3D_FILES}/x86/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/${wine_vkd3d_dll}.dll"
|
||||||
try_force_link_file "${PATH_TO_VKD3D_FILES}/x64/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/${wine_vkd3d_dll}.dll" ;;
|
try_force_link_file "${PATH_TO_VKD3D_FILES}/x64/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/${wine_vkd3d_dll}.dll" ;;
|
||||||
esac
|
esac
|
||||||
[[ ! $wine_vkd3d_dll =~ libvkd3d ]] && var_winedlloverride_update "${wine_vkd3d_dll}=n"
|
var_winedlloverride_update "${wine_vkd3d_dll}=n"
|
||||||
done
|
done
|
||||||
create_new_dir "${PATH_TO_VKD3D_FILES}/vkd3d_cache"
|
create_new_dir "${PATH_TO_VKD3D_FILES}/vkd3d_cache"
|
||||||
export VKD3D_SHADER_CACHE_PATH="${PATH_TO_VKD3D_FILES}/vkd3d_cache"
|
export VKD3D_SHADER_CACHE_PATH="${PATH_TO_VKD3D_FILES}/vkd3d_cache"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
# некоторым играм для любых 3D api для правильной работы wined3d необходимо чтобы эти библиотеки всегда были
|
||||||
|
PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_NEW_VER}" # используется git версия
|
||||||
|
try_force_link_file "${PATH_TO_VKD3D_FILES}/x86/libvkd3d-1.dll" "${WINEPREFIX}/drive_c/windows/syswow64/libvkd3d-1.dll"
|
||||||
|
try_force_link_file "${PATH_TO_VKD3D_FILES}/x86/libvkd3d-shader-1.dll" "${WINEPREFIX}/drive_c/windows/syswow64/libvkd3d-shader-1.dll"
|
||||||
|
try_force_link_file "${PATH_TO_VKD3D_FILES}/x64/libvkd3d-1.dll" "${WINEPREFIX}/drive_c/windows/system32/libvkd3d-1.dll"
|
||||||
|
try_force_link_file "${PATH_TO_VKD3D_FILES}/x64/libvkd3d-shader-1.dll" "${WINEPREFIX}/drive_c/windows/system32/libvkd3d-shader-1.dll"
|
||||||
|
|
||||||
# GALLIUM NINE
|
# GALLIUM NINE
|
||||||
if [[ "$CP_GALLIUM_NINE_FILES" == "d3d9" ]] && [[ -f "${PW_TMPFS_PATH}/gallium_nine.tmp" ]] ; then
|
if [[ "$CP_GALLIUM_NINE_FILES" == "d3d9" ]] && [[ -f "${PW_TMPFS_PATH}/gallium_nine.tmp" ]] ; then
|
||||||
PATH_TO_GALLIUM_NINE_FILES="${PW_PLUGINS_PATH}/gallium_nine_v.${PW_GALLIUM_NINE_VER}"
|
PATH_TO_GALLIUM_NINE_FILES="${PW_PLUGINS_PATH}/gallium_nine_v.${PW_GALLIUM_NINE_VER}"
|
||||||
@@ -4595,14 +4737,11 @@ pw_run () {
|
|||||||
export WINE_LARGE_ADDRESS_AWARE="1"
|
export WINE_LARGE_ADDRESS_AWARE="1"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
check_variables SteamAppId "0"
|
|
||||||
check_variables SteamGameId "0"
|
|
||||||
|
|
||||||
PW_LOG_TO_FILE="${PORT_WINE_PATH}/PortProton.log"
|
PW_LOG_TO_FILE="${PORT_WINE_PATH}/PortProton.log"
|
||||||
PW_LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}:${WINE_LIBRARY_PATH}"
|
PW_LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}:${WINE_LIBRARY_PATH}"
|
||||||
|
|
||||||
echo "##### Current variables #####" > "$PW_TMPFS_PATH/var.log"
|
echo "##### Current variables #####" > "$PW_TMPFS_PATH/var.log"
|
||||||
for var in "WINEDIR" "WINEPREFIX" "WINEDLLOVERRIDES" "PATH_TO_GAME" "PW_WINE_USE" "PW_VULKAN_USE" "VULKAN_DRIVER_NAME" \
|
for var in "WINEDIR" "WINEPREFIX" "WINEDLLOVERRIDES" "PATH_TO_GAME" "PW_WINE_USE" "PW_VULKAN_USE" \
|
||||||
"WINELOADER" "VKD3D_CONFIG" "PW_LD_LIBRARY_PATH" "PATH" "WINEESYNC" "WINEFSYNC" "WINEFSYNC_FUTEX2" \
|
"WINELOADER" "VKD3D_CONFIG" "PW_LD_LIBRARY_PATH" "PATH" "WINEESYNC" "WINEFSYNC" "WINEFSYNC_FUTEX2" \
|
||||||
"WINEDLLPATH" "WINE_CPU_TOPOLOGY" "PW_RUN_GAMESCOPE" "LD_LIBRARY_PATH" "PW_VK_ICD_FILENAMES" "PW_TASKSET_SLR"
|
"WINEDLLPATH" "WINE_CPU_TOPOLOGY" "PW_RUN_GAMESCOPE" "LD_LIBRARY_PATH" "PW_VK_ICD_FILENAMES" "PW_TASKSET_SLR"
|
||||||
do
|
do
|
||||||
@@ -4776,6 +4915,7 @@ portwine_launch () {
|
|||||||
|
|
||||||
[[ $PW_LOG != 1 ]] && debug_timer --start -s "PW_TIME_IN_GAME"
|
[[ $PW_LOG != 1 ]] && debug_timer --start -s "PW_TIME_IN_GAME"
|
||||||
if [[ -n "${LAUNCH_URI}" ]] ; then
|
if [[ -n "${LAUNCH_URI}" ]] ; then
|
||||||
|
export WINEFSYNC="1"
|
||||||
pw_run start /high /b "${LAUNCH_URI}" &
|
pw_run start /high /b "${LAUNCH_URI}" &
|
||||||
unset GAMEPID
|
unset GAMEPID
|
||||||
while true ; do
|
while true ; do
|
||||||
@@ -5396,13 +5536,13 @@ export -f gui_proton_downloader
|
|||||||
# GUI EDIT_DB
|
# GUI EDIT_DB
|
||||||
gui_edit_db () {
|
gui_edit_db () {
|
||||||
KEY_EDIT_DB_GUI=$RANDOM
|
KEY_EDIT_DB_GUI=$RANDOM
|
||||||
PW_EDIT_DB_LIST=(PW_MANGOHUD PW_MANGOHUD_USER_CONF PW_VKBASALT PW_VKBASALT_USER_CONF PW_DGVOODOO2 PW_GAMESCOPE
|
PW_EDIT_DB_LIST=(PW_MANGOHUD PW_MANGOHUD_USER_CONF PW_VKBASALT PW_VKBASALT_USER_CONF PW_DGVOODOO2
|
||||||
PW_USE_ESYNC PW_USE_FSYNC PW_USE_NTSYNC PW_USE_RAY_TRACING PW_USE_NVAPI_AND_DLSS PW_USE_OPTISCALER
|
PW_USE_ESYNC PW_USE_FSYNC PW_USE_NTSYNC PW_USE_RAY_TRACING PW_USE_NVAPI_AND_DLSS PW_USE_OPTISCALER
|
||||||
PW_USE_LS_FRAME_GEN PW_WINE_FULLSCREEN_FSR PW_HIDE_NVIDIA_GPU PW_VIRTUAL_DESKTOP PW_USE_TERMINAL PW_GUI_DISABLED_CS
|
PW_USE_LS_FRAME_GEN PW_WINE_FULLSCREEN_FSR PW_HIDE_NVIDIA_GPU PW_VIRTUAL_DESKTOP PW_USE_TERMINAL PW_GUI_DISABLED_CS
|
||||||
PW_USE_GAMEMODE PW_USE_D3D_EXTRAS PW_FIX_VIDEO_IN_GAME PW_REDUCE_PULSE_LATENCY PW_USE_US_LAYOUT PW_USE_GSTREAMER
|
PW_USE_GAMEMODE PW_USE_D3D_EXTRAS PW_FIX_VIDEO_IN_GAME PW_REDUCE_PULSE_LATENCY PW_USE_US_LAYOUT PW_USE_GSTREAMER
|
||||||
PW_USE_SHADER_CACHE PW_USE_WINE_DXGI PW_USE_EAC_AND_BE PW_USE_SYSTEM_VK_LAYERS PW_USE_OBS_VKCAPTURE
|
PW_USE_SHADER_CACHE PW_USE_WINE_DXGI PW_USE_EAC_AND_BE PW_USE_SYSTEM_VK_LAYERS PW_USE_OBS_VKCAPTURE
|
||||||
PW_DISABLE_COMPOSITING PW_USE_RUNTIME PW_DINPUT_PROTOCOL PW_USE_GALLIUM_ZINK PW_USE_GALLIUM_NINE
|
PW_DISABLE_COMPOSITING PW_USE_RUNTIME PW_DINPUT_PROTOCOL PW_USE_GALLIUM_ZINK PW_USE_GALLIUM_NINE
|
||||||
PW_USE_WINED3D_VULKAN PW_USE_SUPPLIED_DXVK_VKD3D PW_USE_NATIVE_WAYLAND PW_USE_DXVK_HDR
|
PW_USE_WINED3D_VULKAN PW_USE_SUPPLIED_DXVK_VKD3D PW_USE_NATIVE_WAYLAND PW_USE_DXVK_HDR PW_GAMESCOPE
|
||||||
)
|
)
|
||||||
|
|
||||||
if check_wayland_session
|
if check_wayland_session
|
||||||
@@ -5484,6 +5624,14 @@ gui_edit_db () {
|
|||||||
|
|
||||||
[[ ! -e "/dev/ntsync" ]] && DISABLE_EDIT_DB_LIST+=" PW_USE_NTSYNC"
|
[[ ! -e "/dev/ntsync" ]] && DISABLE_EDIT_DB_LIST+=" PW_USE_NTSYNC"
|
||||||
|
|
||||||
|
if ! check_flatpak \
|
||||||
|
&& [[ $(ldd --version | head -n 1 | awk '{print $4}') < 2.38 ]]
|
||||||
|
then
|
||||||
|
DISABLE_EDIT_DB_LIST+=" PW_USE_LS_FRAME_GEN"
|
||||||
|
export PW_USE_LS_FRAME_GEN="0"
|
||||||
|
PW_USE_LS_FRAME_GEN_INFO=${translations[GLIBC version 2.38+ is required for use Lossless Scaling frame generation]}
|
||||||
|
fi
|
||||||
|
|
||||||
unset ADD_CHK_BOX_EDIT_DB
|
unset ADD_CHK_BOX_EDIT_DB
|
||||||
for int_to_boole in "${PW_EDIT_DB_LIST[@]}" ; do
|
for int_to_boole in "${PW_EDIT_DB_LIST[@]}" ; do
|
||||||
if [[ "${!int_to_boole}" == "1" ]]
|
if [[ "${!int_to_boole}" == "1" ]]
|
||||||
@@ -5547,7 +5695,6 @@ gui_edit_db () {
|
|||||||
if [[ -n "${PW_AMD_VULKAN_USE}" ]] && \
|
if [[ -n "${PW_AMD_VULKAN_USE}" ]] && \
|
||||||
[[ "${PW_AMD_VULKAN_USE}" != "disabled" ]] ; then
|
[[ "${PW_AMD_VULKAN_USE}" != "disabled" ]] ; then
|
||||||
AMD_VULKAN_VAR="${PW_AMD_VULKAN_USE}"
|
AMD_VULKAN_VAR="${PW_AMD_VULKAN_USE}"
|
||||||
export DISABLE_LAYER_AMD_SWITCHABLE_GRAPHICS_1=1
|
|
||||||
else
|
else
|
||||||
AMD_VULKAN_VAR="disabled"
|
AMD_VULKAN_VAR="disabled"
|
||||||
fi
|
fi
|
||||||
@@ -6427,12 +6574,12 @@ gui_userconf () {
|
|||||||
NEW_STEAM_BEHAVIOR="${translations[Enable]}"
|
NEW_STEAM_BEHAVIOR="${translations[Enable]}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ -n $PW_GPU_USE ]] \
|
if [[ -n $PW_GPU_USE ]] && [[ $PW_GPU_USE != "disabled" ]] ; then
|
||||||
&& [[ $PW_GPU_USE != "disabled" ]]
|
|
||||||
then
|
|
||||||
GPU_VAR="$PW_GPU_USE"
|
GPU_VAR="$PW_GPU_USE"
|
||||||
|
elif [[ -n $GET_GPU_NAMES ]] ; then
|
||||||
|
GPU_VAR="${GET_GPU_NAMES/!*/}"
|
||||||
else
|
else
|
||||||
GPU_VAR="disabled"
|
GPU_VAR="${translations[The graphics card does not support Vulkan]}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ $PW_WINE_DPI_VALUE == "recommended" ]] ; then
|
if [[ $PW_WINE_DPI_VALUE == "recommended" ]] ; then
|
||||||
@@ -6454,10 +6601,9 @@ gui_userconf () {
|
|||||||
SOUND_DRIVER_VAR="disabled"
|
SOUND_DRIVER_VAR="disabled"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ $GUI_THEME == "default" ]] ; then GUI_THEME=${translations[default]}
|
[[ $GUI_THEME == "default" ]] && GUI_THEME=${translations[default]}
|
||||||
elif [[ $GUI_THEME == "compact" ]] ; then GUI_THEME=${translations[compact]}
|
[[ $GUI_THEME == "compact" ]] && GUI_THEME=${translations[compact]}
|
||||||
elif [[ $GUI_THEME == "classic" ]] ; then GUI_THEME=${translations[classic]}
|
[[ $GUI_THEME == "classic" ]] && GUI_THEME=${translations[classic]}
|
||||||
fi
|
|
||||||
|
|
||||||
if command -v gsettings &>/dev/null ; then
|
if command -v gsettings &>/dev/null ; then
|
||||||
YAD_GTK_THEME=$(gsettings get org.gnome.desktop.interface gtk-theme)
|
YAD_GTK_THEME=$(gsettings get org.gnome.desktop.interface gtk-theme)
|
||||||
@@ -6465,11 +6611,10 @@ gui_userconf () {
|
|||||||
[[ -n $YAD_GTK_THEME ]] && YAD_GTK_THEME="${YAD_GTK_THEME//\'/}!"
|
[[ -n $YAD_GTK_THEME ]] && YAD_GTK_THEME="${YAD_GTK_THEME//\'/}!"
|
||||||
fi
|
fi
|
||||||
[[ -n $GTK_THEME ]] && GTK_THEME_PROXY="$GTK_THEME"
|
[[ -n $GTK_THEME ]] && GTK_THEME_PROXY="$GTK_THEME"
|
||||||
if [[ -z $GTK_THEME_PROXY ]] ; then GTK_THEME_PROXY="${translations[default]}"
|
[[ -z $GTK_THEME_PROXY ]] && GTK_THEME_PROXY="${translations[default]}"
|
||||||
elif [[ $GTK_THEME_PROXY =~ light$ ]] ; then GTK_THEME_PROXY="${GTK_THEME_PROXY//light/${translations[light]}}"
|
[[ $GTK_THEME_PROXY =~ light$ ]] && GTK_THEME_PROXY="${GTK_THEME_PROXY//light/${translations[light]}}"
|
||||||
elif [[ $GTK_THEME_PROXY =~ dark$ ]] ; then GTK_THEME_PROXY="${GTK_THEME_PROXY//dark/${translations[dark]}}"
|
[[ $GTK_THEME_PROXY =~ dark$ ]] && GTK_THEME_PROXY="${GTK_THEME_PROXY//dark/${translations[dark]}}"
|
||||||
elif [[ $GTK_THEME_PROXY == "${YAD_GTK_THEME//\!/}" ]] ; then GTK_THEME_PROXY="${YAD_GTK_THEME//\!/}"
|
[[ $GTK_THEME_PROXY == "${YAD_GTK_THEME//\!/}" ]] && GTK_THEME_PROXY="${YAD_GTK_THEME//\!/}"
|
||||||
fi
|
|
||||||
|
|
||||||
if [[ $DESKTOP_WITH_TIME == "posnumber1" ]] ; then
|
if [[ $DESKTOP_WITH_TIME == "posnumber1" ]] ; then
|
||||||
DESKTOP_WITH_TIME=${translations[Show in hours and minutes]}
|
DESKTOP_WITH_TIME=${translations[Show in hours and minutes]}
|
||||||
@@ -6487,6 +6632,14 @@ gui_userconf () {
|
|||||||
SORT_WITH_TIME="disabled"
|
SORT_WITH_TIME="disabled"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [[ $PW_VULKAN_UNLOCKED == "default" ]] ; then
|
||||||
|
PW_VULKAN_UNLOCKED="${translations[default]}"
|
||||||
|
PW_VULKAN_UNLOCKED_LIST="${translations[unlock]}"
|
||||||
|
elif [[ $PW_VULKAN_UNLOCKED == "unlocked" ]] ; then
|
||||||
|
PW_VULKAN_UNLOCKED="${translations[unlocked]}"
|
||||||
|
PW_VULKAN_UNLOCKED_LIST="${translations[default]}"
|
||||||
|
fi
|
||||||
|
|
||||||
"${pw_yad}" --title="${translations[GLOBAL SETTINGS (USER.CONF)]}" --form \
|
"${pw_yad}" --title="${translations[GLOBAL SETTINGS (USER.CONF)]}" --form \
|
||||||
--gui-type="settings-shortcut" --separator="%" \
|
--gui-type="settings-shortcut" --separator="%" \
|
||||||
--window-icon "$PW_GUI_ICON_PATH/portproton.svg" \
|
--window-icon "$PW_GUI_ICON_PATH/portproton.svg" \
|
||||||
@@ -6496,13 +6649,14 @@ gui_userconf () {
|
|||||||
--field="${translations[Change branch to]}!${translations[Depending on the version of the scripts, PortProton will receive the latest changes first (the DEVEL branch), the STABLE branch is updated later and is stable.]} :CB" "$(combobox_fix "$BRANCH" "$NEW_BRANCH")" \
|
--field="${translations[Change branch to]}!${translations[Depending on the version of the scripts, PortProton will receive the latest changes first (the DEVEL branch), the STABLE branch is updated later and is stable.]} :CB" "$(combobox_fix "$BRANCH" "$NEW_BRANCH")" \
|
||||||
--field="${translations[Change start gui to]}!${translations[When using PANED in the game start menu, additional buttons are located on one large page; if NOTEBOOK, then they are divided into several.]} :CB" "$(combobox_fix "$PW_GUI_START" "$NEW_START_GUI")" \
|
--field="${translations[Change start gui to]}!${translations[When using PANED in the game start menu, additional buttons are located on one large page; if NOTEBOOK, then they are divided into several.]} :CB" "$(combobox_fix "$PW_GUI_START" "$NEW_START_GUI")" \
|
||||||
--field="${translations[Steam covers download]}!${translations[If downloading steam covers is enabled, they will be downloaded and created. (Disablement is provided in cases where their downloading is unavailable for some reason)]} :CB" "$(combobox_fix "$DOWNLOAD_STEAM_GRID" "$NEW_STEAM_BEHAVIOR")" \
|
--field="${translations[Steam covers download]}!${translations[If downloading steam covers is enabled, they will be downloaded and created. (Disablement is provided in cases where their downloading is unavailable for some reason)]} :CB" "$(combobox_fix "$DOWNLOAD_STEAM_GRID" "$NEW_STEAM_BEHAVIOR")" \
|
||||||
--field="${translations[Choose a graphics card to run the game]}!${translations[Select which video card will be used to run the game (used for all running games and programs in PortProton)]} :CB" "$(combobox_fix --disabled "$GPU_VAR" "$GET_GPU_NAMES")" \
|
--field="${translations[Choose a graphics card to run the game]}!${translations[Select which video card will be used to run the game (used for all running games and programs in PortProton)]} :CB" "$(combobox_fix "$GPU_VAR" "$GET_GPU_NAMES")" \
|
||||||
--field="${translations[Force dpi]}!${translations[Here you can set forced dpi for applications wine]} :CB" "$(combobox_fix --disabled "$YAD_DPI_VAR" "${translations[Recommended value]}!80!96!120!144!168!192!216!240")" \
|
--field="${translations[Force dpi]}!${translations[Here you can set forced dpi for applications wine]} :CB" "$(combobox_fix --disabled "$YAD_DPI_VAR" "${translations[Recommended value]}!80!96!120!144!168!192!216!240")" \
|
||||||
--field="${translations[Choice wine audio driver]}!${translations[Fixes sound popling if choice alsa]} :CB" "$(combobox_fix --disabled "$SOUND_DRIVER_VAR" "alsa!oss!pulse")" \
|
--field="${translations[Choice wine audio driver]}!${translations[Fixes sound popling if choice alsa]} :CB" "$(combobox_fix --disabled "$SOUND_DRIVER_VAR" "alsa!oss!pulse")" \
|
||||||
--field="${translations[Select PortProton theme]}!${translations[Allows you to select a theme for PortProton]} :CB" "$(combobox_fix "$GUI_THEME" "${translations[default]}!${translations[compact]}!${translations[classic]}")" \
|
--field="${translations[Select PortProton theme]}!${translations[Allows you to select a theme for PortProton]} :CB" "$(combobox_fix "$GUI_THEME" "${translations[default]}!${translations[compact]}!${translations[classic]}")" \
|
||||||
--field="${translations[Select gtk theme]}!${translations[Allows you to select a theme for GTK.]} :CB" "$(combobox_fix "$GTK_THEME_PROXY" "${YAD_GTK_THEME}Adwaita:${translations[light]}!Adwaita:${translations[dark]}!${translations[default]}")" \
|
--field="${translations[Select gtk theme]}!${translations[Allows you to select a theme for GTK.]} :CB" "$(combobox_fix "$GTK_THEME_PROXY" "${YAD_GTK_THEME}Adwaita:${translations[light]}!Adwaita:${translations[dark]}!${translations[default]}")" \
|
||||||
--field="${translations[Time display]}!${translations[Displays time spent in an application or game]} :CB" "$(combobox_fix --disabled "$DESKTOP_WITH_TIME" "${translations[Show in hours and minutes]}!${translations[Show in days, hours, minutes]}")" \
|
--field="${translations[Time display]}!${translations[Displays time spent in an application or game]} :CB" "$(combobox_fix --disabled "$DESKTOP_WITH_TIME" "${translations[Show in hours and minutes]}!${translations[Show in days, hours, minutes]}")" \
|
||||||
--field="${translations[Sort shortcuts by]}!${translations[This setting sorts the shortcuts in the main menu]} :CB" "$(combobox_fix --disabled "$SORT_WITH_TIME" "${translations[According to last launch]}!${translations[By time]}")" \
|
--field="${translations[Sort shortcuts by]}!${translations[This setting sorts the shortcuts in the main menu]} :CB" "$(combobox_fix --disabled "$SORT_WITH_TIME" "${translations[According to last launch]}!${translations[By time]}")" \
|
||||||
|
--field="${translations[Unlock all 3D APIs]}!${translations[Allows you to unlock all available 3D APIs, even if your current graphics card does not meet the minimum requirements]} :CB" "$(combobox_fix "$PW_VULKAN_UNLOCKED" "$PW_VULKAN_UNLOCKED_LIST")" \
|
||||||
--button="${translations[CANCEL THE CHANGES]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Cancel the current changes and return to the previous menu]}":1 \
|
--button="${translations[CANCEL THE CHANGES]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Cancel the current changes and return to the previous menu]}":1 \
|
||||||
--button="${translations[RESET]} USER.CONF!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Restore default settings for]} user.conf":2 \
|
--button="${translations[RESET]} USER.CONF!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Restore default settings for]} user.conf":2 \
|
||||||
--button="${translations[OPEN THE SETTINGS FILE]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Open the <b>user.conf</b> settings file in a system text editor to view and change variables manually]}":164 \
|
--button="${translations[OPEN THE SETTINGS FILE]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Open the <b>user.conf</b> settings file in a system text editor to view and change variables manually]}":164 \
|
||||||
@@ -6527,12 +6681,12 @@ gui_userconf () {
|
|||||||
gui_open_user_conf
|
gui_open_user_conf
|
||||||
;;
|
;;
|
||||||
166)
|
166)
|
||||||
|
unset PW_VULKAN_DRIVER_USE
|
||||||
IFS='%' read -r -a PW_ADD_SETTINGS_UC <"${PW_TMPFS_PATH}/tmp_yad_userconf_set_cb"
|
IFS='%' read -r -a PW_ADD_SETTINGS_UC <"${PW_TMPFS_PATH}/tmp_yad_userconf_set_cb"
|
||||||
MIRROR="${PW_ADD_SETTINGS_UC[0]}"
|
MIRROR="${PW_ADD_SETTINGS_UC[0]}"
|
||||||
if [[ $BRANCH != "${PW_ADD_SETTINGS_UC[1]}" ]] ; then
|
if [[ $BRANCH != "${PW_ADD_SETTINGS_UC[1]}" ]] ; then
|
||||||
if [[ ${PW_ADD_SETTINGS_UC[1]} == "DEVEL" ]] ; then
|
if [[ ${PW_ADD_SETTINGS_UC[1]} == "DEVEL" ]] ; then
|
||||||
if yad_question "${translations[Do you actually want to change the scripts version to:]} <b>DEVEL?</b>" ; then
|
if yad_question "${translations[Do you actually want to change the scripts version to:]} <b>DEVEL?</b>" ; then
|
||||||
export MIRROR="GITHUB"
|
|
||||||
pw_notify_send -i info \
|
pw_notify_send -i info \
|
||||||
"${translations[Branch changed to:]}" "<b>DEVEL</b>"
|
"${translations[Branch changed to:]}" "<b>DEVEL</b>"
|
||||||
BRANCH="devel"
|
BRANCH="devel"
|
||||||
@@ -6553,9 +6707,8 @@ gui_userconf () {
|
|||||||
export PW_CHANGE_BRANCH="1"
|
export PW_CHANGE_BRANCH="1"
|
||||||
export PW_FORCE_UPDATE="1"
|
export PW_FORCE_UPDATE="1"
|
||||||
else
|
else
|
||||||
if [[ $BRANCH == "DEVEL" ]] ; then BRANCH="devel"
|
[[ $BRANCH == "DEVEL" ]] && BRANCH="devel"
|
||||||
elif [[ $BRANCH == "STABLE" ]] ; then BRANCH="master"
|
[[ $BRANCH == "STABLE" ]] && BRANCH="master"
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
PW_GUI_START="${PW_ADD_SETTINGS_UC[2]}"
|
PW_GUI_START="${PW_ADD_SETTINGS_UC[2]}"
|
||||||
DOWNLOAD_STEAM_GRID="${PW_ADD_SETTINGS_UC[3]}"
|
DOWNLOAD_STEAM_GRID="${PW_ADD_SETTINGS_UC[3]}"
|
||||||
@@ -6566,30 +6719,46 @@ gui_userconf () {
|
|||||||
GTK_THEME="${PW_ADD_SETTINGS_UC[8]}"
|
GTK_THEME="${PW_ADD_SETTINGS_UC[8]}"
|
||||||
DESKTOP_WITH_TIME="${PW_ADD_SETTINGS_UC[9]}"
|
DESKTOP_WITH_TIME="${PW_ADD_SETTINGS_UC[9]}"
|
||||||
SORT_WITH_TIME="${PW_ADD_SETTINGS_UC[10]}"
|
SORT_WITH_TIME="${PW_ADD_SETTINGS_UC[10]}"
|
||||||
|
PW_VULKAN_UNLOCKED="${PW_ADD_SETTINGS_UC[11]}"
|
||||||
|
|
||||||
if [[ $DOWNLOAD_STEAM_GRID =~ (${translations[Enabled]}|${translations[Enable]}) ]] ; then DOWNLOAD_STEAM_GRID="1"
|
if [[ $DOWNLOAD_STEAM_GRID =~ (${translations[Enabled]}|${translations[Enable]}) ]]
|
||||||
elif [[ $DOWNLOAD_STEAM_GRID =~ (${translations[Disabled]}|${translations[Disable]}) ]] ; then DOWNLOAD_STEAM_GRID="0"
|
then DOWNLOAD_STEAM_GRID="1"
|
||||||
|
else DOWNLOAD_STEAM_GRID="0"
|
||||||
fi
|
fi
|
||||||
if [[ $PW_WINE_DPI_VALUE == "${translations[Recommended value]}" ]] ; then
|
|
||||||
PW_WINE_DPI_VALUE="recommended"
|
[[ $PW_WINE_DPI_VALUE == "${translations[Recommended value]}" ]] && PW_WINE_DPI_VALUE="recommended"
|
||||||
|
|
||||||
|
case $GUI_THEME in
|
||||||
|
"${translations[default]}") GUI_THEME="default" ;;
|
||||||
|
"${translations[compact]}") GUI_THEME="compact" ;;
|
||||||
|
"${translations[classic]}") GUI_THEME="classic" ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
case $GTK_THEME in
|
||||||
|
"${translations[default]}") unset GTK_THEME ;;
|
||||||
|
"${translations[light]}") GTK_THEME=${GTK_THEME//${translations[light]}/light} ;;
|
||||||
|
"${translations[dark]}") GTK_THEME=${GTK_THEME//${translations[dark]}/dark} ;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
if [[ $DESKTOP_WITH_TIME == "${translations[Show in hours and minutes]}" ]]
|
||||||
|
then DESKTOP_WITH_TIME="posnumber1"
|
||||||
|
else DESKTOP_WITH_TIME="posnumber2"
|
||||||
fi
|
fi
|
||||||
if [[ $GUI_THEME == "${translations[default]}" ]] ; then GUI_THEME=default
|
|
||||||
elif [[ $GUI_THEME == "${translations[compact]}" ]] ; then GUI_THEME=compact
|
if [[ $SORT_WITH_TIME == "${translations[According to last launch]}" ]]
|
||||||
elif [[ $GUI_THEME == "${translations[classic]}" ]] ; then GUI_THEME=classic
|
then SORT_WITH_TIME="lastlaunch"
|
||||||
|
else SORT_WITH_TIME="bytime"
|
||||||
fi
|
fi
|
||||||
if [[ $GTK_THEME == "${translations[default]}" ]] ; then unset GTK_THEME
|
|
||||||
elif [[ $GTK_THEME =~ ${translations[light]} ]] ; then GTK_THEME=${GTK_THEME//${translations[light]}/light}
|
[[ $PW_GPU_USE == "${translations[The graphics card does not support Vulkan]}" ]] && PW_GPU_USE="disabled"
|
||||||
elif [[ $GTK_THEME =~ ${translations[dark]} ]] ; then GTK_THEME=${GTK_THEME//${translations[dark]}/dark}
|
|
||||||
fi
|
if [[ $PW_VULKAN_UNLOCKED == "${translations[unlock]}" || $PW_VULKAN_UNLOCKED == "${translations[unlocked]}" ]]
|
||||||
if [[ $DESKTOP_WITH_TIME == "${translations[Show in hours and minutes]}" ]] ; then DESKTOP_WITH_TIME="posnumber1"
|
then PW_VULKAN_UNLOCKED="unlocked"
|
||||||
elif [[ $DESKTOP_WITH_TIME == "${translations[Show in days, hours, minutes]}" ]] ; then DESKTOP_WITH_TIME="posnumber2"
|
else PW_VULKAN_UNLOCKED="default"
|
||||||
fi
|
|
||||||
if [[ $SORT_WITH_TIME == "${translations[According to last launch]}" ]] ; then SORT_WITH_TIME="lastlaunch"
|
|
||||||
elif [[ $SORT_WITH_TIME == "${translations[By time]}" ]] ; then SORT_WITH_TIME="bytime"
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
edit_user_conf_from_gui MIRROR BRANCH PW_GUI_START DOWNLOAD_STEAM_GRID PW_GPU_USE PW_WINE_DPI_VALUE PW_SOUND_DRIVER_USE \
|
edit_user_conf_from_gui MIRROR BRANCH PW_GUI_START DOWNLOAD_STEAM_GRID PW_GPU_USE PW_WINE_DPI_VALUE PW_SOUND_DRIVER_USE \
|
||||||
GUI_THEME GTK_THEME DESKTOP_WITH_TIME SORT_WITH_TIME
|
GUI_THEME GTK_THEME DESKTOP_WITH_TIME SORT_WITH_TIME PW_VULKAN_UNLOCKED
|
||||||
restart_pp
|
restart_pp
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
@@ -6606,6 +6775,10 @@ resize_png () {
|
|||||||
RESIZE_NAME_PNG="${2// /_}"
|
RESIZE_NAME_PNG="${2// /_}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if [[ $RESIZE_NAME_PNG =~ ru.linux_gaming.PortProton/data/img/ ]]
|
||||||
|
then RESIZE_NAME_PNG=${RESIZE_NAME_PNG/*ru.linux_gaming.PortProton\/data\/img\//}
|
||||||
|
fi
|
||||||
|
|
||||||
for resize_to in "${@:3}" ; do
|
for resize_to in "${@:3}" ; do
|
||||||
if [[ $resize_to == 128 ]]
|
if [[ $resize_to == 128 ]]
|
||||||
then resize_to_helper=""
|
then resize_to_helper=""
|
||||||
@@ -6771,20 +6944,6 @@ get_lnk_path () {
|
|||||||
link_path=$(echo "$1" | sed 's|%ProgramFiles(x86)%|C:\\Program Files (x86)|gi;s|%ProgramFiles%|C:\\Program Files|gi' | sed "s|^.|${PORT_WINE_PATH}/data/prefixes/${prefix_name:-${PW_PREFIX_NAME:-DEFAULT}}/dosdevices/${link_drive}|g" | sed 's/\\/\//g')
|
link_path=$(echo "$1" | sed 's|%ProgramFiles(x86)%|C:\\Program Files (x86)|gi;s|%ProgramFiles%|C:\\Program Files|gi' | sed "s|^.|${PORT_WINE_PATH}/data/prefixes/${prefix_name:-${PW_PREFIX_NAME:-DEFAULT}}/dosdevices/${link_drive}|g" | sed 's/\\/\//g')
|
||||||
}
|
}
|
||||||
|
|
||||||
get_lnk () {
|
|
||||||
if command -v exiftool &>/dev/null ; then
|
|
||||||
if timeout 3 exiftool "$1" &> "${PW_TMPFS_PATH}/exiftool.tmp" ; then
|
|
||||||
parse_lnk "$1"
|
|
||||||
else
|
|
||||||
print_error "exiftool - broken!"
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
print_warning "use portable exiftool"
|
|
||||||
env PERL5LIB="${PW_PLUGINS_PATH}/portable/lib/perl5" "${PW_PLUGINS_PATH}/portable/bin/exiftool" "$1" &> "${PW_TMPFS_PATH}/exiftool.tmp"
|
|
||||||
parse_lnk "$1"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
pw_auto_create_shortcut () {
|
pw_auto_create_shortcut () {
|
||||||
if [[ "${PW_CHECK_AUTOINSTALL}" == "1" ]] \
|
if [[ "${PW_CHECK_AUTOINSTALL}" == "1" ]] \
|
||||||
|| [[ "${PW_NO_AUTO_CREATE_SHORTCUT}" == "1" ]] \
|
|| [[ "${PW_NO_AUTO_CREATE_SHORTCUT}" == "1" ]] \
|
||||||
@@ -6830,7 +6989,8 @@ pw_auto_create_shortcut () {
|
|||||||
read -r -a SORTED_LINKS < <(echo "${LINKS[@]}" | tr ' ' '\n' | sort -u | tr '\n' ' ')
|
read -r -a SORTED_LINKS < <(echo "${LINKS[@]}" | tr ' ' '\n' | sort -u | tr '\n' ' ')
|
||||||
|
|
||||||
for link_file in "${SORTED_LINKS[@]//#@_@#/ }" ; do
|
for link_file in "${SORTED_LINKS[@]//#@_@#/ }" ; do
|
||||||
get_lnk "${link_file}"
|
use_exiftool "${link_file}"
|
||||||
|
parse_lnk "${link_file}"
|
||||||
if ! exe_path="$(realpath "${link_path}" 2>/dev/null)" ; then
|
if ! exe_path="$(realpath "${link_path}" 2>/dev/null)" ; then
|
||||||
print_warning "Link broken for: $link_name"
|
print_warning "Link broken for: $link_name"
|
||||||
else
|
else
|
||||||
@@ -7044,9 +7204,9 @@ pw_prefix_manager () {
|
|||||||
--tab="${translations[SETTINGS]}!$PW_GUI_ICON_PATH/$TAB_SIZE.png!" 2>/dev/null
|
--tab="${translations[SETTINGS]}!$PW_GUI_ICON_PATH/$TAB_SIZE.png!" 2>/dev/null
|
||||||
YAD_STATUS="$?"
|
YAD_STATUS="$?"
|
||||||
|
|
||||||
try_remove_file "${PW_TMPFS_PATH}/dll_list_tmp"
|
try_remove_file "${PW_TMPFS_PATH}/dll_list_tmp"
|
||||||
try_remove_file "${PW_TMPFS_PATH}/fonts_list_tmp"
|
try_remove_file "${PW_TMPFS_PATH}/fonts_list_tmp"
|
||||||
try_remove_file "${PW_TMPFS_PATH}/settings_list_tmp"
|
try_remove_file "${PW_TMPFS_PATH}/settings_list_tmp"
|
||||||
|
|
||||||
case "$YAD_STATUS" in
|
case "$YAD_STATUS" in
|
||||||
0)
|
0)
|
||||||
@@ -7089,11 +7249,6 @@ portwine_start_debug () {
|
|||||||
pw_skip_get_info
|
pw_skip_get_info
|
||||||
kill_portwine
|
kill_portwine
|
||||||
export PW_LOG=1
|
export PW_LOG=1
|
||||||
if [[ -z "$VULKAN_DRIVER_NAME" ]] || [[ "$VULKAN_DRIVER_NAME" == "llvmpipe" ]] ; then
|
|
||||||
pw_notify_send -i warning \
|
|
||||||
"${translations[Attention working version of vulkan not detected!]}" \
|
|
||||||
"${translations[It is recommended to run games in OpenGL (low performance possible)!]}"
|
|
||||||
fi
|
|
||||||
echo "${translations[PortProton was launched in creation mode PortProton.log and it is successfully stored in the root directory of the port]}" > "${PORT_WINE_PATH}/PortProton.log"
|
echo "${translations[PortProton was launched in creation mode PortProton.log and it is successfully stored in the root directory of the port]}" > "${PORT_WINE_PATH}/PortProton.log"
|
||||||
echo "${translations[To diagnose the problem, copy ALL of the log to:]} https://linux-gaming.ru/t/opisanie-kategorii-portproton-pomoshh/1642" >> "${PORT_WINE_PATH}/PortProton.log"
|
echo "${translations[To diagnose the problem, copy ALL of the log to:]} https://linux-gaming.ru/t/opisanie-kategorii-portproton-pomoshh/1642" >> "${PORT_WINE_PATH}/PortProton.log"
|
||||||
echo "-------------------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
|
echo "-------------------------------------------------------------" >> "${PORT_WINE_PATH}/PortProton.log"
|
||||||
@@ -7434,6 +7589,7 @@ gui_open_user_conf () {
|
|||||||
restart_pp --userconf
|
restart_pp --userconf
|
||||||
;;
|
;;
|
||||||
2)
|
2)
|
||||||
|
unset PW_VULKAN_DRIVER_USE
|
||||||
echo "${PW_USERCONF_GUI}" > "${PORT_WINE_PATH}/data/user.conf"
|
echo "${PW_USERCONF_GUI}" > "${PORT_WINE_PATH}/data/user.conf"
|
||||||
print_info "Restarting..."
|
print_info "Restarting..."
|
||||||
restart_pp --userconf
|
restart_pp --userconf
|
||||||
|
@@ -277,14 +277,15 @@ if [[ -z $SORT_WITH_TIME ]] ; then
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# TODO:fixes_after_update (со временем можно будет дропнуть)
|
# TODO:fixes_after_update (со временем можно будет дропнуть)
|
||||||
if fixes_after_update "2395: DESKTOP_WITH_TIME by default displays hours and minutes" ; then
|
# Оставил для примера
|
||||||
DESKTOP_WITH_TIME="posnumber1"
|
# if fixes_after_update "2395: DESKTOP_WITH_TIME by default displays hours and minutes" ; then
|
||||||
edit_user_conf_from_gui DESKTOP_WITH_TIME
|
# DESKTOP_WITH_TIME="posnumber1"
|
||||||
fi
|
# edit_user_conf_from_gui DESKTOP_WITH_TIME
|
||||||
if fixes_after_update "2398: SORT_WITH_TIME by default sorts from the last run" ; then
|
# fi
|
||||||
SORT_WITH_TIME="lastlaunch"
|
# if fixes_after_update "2398: SORT_WITH_TIME by default sorts from the last run" ; then
|
||||||
edit_user_conf_from_gui SORT_WITH_TIME
|
# SORT_WITH_TIME="lastlaunch"
|
||||||
fi
|
# edit_user_conf_from_gui SORT_WITH_TIME
|
||||||
|
# fi
|
||||||
|
|
||||||
# choose wine dpi default
|
# choose wine dpi default
|
||||||
if [[ -z $PW_WINE_DPI_VALUE ]] ; then
|
if [[ -z $PW_WINE_DPI_VALUE ]] ; then
|
||||||
@@ -306,7 +307,13 @@ if [[ "${SKIP_CHECK_UPDATES}" != 1 ]] ; then
|
|||||||
PW_FILESYSTEM=$(stat -f -c %T "${PORT_WINE_PATH}")
|
PW_FILESYSTEM=$(stat -f -c %T "${PORT_WINE_PATH}")
|
||||||
export PW_FILESYSTEM
|
export PW_FILESYSTEM
|
||||||
|
|
||||||
background_pid --start "pw_get_tmp_files" "1"
|
background_pid --start "pw_check_vulkan" "1"
|
||||||
|
background_pid --start "pw_get_tmp_files" "2"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ -z $PW_GPU_USE || $PW_GPU_USE == "disabled" ]] ; then
|
||||||
|
unset PW_GPU_USE
|
||||||
|
pw_check_dxvk
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# create lock file
|
# create lock file
|
||||||
@@ -532,23 +539,6 @@ SORT_SAREK="${translations[DXVK, VKD3D (Sarek) (Vulkan v1.1+)]}"
|
|||||||
SORT_STABLE="${translations[DXVK, VKD3D (Stable) (Vulkan v1.3+)]}"
|
SORT_STABLE="${translations[DXVK, VKD3D (Stable) (Vulkan v1.3+)]}"
|
||||||
SORT_NEWEST="${translations[DXVK, VKD3D (Newest) (Vulkan v1.3+)]}"
|
SORT_NEWEST="${translations[DXVK, VKD3D (Newest) (Vulkan v1.3+)]}"
|
||||||
|
|
||||||
if [[ -z $PW_VULKAN_USE ]] \
|
|
||||||
|| [[ $PW_VULKAN_USE == [3-5] ]]
|
|
||||||
then
|
|
||||||
if [[ -e "/sys/module/nvidia/version" && $(</sys/module/nvidia/version) > 550.54.13 ]] \
|
|
||||||
|| [[ pw_check_glxinfo && $(grep "Version:" "$PW_TMPFS_PATH/glxinfo.tmp" | awk '{print $2}') > 25 ]]
|
|
||||||
then export PW_VULKAN_USE="6"
|
|
||||||
else export PW_VULKAN_USE="2"
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
case "$PW_VULKAN_USE" in
|
|
||||||
0) PW_DEFAULT_VULKAN_USE="$SORT_OPENGL!$SORT_NEWEST!$SORT_STABLE!$SORT_SAREK" ;;
|
|
||||||
1) PW_DEFAULT_VULKAN_USE="$SORT_SAREK!$SORT_NEWEST!$SORT_STABLE!$SORT_OPENGL" ;;
|
|
||||||
2) PW_DEFAULT_VULKAN_USE="$SORT_STABLE!$SORT_NEWEST!$SORT_SAREK!$SORT_OPENGL" ;;
|
|
||||||
*) PW_DEFAULT_VULKAN_USE="$SORT_NEWEST!$SORT_STABLE!$SORT_SAREK!$SORT_OPENGL" ;;
|
|
||||||
esac
|
|
||||||
|
|
||||||
if [[ $PW_WINE_USE == PROTON_LG ]] ; then
|
if [[ $PW_WINE_USE == PROTON_LG ]] ; then
|
||||||
PW_WINE_USE="${PW_PROTON_LG_VER}"
|
PW_WINE_USE="${PW_PROTON_LG_VER}"
|
||||||
PW_DEFAULT_WINE_USE="${PW_WINE_LG_VER}${DIST_ADD_TO_GUI}!${translations[GET-OTHER-WINE]}"
|
PW_DEFAULT_WINE_USE="${PW_WINE_LG_VER}${DIST_ADD_TO_GUI}!${translations[GET-OTHER-WINE]}"
|
||||||
@@ -574,6 +564,10 @@ if [[ -f "$portwine_exe" ]] ; then
|
|||||||
unset RESTART_PP_USED
|
unset RESTART_PP_USED
|
||||||
gui_userconf
|
gui_userconf
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
[[ $PW_VULKAN_USE == [3-5] ]] && unset PW_VULKAN_USE
|
||||||
|
pw_check_dxvk
|
||||||
|
|
||||||
if [[ $PW_GUI_DISABLED_CS != 1 ]] ; then
|
if [[ $PW_GUI_DISABLED_CS != 1 ]] ; then
|
||||||
pw_create_gui_png
|
pw_create_gui_png
|
||||||
if ! grep -il "$portwine_exe" "$PORT_WINE_PATH"/*.desktop &>/dev/null ; then
|
if ! grep -il "$portwine_exe" "$PORT_WINE_PATH"/*.desktop &>/dev/null ; then
|
||||||
@@ -593,27 +587,32 @@ if [[ -f "$portwine_exe" ]] ; then
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
export KEY_START="$RANDOM"
|
KEY_START="$RANDOM"
|
||||||
|
"$pw_yad" --plug=$KEY_START --tabnum="1" --form --separator=";" $START_GUI_TYPE \
|
||||||
|
--gui-type-box="$START_GUI_TYPE_BOX" --gui-type-layout="$START_GUI_TYPE_LAYOUT_UP" \
|
||||||
|
--gui-type-text="$START_GUI_TYPE_TEXT" --gui-type-images="$START_GUI_TYPE_IMAGE" \
|
||||||
|
--image="$PW_ICON_FOR_YAD" --text-align="center" --text "$PW_COMMENT_DB" \
|
||||||
|
--field="3D API : !$INFO_3DAPI:CB" "$PW_DEFAULT_VULKAN_USE" \
|
||||||
|
--field=" WINE : !$INFO_WINE:CB" "$(combobox_fix "$PW_WINE_USE" "$PW_DEFAULT_WINE_USE")" \
|
||||||
|
--field="PREFIX : !$INFO_PREFIX:CBE" "$PW_ADD_PREFIXES_TO_GUI" \
|
||||||
|
1> "$PW_TMPFS_PATH/tmp_yad_form_vulkan" 2>/dev/null &
|
||||||
|
|
||||||
|
if [[ $PW_GUI_START == "NOTEBOOK" ]]
|
||||||
|
then PW_GUI_START_TABNUM2="--columns=$START_GUI_NOTEBOOK_COLUMNS --gui-type-layout=$START_GUI_TYPE_LAYOUT_NOTEBOOK"
|
||||||
|
elif [[ $PW_GUI_START == "PANED" ]]
|
||||||
|
then PW_GUI_START_TABNUM2="--columns=$START_GUI_PANED_COLUMNS --gui-type-layout=$START_GUI_TYPE_LAYOUT_PANED --homogeneous-row"
|
||||||
|
fi
|
||||||
|
|
||||||
|
"$pw_yad" --plug=$KEY_START --tabnum="2" --form --align-buttons --homogeneous-column $PW_GUI_START_TABNUM2 \
|
||||||
|
--field=" ${translations[Base settings]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Edit database file for]} ${PORTWINE_DB}":"FBTN" '@bash -c "button_click --start 118"' \
|
||||||
|
--field=" ${translations[Open directory]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Open directory with <b>.ppdb</b> file]}":"FBTN" '@bash -c "button_click --start open_game_folder"' \
|
||||||
|
--field=" vkBasalt!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Enable vkBasalt by default to improve graphics in games running on Vulkan. (The HOME hotkey disables vkbasalt)]}":"FBTN" '@bash -c "button_click --start 120"' \
|
||||||
|
--field=" MangoHud!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Enable Mangohud by default (R_SHIFT + F12 keyboard shortcuts disable Mangohud)]}":"FBTN" '@bash -c "button_click --start 122"' \
|
||||||
|
--field=" dgVoodoo2!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Enable dgVoodoo2 by default (This wrapper fixes many compatibility and rendering issues when running old games)]}":"FBTN" '@bash -c "button_click --start 124"' \
|
||||||
|
--field=" GameScope!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Enable GameScope by default (Wayland micro compositor)]}":"FBTN" '@bash -c "button_click --start 126"' \
|
||||||
|
2>/dev/null &
|
||||||
|
|
||||||
if [[ $PW_GUI_START == "NOTEBOOK" ]] ; then
|
if [[ $PW_GUI_START == "NOTEBOOK" ]] ; then
|
||||||
"${pw_yad}" --plug=$KEY_START --tabnum=1 --form --separator=";" $START_GUI_TYPE \
|
|
||||||
--gui-type-box="$START_GUI_TYPE_BOX" --gui-type-layout="$START_GUI_TYPE_LAYOUT_UP" \
|
|
||||||
--gui-type-text="$START_GUI_TYPE_TEXT" --gui-type-images="$START_GUI_TYPE_IMAGE" \
|
|
||||||
--image="$PW_ICON_FOR_YAD" --text-align="center" --text "$PW_COMMENT_DB" \
|
|
||||||
--field="3D API : !$INFO_3DAPI:CB" "$PW_DEFAULT_VULKAN_USE" \
|
|
||||||
--field=" WINE : !$INFO_WINE:CB" "$(combobox_fix "$PW_WINE_USE" "$PW_DEFAULT_WINE_USE")" \
|
|
||||||
--field="PREFIX : !$INFO_PREFIX:CBE" "$PW_ADD_PREFIXES_TO_GUI" \
|
|
||||||
1> "${PW_TMPFS_PATH}/tmp_yad_form_vulkan" 2>/dev/null &
|
|
||||||
|
|
||||||
"${pw_yad}" --plug=$KEY_START --tabnum=2 --form --columns="$START_GUI_NOTEBOOK_COLUMNS" --align-buttons --homogeneous-column \
|
|
||||||
--gui-type-layout="$START_GUI_TYPE_LAYOUT_NOTEBOOK" \
|
|
||||||
--field=" ${translations[Base settings]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Edit database file for]} ${PORTWINE_DB}":"FBTN" '@bash -c "button_click --start 118"' \
|
|
||||||
--field=" ${translations[Open directory]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Open directory with <b>.ppdb</b> file]}":"FBTN" '@bash -c "button_click --start open_game_folder"' \
|
|
||||||
--field=" vkBasalt!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Enable vkBasalt by default to improve graphics in games running on Vulkan. (The HOME hotkey disables vkbasalt)]}":"FBTN" '@bash -c "button_click --start 120"' \
|
|
||||||
--field=" MangoHud!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Enable Mangohud by default (R_SHIFT + F12 keyboard shortcuts disable Mangohud)]}":"FBTN" '@bash -c "button_click --start 122"' \
|
|
||||||
--field=" dgVoodoo2!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Enable dgVoodoo2 by default (This wrapper fixes many compatibility and rendering issues when running old games)]}":"FBTN" '@bash -c "button_click --start 124"' \
|
|
||||||
--field=" GameScope!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Enable GameScope by default (Wayland micro compositor)]}":"FBTN" '@bash -c "button_click --start 126"' \
|
|
||||||
2>/dev/null &
|
|
||||||
|
|
||||||
if [[ "$PW_YAD_FORM_TAB" == "1" ]] \
|
if [[ "$PW_YAD_FORM_TAB" == "1" ]] \
|
||||||
&& [[ -n "$TAB_START" ]]
|
&& [[ -n "$TAB_START" ]]
|
||||||
then
|
then
|
||||||
@@ -622,53 +621,24 @@ if [[ -f "$portwine_exe" ]] ; then
|
|||||||
else
|
else
|
||||||
export TAB_START="1"
|
export TAB_START="1"
|
||||||
fi
|
fi
|
||||||
|
PW_GUI_START_TABNUM3="--notebook --active-tab=$TAB_START --gui-type=settings-notebook --expand"
|
||||||
"${pw_yad}" --key=$KEY_START --notebook --active-tab="$TAB_START" \
|
|
||||||
--gui-type="settings-notebook" \
|
|
||||||
--width="$PW_START_SIZE_W" --tab-pos="$PW_TAB_POSITON" \
|
|
||||||
--title "PortProton-$install_ver (${scripts_install_ver}${BRANCH_VERSION})" --expand \
|
|
||||||
--window-icon="$PW_GUI_ICON_PATH/portproton.svg" \
|
|
||||||
--tab="${translations[GENERAL]}!$PW_GUI_ICON_PATH/$TAB_SIZE.png!" \
|
|
||||||
--tab="${translations[SETTINGS]}!$PW_GUI_ICON_PATH/$TAB_SIZE.png!" \
|
|
||||||
--button="${translations[MAIN MENU]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Main menu]}":128 \
|
|
||||||
--button="${PW_SHORTCUT}" \
|
|
||||||
--button="${translations[DEBUG]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Launch with the creation of a .log file at the root PortProton]}":102 \
|
|
||||||
--button="${translations[LAUNCH]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Run file ...]}":106 2>/dev/null
|
|
||||||
PW_YAD_SET="$?"
|
|
||||||
export PW_YAD_FORM_TAB="1"
|
|
||||||
|
|
||||||
elif [[ $PW_GUI_START == "PANED" ]] ; then
|
elif [[ $PW_GUI_START == "PANED" ]] ; then
|
||||||
"${pw_yad}" --plug=$KEY_START --tabnum=1 --form --separator=";" $START_GUI_TYPE \
|
PW_GUI_START_TABNUM3="--paned --gui-type=settings-paned"
|
||||||
--gui-type-box="$START_GUI_TYPE_BOX" --gui-type-layout="$START_GUI_TYPE_LAYOUT_UP" \
|
|
||||||
--gui-type-text="$START_GUI_TYPE_TEXT" --gui-type-images="$START_GUI_TYPE_IMAGE" \
|
|
||||||
--image="$PW_ICON_FOR_YAD" --text-align="center" --text "$PW_COMMENT_DB" \
|
|
||||||
--field="3D API : !$INFO_3DAPI:CB" "$PW_DEFAULT_VULKAN_USE" \
|
|
||||||
--field=" WINE : !$INFO_WINE:CB" "$(combobox_fix "$PW_WINE_USE" "$PW_DEFAULT_WINE_USE")" \
|
|
||||||
--field="PREFIX : !$INFO_PREFIX:CBE" "$PW_ADD_PREFIXES_TO_GUI" \
|
|
||||||
1> "${PW_TMPFS_PATH}/tmp_yad_form_vulkan" 2>/dev/null &
|
|
||||||
|
|
||||||
"${pw_yad}" --plug=$KEY_START --tabnum=2 --form --columns="$START_GUI_PANED_COLUMNS" \
|
|
||||||
--gui-type-layout="$START_GUI_TYPE_LAYOUT_PANED" \
|
|
||||||
--align-buttons --homogeneous-row --homogeneous-column \
|
|
||||||
--field=" ${translations[Base settings]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Edit database file for]} ${PORTWINE_DB}":"FBTN" '@bash -c "button_click --start 118"' \
|
|
||||||
--field=" ${translations[Open directory]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Open directory with <b>.ppdb</b> file]}":"FBTN" '@bash -c "button_click --start open_game_folder"' \
|
|
||||||
--field=" vkBasalt!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Enable vkBasalt by default to improve graphics in games running on Vulkan. (The HOME hotkey disables vkbasalt)]}":"FBTN" '@bash -c "button_click --start 120"' \
|
|
||||||
--field=" MangoHud!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Enable Mangohud by default (R_SHIFT + F12 keyboard shortcuts disable Mangohud)]}":"FBTN" '@bash -c "button_click --start 122"' \
|
|
||||||
--field=" dgVoodoo2!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Enable dgVoodoo2 by default (This wrapper fixes many compatibility and rendering issues when running old games)]}":"FBTN" '@bash -c "button_click --start 124"' \
|
|
||||||
--field=" GameScope!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Enable GameScope by default (Wayland micro compositor)]}":"FBTN" '@bash -c "button_click --start 126"' \
|
|
||||||
2>/dev/null &
|
|
||||||
|
|
||||||
"${pw_yad}" --key=$KEY_START --paned \
|
|
||||||
--gui-type="settings-paned" \
|
|
||||||
--width="$PW_START_SIZE_W" --tab-pos="$PW_TAB_POSITON" \
|
|
||||||
--title "PortProton-$install_ver (${scripts_install_ver}${BRANCH_VERSION})" \
|
|
||||||
--window-icon="$PW_GUI_ICON_PATH/portproton.svg" \
|
|
||||||
--button="${translations[MAIN MENU]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Main menu]}":128 \
|
|
||||||
--button="${PW_SHORTCUT}" \
|
|
||||||
--button="${translations[DEBUG]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Launch with the creation of a .log file at the root PortProton]}":102 \
|
|
||||||
--button="${translations[LAUNCH]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Run file ...]}":106 2>/dev/null
|
|
||||||
PW_YAD_SET="$?"
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
"$pw_yad" --key=$KEY_START $PW_GUI_START_TABNUM3 \
|
||||||
|
--width="$PW_START_SIZE_W" --tab-pos="$PW_TAB_POSITON" \
|
||||||
|
--title "PortProton-$install_ver (${scripts_install_ver}${BRANCH_VERSION})" \
|
||||||
|
--window-icon="$PW_GUI_ICON_PATH/portproton.svg" \
|
||||||
|
--tab="${translations[GENERAL]}!$PW_GUI_ICON_PATH/$TAB_SIZE.png!" \
|
||||||
|
--tab="${translations[SETTINGS]}!$PW_GUI_ICON_PATH/$TAB_SIZE.png!" \
|
||||||
|
--button="${translations[MAIN MENU]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Main menu]}":128 \
|
||||||
|
--button="${PW_SHORTCUT}" \
|
||||||
|
--button="${translations[DEBUG]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Launch with the creation of a .log file at the root PortProton]}":102 \
|
||||||
|
--button="${translations[LAUNCH]}!$PW_GUI_ICON_PATH/$BUTTON_SIZE.png!${translations[Run file ...]}":106 2>/dev/null
|
||||||
|
PW_YAD_SET="$?"
|
||||||
|
[[ $PW_GUI_START == "NOTEBOOK" ]] && export PW_YAD_FORM_TAB="1"
|
||||||
|
|
||||||
case "$PW_YAD_SET" in
|
case "$PW_YAD_SET" in
|
||||||
128)
|
128)
|
||||||
[[ "$PW_GUI_START" == "NOTEBOOK" ]] && unset PW_YAD_FORM_TAB
|
[[ "$PW_GUI_START" == "NOTEBOOK" ]] && unset PW_YAD_FORM_TAB
|
||||||
@@ -840,6 +810,8 @@ else
|
|||||||
else export PW_GUI_SORT_TABS=(2 3 4 5 1)
|
else export PW_GUI_SORT_TABS=(2 3 4 5 1)
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
PW_DEFAULT_VULKAN_USE="$SORT_NEWEST!$SORT_STABLE!$SORT_SAREK!$SORT_OPENGL"
|
||||||
|
|
||||||
KEY_MENU="$RANDOM"
|
KEY_MENU="$RANDOM"
|
||||||
|
|
||||||
IFS="%"
|
IFS="%"
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
#!/usr/bin/env bash
|
#!/usr/bin/env bash
|
||||||
#Author: Castro-Fidel (linux-gaming.ru)
|
#Author: Castro-Fidel (linux-gaming.ru)
|
||||||
#SCRIPTS_NEXT_VERSION=2435
|
#SCRIPTS_NEXT_VERSION=2439
|
||||||
#SCRIPTS_STABLE_VERSION=2435
|
#SCRIPTS_STABLE_VERSION=2435
|
||||||
########################################################################
|
########################################################################
|
||||||
export AI_TOP_GAMES="PW_LGC PW_VKPLAY PW_EPIC PW_BATTLE_NET PW_WORLD_OF_SEA_BATTLE PW_RUSSIAN_FISHING PW_HO_YO_PLAY PW_FARLIGHT84 PW_WARFRAME PW_WGC PW_UBISOFT"
|
export AI_TOP_GAMES="PW_LGC PW_VKPLAY PW_EPIC PW_BATTLE_NET PW_WORLD_OF_SEA_BATTLE PW_RUSSIAN_FISHING PW_HO_YO_PLAY PW_FARLIGHT84 PW_WARFRAME PW_WGC PW_UBISOFT"
|
||||||
@@ -14,8 +14,8 @@ export PW_USE_RUNTIME="1"
|
|||||||
export PW_RT_MOUNT_RO=("")
|
export PW_RT_MOUNT_RO=("")
|
||||||
export PW_RT_MOUNT_RW=("/media" "/mnt" "/run/media/${USER}" "${PORT_WINE_PATH}")
|
export PW_RT_MOUNT_RW=("/media" "/mnt" "/run/media/${USER}" "${PORT_WINE_PATH}")
|
||||||
#export PW_SANDBOX_HOME_PATH="${PORT_WINE_PATH}"
|
#export PW_SANDBOX_HOME_PATH="${PORT_WINE_PATH}"
|
||||||
export PW_USE_ESYNC="1"
|
export PW_USE_ESYNC="0"
|
||||||
export PW_USE_FSYNC="1"
|
export PW_USE_FSYNC="0"
|
||||||
export PW_USE_NTSYNC="0"
|
export PW_USE_NTSYNC="0"
|
||||||
export PW_USE_GAMEMODE="0"
|
export PW_USE_GAMEMODE="0"
|
||||||
export PW_USE_TERMINAL="0"
|
export PW_USE_TERMINAL="0"
|
||||||
@@ -34,7 +34,6 @@ export PW_MESA_VK_WSI_PRESENT_MODE="disabled"
|
|||||||
export PW_VKD3D_FEATURE_LEVEL="disabled"
|
export PW_VKD3D_FEATURE_LEVEL="disabled"
|
||||||
export PW_USE_EAC_AND_BE="1"
|
export PW_USE_EAC_AND_BE="1"
|
||||||
export PW_USE_US_LAYOUT="0"
|
export PW_USE_US_LAYOUT="0"
|
||||||
export PW_GPU_USE="disabled"
|
|
||||||
export PW_LOCALE_SELECT="disabled"
|
export PW_LOCALE_SELECT="disabled"
|
||||||
export PW_DINPUT_PROTOCOL="0"
|
export PW_DINPUT_PROTOCOL="0"
|
||||||
export PW_USE_VRCLIENT="0"
|
export PW_USE_VRCLIENT="0"
|
||||||
@@ -45,10 +44,11 @@ export PW_USE_WINED3D_VULKAN="0"
|
|||||||
export PW_USE_SUPPLIED_DXVK_VKD3D="1"
|
export PW_USE_SUPPLIED_DXVK_VKD3D="1"
|
||||||
export PW_USE_SAREK_ASYNC="0"
|
export PW_USE_SAREK_ASYNC="0"
|
||||||
export WINEUSERNAME="steamuser"
|
export WINEUSERNAME="steamuser"
|
||||||
|
export PW_VULKAN_UNLOCKED="default"
|
||||||
###DEFAULT_WINE###
|
###DEFAULT_WINE###
|
||||||
export PW_WINE_USE="PROTON_LG"
|
export PW_WINE_USE="PROTON_LG"
|
||||||
export PW_PLUGINS_VER="_v20"
|
export PW_PLUGINS_VER="_v20"
|
||||||
export PW_OPTISCALER_VER="v1"
|
export PW_OPTISCALER_VER="v02-0.7.7-pre12"
|
||||||
export PW_GALLIUM_NINE_VER="0.10"
|
export PW_GALLIUM_NINE_VER="0.10"
|
||||||
export PW_LSFG_VK_VER="3.1-p11-cebe5e2"
|
export PW_LSFG_VK_VER="3.1-p11-cebe5e2"
|
||||||
###WINE_AND_PROTON_LG###
|
###WINE_AND_PROTON_LG###
|
||||||
|
Reference in New Issue
Block a user