Compare commits
	
		
			83 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | 97ced97037 | ||
|  | 4ae8269099 | ||
|  | 29ad1fe684 | ||
|  | effaa8caa2 | ||
|  | a852f48d99 | ||
|  | 9c400384a5 | ||
|  | 95b9627c31 | ||
|  | 2c18fe8829 | ||
|  | 95b09db43a | ||
|  | 1c1860dbef | ||
|  | c0c48c32df | ||
|  | c6622177a3 | ||
|  | d9c9747bc6 | ||
|  | 61c73ffe21 | ||
|  | 13a6980cf7 | ||
|  | 1411a31743 | ||
|  | 815689478c | ||
|  | cfbcf69d03 | ||
|  | 0fff71a8bb | ||
|  | 5d7b276873 | ||
|  | a6f899b757 | ||
|  | 3078ed73ef | ||
|  | 1554e7e7cd | ||
|  | c94136c936 | ||
|  | a84b860c25 | ||
|  | 7997f88f64 | ||
|  | 8dae4f8307 | ||
|  | f43f247be5 | ||
|  | bb97c240eb | ||
|  | ffb52f13d9 | ||
|  | aabe7da7a2 | ||
|  | ed4ee4dc9f | ||
|  | 1c05f29e1d | ||
|  | b3937994a1 | ||
|  | 55dedfe548 | ||
|  | f6b5eee05a | ||
|  | 078efd5966 | ||
|  | d247a7be11 | ||
|  | 964931bb77 | ||
|  | 5c9ab48a18 | ||
|  | de073dfd9f | ||
|  | 0848077479 | ||
|  | e1d13a56f4 | ||
|  | e28496e1c8 | ||
|  | ea9a09ad77 | ||
|  | 3e6247a8e9 | ||
|  | 22650b1b2b | ||
|  | 577c0fb332 | ||
|  | 975c2c3bfb | ||
|  | b1fcef36f2 | ||
|  | 25ce69127c | ||
|  | 6e6e20a863 | ||
|  | de15cf32bd | ||
|  | 9c88e6c07f | ||
|  | 1a9631af0f | ||
|  | 93c055630b | ||
|  | 3560d72443 | ||
|  | 7d9804ce04 | ||
|  | 6b8e52720c | ||
|  | 5582ed5862 | ||
|  | 89f282ef7f | ||
|  | e26cc989b4 | ||
|  | 728edf1624 | ||
|  | 343dda7fe8 | ||
|  | b0f10aea1d | ||
|  | d90e596f99 | ||
|  | 8bbb990c2b | ||
|  | 1e198ba0c6 | ||
|  | e080212bbb | ||
|  | 61ee6482f5 | ||
|  | e5a40d8fe3 | ||
|  | 5875ac84da | ||
|  | bc5fe4c12d | ||
|  | b48462519a | ||
|  | d982c8fab3 | ||
|  | 866bda3e0c | ||
|  | 67df25e27f | ||
|  | f6bb000530 | ||
|  | cea2e2f1e5 | ||
|  | b503b38cfa | ||
|  | 6df48c25e5 | ||
|  | 762e119d34 | ||
|  | 906a66eef5 | 
							
								
								
									
										165
									
								
								README.md
									
									
									
									
									
								
							
							
						
						| @@ -1,26 +1,67 @@ | ||||
| # PortProton | ||||
| <div align="center"> | ||||
|   <img src="https://raw.githubusercontent.com/Castro-Fidel/PortProton_PKGBUILD/main/portproton.svg" width="64"> | ||||
|   <h1 align="center">PortProton</h1> | ||||
|   <p align="center">Project designed to make it easy and convenient to run Windows games on Linux for both beginners and advanced users. | ||||
| The project strives to make launching games (and other software) as simple as possible, but at the same time provides flexible settings for advanced users.</p> | ||||
| </div> | ||||
|  | ||||
| The **official website of the project** since September 2022: https://linux-gaming.ru. **Any other site is fake!** | ||||
| ## Attention | ||||
| The **official website of the project** since September 2022: https://linux-gaming.ru.  **Any other site is fake!** | ||||
|  | ||||
| PortProton is a project designed to make it easy and convenient to run Windows games on Linux for both beginners and advanced users. | ||||
| The project strives to make launching games (and other software) as simple as possible, but at the same time provides flexible settings for advanced users. | ||||
| ## Features | ||||
|  | ||||
| Based on the version of WINE from Valve (Proton) and its modifications (Proton GE). Includes a set of scripts combined with wine-proton itself, a Steam Runtime Sniper container with the addition of ported versions of MANGOHUD (output useful information over the game window: FPS, FrameTime, CPU, GPU, etc) and vkBasalt (improvement of graphics in games, very good in in conjunction with FSR, DLSS) + many already configured optimizations for maximum performance. | ||||
| - Based on the version of WINE from Valve (Proton) and its modifications (Proton GE). | ||||
| Includes a set of scripts combined with wine-proton itself, a Steam Runtime Sniper container with the addition of ported versions of MANGOHUD (output useful information over the game window: FPS, FrameTime, CPU, GPU, etc) and vkBasalt (improvement of graphics in games, very good in in conjunction with FSR, DLSS) + many already configured optimizations for maximum performance. | ||||
|  | ||||
| Implemented one-click auto-installation (in the AUTOINSTALL tab ) of popular launchers such as: WGC, Epic Games, Battle.net, Origin, EVE Online, RockStar, Ubisoft connect , League of Legends and many others. | ||||
| For fans of console games, there are many console emulators to choose from (in the EMULATORS tab ): PPSSPP, Citra, Cemu, ePSXe, MAME and many others. | ||||
| - Implemented one-click auto-installation (in the AUTOINSTALL tab ) of popular launchers such as: WGC, Epic Games, Battle.net, Origin, EVE Online, RockStar, Ubisoft connect , League of Legends and many others. | ||||
|  | ||||
| PLEASE DO NOT REPORT BUGS ENCOUNTERED WITH THIS AT WINEHQ OR VALVE SOFTWARE! | ||||
| - For fans of console games, there are many console emulators to choose from (in the EMULATORS tab ): PPSSPP, Citra, Cemu, ePSXe, MAME and many others. | ||||
|  | ||||
| Wine sources used in PortWINE:   | ||||
| WINE-PROTON: https://github.com/ValveSoftware/Proton   | ||||
| WINE-PROTON-GE: https://github.com/GloriousEggroll/proton-ge-custom/ | ||||
| **PLEASE DO NOT REPORT BUGS ENCOUNTERED WITH THIS AT WINEHQ OR VALVE SOFTWARE!** | ||||
|  | ||||
| ## **Wine sources used in PortWINE:** | ||||
|  | ||||
| * WINE-PROTON: https://github.com/ValveSoftware/Proton | ||||
|  | ||||
| * WINE-PROTON-GE: https://github.com/GloriousEggroll/proton-ge-custom/ | ||||
|  | ||||
| ## Installation using packages | ||||
|  | ||||
| * **Ubuntu 20.04** (Kubuntu, Xubuntu, Lubuntu, etc.), **Linux Mint 20.x** : [portproton_1.0-2_amd64.deb](https://github.com/Castro-Fidel/PortProton_dpkg/releases/download/portproton_1.0-2_amd64/portproton_1.0-2_amd64.deb) | ||||
| * **Arch Linux** and derivatives (Manjaro, Garuda, etc.) : [portproton-1.0-8-x86_64.pkg.tar.zst](https://github.com/Castro-Fidel/PortProton_PKGBUILD/releases/download/portproton-1.0-8-x86_64/portproton-1.0-8-x86_64.pkg.tar.zst) | ||||
| * **ROSA Linux** (package in the official repository) is installed with the command:  `sudo urpmi portproton` | ||||
| * **Ubuntu 20.04** (Kubuntu, Xubuntu, Lubuntu, etc.), **Linux Mint 20.x** : | ||||
| [portproton_1.0-2_amd64.deb](https://github.com/Castro-Fidel/PortProton_dpkg/releases/download/portproton_1.0-2_amd64/portproton_1.0-2_amd64.deb) | ||||
| * **Arch Linux** and derivatives (Manjaro, Garuda, etc.) : | ||||
| [AUR](https://aur.archlinux.org/packages/portproton) | ||||
| * **ROSA Linux** (package in the official repository) is installed with the command: | ||||
|  | ||||
| ```sh | ||||
| sudo urpmi portproton | ||||
| ``` | ||||
|  | ||||
| * **Fedora 37+** and **Nobara**: | ||||
|  | ||||
| ```sh | ||||
| sudo dnf copr enable boria138/portproton | ||||
|  | ||||
| sudo dnf install portproton | ||||
| ``` | ||||
|  | ||||
| * [**openSUSE Leap 15.4**](https://software.opensuse.org/ymp/home:Boria138/15.4/portproton.ymp?base=openSUSE%3ALeap%3A15.4&query=portproton) | ||||
| * [**openSUSE Leap 15.5**](https://software.opensuse.org/ymp/home:Boria138/15.5/portproton.ymp?base=openSUSE%3ALeap%3A15.5&query=portproton) | ||||
| * [**openSUSE Tumbleweed**](https://software.opensuse.org/ymp/home:Boria138/openSUSE_Tumbleweed/portproton.ymp?base=openSUSE%3AFactory&query=portproton) | ||||
|  | ||||
| * **Alt Linux** (package in the official repository) is installed with the command: | ||||
|  | ||||
| ```sh | ||||
| su - | ||||
|  | ||||
| epm ei | ||||
|  | ||||
| epm full-upgrade | ||||
|  | ||||
| epm play portproton | ||||
|  | ||||
| exit | ||||
| ``` | ||||
|  | ||||
| ## Universal (manual) installation | ||||
|  | ||||
| @@ -28,15 +69,21 @@ WINE-PROTON-GE: https://github.com/GloriousEggroll/proton-ge-custom/ | ||||
|  | ||||
| Normal installation: | ||||
|  | ||||
| `wget -c "https://github.com/Castro-Fidel/PortWINE/raw/master/portwine_install_script/PortProton_1.0" && sh PortProton_1.0` | ||||
| ```sh | ||||
| wget -c "https://github.com/Castro-Fidel/PortWINE/raw/master/portwine_install_script/PortProton_1.0" && sh PortProton_1.0 | ||||
| ``` | ||||
|  | ||||
| Silent installation (ENG): | ||||
|  | ||||
| `wget -c "https://github.com/Castro-Fidel/PortWINE/raw/master/portwine_install_script/PortProton_1.0" && sh PortProton_1.0 -eng` | ||||
| ```sh | ||||
| wget -c "https://github.com/Castro-Fidel/PortWINE/raw/master/portwine_install_script/PortProton_1.0" && sh PortProton_1.0 -eng | ||||
| ``` | ||||
|  | ||||
| Silent installation (RUS): | ||||
|  | ||||
| `wget -c "https://github.com/Castro-Fidel/PortWINE/raw/master/portwine_install_script/PortProton_1.0" && sh PortProton_1.0 -rus` | ||||
| ```sh | ||||
| wget -c "https://github.com/Castro-Fidel/PortWINE/raw/master/portwine_install_script/PortProton_1.0" && sh PortProton_1.0 -rus | ||||
| ``` | ||||
|  | ||||
| ## Dependencies | ||||
|  | ||||
| @@ -46,56 +93,102 @@ If you have a video card from NVIDIA and a proprietary driver is installed, then | ||||
|  | ||||
| * **Ubuntu / Linux Mint / Pop!_OS** | ||||
|  | ||||
| `sudo dpkg --add-architecture i386` | ||||
| ```sh | ||||
| sudo dpkg --add-architecture i386 | ||||
|  | ||||
| `sudo add-apt-repository multiverse` | ||||
| sudo add-apt-repository multiverse | ||||
|  | ||||
| `sudo apt update && sudo apt upgrade` | ||||
| sudo apt update | ||||
|  | ||||
| `sudo apt install curl file libc6 libnss3 policykit-1 xz-utils zenity bubblewrap curl icoutils tar libvulkan1 libvulkan1:i386 wget zenity zstd cabextract xdg-utils openssl bc libgl1-mesa-glx libgl1-mesa-glx:i386` | ||||
| sudo apt upgrade | ||||
|  | ||||
| sudo apt install curl file libc6 libnss3 policykit-1 xz-utils zenity bubblewrap curl icoutils tar libvulkan1 libvulkan1:i386 wget zenity zstd cabextract xdg-utils openssl bc libgl1-mesa-glx libgl1-mesa-glx:i386 | ||||
| ``` | ||||
|  | ||||
| * **Arch Linux / Manjaro** | ||||
|  | ||||
| `sudo pacman -Syu bash icoutils wget bubblewrap zstd cabextract bc tar openssl gamemode desktop-file-utils curl dbus freetype2 gdk-pixbuf2 ttf-font zenity lsb-release nss xorg-xrandr vulkan-driver vulkan-icd-loader lsof lib32-freetype2 lib32-libgl lib32-gcc-libs lib32-libx11 lib32-libxss lib32-alsa-plugins lib32-libgpg-error lib32-nss lib32-vulkan-driver lib32-vulkan-icd-loader lib32-gamemode lib32-openssl` | ||||
| First check if the **multilib** repository is enabled | ||||
|  | ||||
| ```sh | ||||
| /etc/pacman.conf | ||||
| =================================== | ||||
| [multilib] | ||||
| Include = /etc/pacman.d/mirrorlist | ||||
| ==================================== | ||||
| ``` | ||||
|  | ||||
| ```sh | ||||
| sudo pacman -Syu bash icoutils wget bubblewrap zstd cabextract bc tar openssl gamemode desktop-file-utils curl dbus freetype2 gdk-pixbuf2 ttf-font zenity gzip nss xorg-xrandr vulkan-driver vulkan-icd-loader lsof lib32-freetype2 lib32-libgl lib32-gcc-libs lib32-libx11 lib32-libxss lib32-alsa-plugins lib32-libgpg-error lib32-nss lib32-vulkan-driver lib32-vulkan-icd-loader lib32-gamemode lib32-openssl | ||||
| ``` | ||||
|  | ||||
| If you have a video card from **NVIDIA** , be sure to check if the **lib32-nvidia-utils** package is installed | ||||
|  | ||||
| `sudo pacman -Syu lib32-nvidia-utils` | ||||
| ```sh | ||||
| sudo pacman -Syu lib32-nvidia-utils | ||||
| ``` | ||||
|  | ||||
| * **Debian/Deepin** | ||||
|  | ||||
| `sudo apt install software-properties-common -y && sudo apt-add-repository non-free && sudo dpkg --add-architecture i386 && sudo apt update && sudo apt upgrade` | ||||
| ```sh | ||||
| sudo apt install software-properties-common -y | ||||
|  | ||||
| `sudo apt install bubblewrap curl gamemode icoutils tar wget zenity zstd libvulkan1 libvulkan1:i386 steam cabextract` | ||||
| sudo apt-add-repository non-free | ||||
|  | ||||
| sudo dpkg --add-architecture i386 | ||||
|  | ||||
| sudo apt update | ||||
|  | ||||
| sudo apt upgrade | ||||
|  | ||||
| sudo apt install bubblewrap curl gamemode icoutils tar wget zenity zstd libvulkan1 libvulkan1:i386 steam cabextract | ||||
| ``` | ||||
|  | ||||
| * **openSUSE** | ||||
|  | ||||
| `sudo zypper in curl icoutils wget zenity bubblewrap zstd cabextract tar steam zenity zenity-lang gamemoded libgamemode0 libgamemodeauto0` | ||||
| ```sh | ||||
| sudo zypper install curl icoutils wget zenity bubblewrap zstd cabextract tar steam zenity zenity-lang gamemoded libgamemode0 libgamemodeauto0 | ||||
| ``` | ||||
|  | ||||
| * **Fedora** | ||||
|  | ||||
| Enable Non-free repository: | ||||
| ```sh | ||||
| sudo dnf update | ||||
|  | ||||
| `sudo dnf install https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm` | ||||
| sudo dnf upgrade --refresh | ||||
|  | ||||
| Install the required dependencies: | ||||
|  | ||||
| `sudo dnf update && sudo dnf upgrade --refresh && sudo dnf install curl gamemode icoutils libcurl  wget zenity bubblewrap zstd cabextract tar goverlay openssl steam` | ||||
| sudo dnf install curl gamemode gamemode.i686 icoutils wget zenity bubblewrap zstd cabextract tar openssl mesa-dri-drivers.i686 mesa-vulkan-drivers mesa-vulkan-drivers.i686 vulkan-loader vulkan-loader.i686 nss.i686 alsa-lib.i686 mesa-libGL.i686 mesa-libEGL.i686 wmctrl ImageMagick | ||||
| ``` | ||||
|  | ||||
| * **Alt Linux** | ||||
|  | ||||
| `sudo apt-get update && sudo apt-get dist-upgrade -y` | ||||
| ```sh | ||||
| sudo apt-get update | ||||
|  | ||||
| `sudo apt-get install bubblewrap cabextract curl gamemode icoutils i586-libvulkan1 libvulkan1 steam vulkan-tools wget zenity zstd` | ||||
| sudo apt-get dist-upgrade -y | ||||
|  | ||||
| sudo apt-get install bubblewrap cabextract curl gamemode icoutils i586-libvulkan1 libvulkan1 steam vulkan-tools wget zenity zstd | ||||
| ``` | ||||
|  | ||||
| * **ROSA DESKTOP FRESH R12** | ||||
|  | ||||
| `sudo dnf update && sudo dnf upgrade --refresh && sudo dnf install sysvinit-tools curl libcurl4 icoutils wget zenity bubblewrap zstd cabextract tar libvulkan1 lib64vulkan1 vulkan.x86_64 vulkan.i686 vkd3d.x86_64 vkd3d.i686 coreutils file libc6 libnss3 xz bubblewrap xdg-utils openssl bc libgl1 lib64freetype2 libfreetype2 lib64txc-dxtn libtxc-dxtn lib64opencl1 libopencl1 libdrm2 libdrm2.i686 mesa.i686` | ||||
| ```sh | ||||
| sudo dnf update | ||||
|  | ||||
| sudo dnf upgrade --refresh | ||||
|  | ||||
| sudo dnf install sysvinit-tools curl libcurl4 icoutils wget zenity bubblewrap zstd cabextract tar libvulkan1 lib64vulkan1 vulkan.x86_64 vulkan.i686 vkd3d.x86_64 vkd3d.i686 coreutils file libc6 libnss3 xz bubblewrap xdg-utils openssl bc libgl1 lib64freetype2 libfreetype2 lib64txc-dxtn libtxc-dxtn lib64opencl1 libopencl1 libdrm2 libdrm2.i686 mesa.i686 | ||||
| ``` | ||||
|  | ||||
| * **Solus 4.x** | ||||
|  | ||||
| `sudo eopkg it curl file zenity bubblewrap curl icoutils tar wget zenity zstd cabextract xdg-utils openssl bc vulkan vulkan-32bit mesalib-32bit samba` | ||||
| ```sh | ||||
| sudo eopkg it curl file zenity bubblewrap curl icoutils tar wget zenity zstd cabextract xdg-utils openssl bc vulkan vulkan-32bit mesalib-32bit samba | ||||
| ``` | ||||
|  | ||||
| ## Contacts | ||||
|  | ||||
| You can join our [Discord](https://discord.gg/FTaheP99wE) server. | ||||
| <p> | ||||
|     <a href="https://discord.gg/FTaheP99wE"> | ||||
|         <img src="https://img.shields.io/discord/308323056592486420?logo=discord" | ||||
|             alt="chat on Discord"></a> | ||||
| </p> | ||||
|   | ||||
| @@ -1,7 +1,210 @@ | ||||
| You can help us in the development of the project on the website: boosty.to/linux-gaming.ru | ||||
| You can help us in the development of the project on the website: https://linux-gaming.ru/donate/ | ||||
| ----------------------------------------- | ||||
| Changelog: | ||||
|  | ||||
| ###Scripts version 2215### Date: 18.08.2023 / Update download size: 8 megabytes. | ||||
| * added script mirror: https://gitlab.eterfund.ru/Castro-Fidel/ | ||||
| * creation of third-party (non-working) shortcuts by means of wine is disabled (when using wine versions other than proton) | ||||
|  | ||||
| ###Scripts version 2214### Date: 04.08.2023 / Update download size: 250 megabytes. | ||||
| * updated PROTON_LG to version 8-11 | ||||
|  | ||||
| ###Scripts version 2213### Date: 03.08.2023 / Update download size: 250 megabytes. | ||||
| * updated PROTON_LG to version 8-10 | ||||
| * an update from Boria138 has been adopted and finalized, adding a setting for limiting the use of CPU cores. (WINE_CPU_TOPOLOGY) | ||||
| * added a fix that significantly reduces the CPU load and increases FPS in Unity games (assuming more than 8 logical processor cores) | ||||
| * fixed changing and disabling FPS cutting | ||||
|  | ||||
| ###Scripts version 2212### Date: 01.08.2023 / Update download size: 10 megabytes. | ||||
| * added D8VK (DirectX 8 to Vulkan API) | ||||
|  | ||||
| ###Scripts version 2211### Date: 31.07.2023 / Update download size: 9 megabytes. | ||||
| * fix: League Of Legends (updated WINE_LOL_GE_8.12) | ||||
| * updated README in GitHub (thanks Boria138) | ||||
|  | ||||
| ###Scripts version 2210### Date: 28.07.2023 / Update download size: 9 megabytes. | ||||
| * fix install and run (need tests): | ||||
|     BattleNET | ||||
|     STEAM_PP | ||||
| * minor scripts changes | ||||
|  | ||||
| ###Scripts version 2209### Date: 26.07.2023 / Update download size: 9 megabytes. | ||||
| * added "Battle Of Space Raiders" autoinstall (thanks Boria138) | ||||
| * minor improvements by Boria138 | ||||
| * disabled EAC and BE for autoinstall | ||||
| * HOTFIX - fixed issues on some systems when using PROTON_LG_8-X | ||||
|  | ||||
| ###Scripts version 2208### Date: 24.07.2023 / Update download size: 9 megabytes. | ||||
| * added rename shortcut (thanks Maks1mS) | ||||
| * minor improvements by Boria138 | ||||
| * fix installing: Genshin Impact | ||||
|  | ||||
| ###Scripts version 2207### Date: 23.07.2023 / Update download size: 250 megabytes. | ||||
| * updated PROTON_LG_8-6 (with MONO 8.0) | ||||
| * updated DXVK_GIT_VER="2.2-137" | ||||
| * updated VKD3D_GIT_VER="1.1-3516" | ||||
|  | ||||
| ###Scripts version 2206### Date: 07.07.2023 / Update download size: 250 megabytes. | ||||
| * updated PROTON_LG_8-6 (with MONO 8.0) | ||||
| * updated DXVK_GIT_VER="2.2-116" | ||||
| * updated VKD3D_GIT_VER="1.1-3488" | ||||
| * added Guild Wars 2 to autoinstall | ||||
|  | ||||
| ###Scripts version 2205### Date: 01.07.2023 / Update download size: 240 megabytes. | ||||
| * updated PROTON_LG_8-4 | ||||
| * with the PROTON_LG_8-4 version, the "World of Ships" game is working again | ||||
| * with the PROTON_LG_8-4 version, the "Ubisoft Connect" is working again | ||||
|  | ||||
| ###Scripts version 2204### Date: 29.06.2023 / Update download size: 9 megabytes. | ||||
| * update localization | ||||
| * minor fixes for installing LGC and WGC | ||||
|  | ||||
| ###Scripts version 2203### Date: 23.06.2023 / Update download size: 9 megabytes. | ||||
| * minor fixes for installing Battle.net | ||||
|  | ||||
| ###Scripts version 2202### Date: 15.06.2023 / Update download size: 9 megabytes. | ||||
| * added Genshin Impact (again) | ||||
| * fix: download PROTON-GE | ||||
|  | ||||
| ###Scripts version 2201### Date: 12.06.2023 / Update download size: 9 megabytes. | ||||
| * improved readability of the output when running portproton from the terminal  | ||||
| * fixed the launch of the game World of Sea Battle | ||||
| * added the selection of the settings file before launching setup.exe | ||||
|  | ||||
| ###Scripts version 2200### Date: 06.06.2023 / Update download size: 9 megabytes. | ||||
| * updated WINE for League of Legends  | ||||
|  | ||||
| ###Scripts version 2199### Date: 05.06.2023 / Update download size: 9 megabytes. | ||||
| * minor fixes | ||||
| * function removed: check_nvidia_vk_icd_file | ||||
|  | ||||
| ###Scripts version 2198### Date: 02.06.2023 / Update download size: 9 megabytes. | ||||
| * HOTFIX №2 for DLSS | ||||
| * HOTFIX - language change | ||||
|  | ||||
| ###Scripts version 2197### Date: 02.06.2023 / Update download size: 9 megabytes. | ||||
| * HOTFIX for DLSS | ||||
|  | ||||
| ###Scripts version 2196### Date: 01.06.2023 / Update download size: 9 megabytes. | ||||
| * fixed language switching in PortProton | ||||
| * successfully tested native versions of DLSS and DXR in Alt Linux on video cards from NVIDIA RTX series | ||||
| * added settings file for new game: SystemShockRemake | ||||
| * updated STEAM settings file with online fix (thanks to Boria | Arch | GNOME) To apply the changes, you need to run the STEAM auto-installation again | ||||
| * minor interface improvements | ||||
| * added variable for laptops with hybrid graphics to PortProton/data/user.conf: "export optirun_on= #nvidia-prime-run or prime-run" | ||||
| * added condition: if "optirun_on" variable is not empty, then PRIME_RENDER_OFFLOAD and nvidia_vk_icd_file check are automatically enabled | ||||
|  | ||||
| ###Scripts version 2195### | ||||
| * FIX - install Rockstar Games Launcher | ||||
| * DELETE - ROBLOX (need use: https://github.com/roblox-linux-wrapper/roblox-linux-wrapper) | ||||
| * updated DXR и DLSS functions | ||||
|  | ||||
| ###Scripts version 2194### | ||||
| * HOTFIX - removed nvml verification in the plugins directory | ||||
|  | ||||
| ###Scripts version 2193### | ||||
| * a small change in the settings of 3D api, DXR, DXS. | ||||
| * updated dxvk-nvapi to version 0.6.3 | ||||
| * updated FAKE_DLS 230506 (FidelityFx Super Resolution 2.2-3001-0-9-1683395145) | ||||
|  | ||||
| ###Scripts version 2192### | ||||
| * fixed interface window when changing its size | ||||
| * HOTFIX - transition on the way to .exe file | ||||
|  | ||||
| ###Scripts version 2191### | ||||
| Date: 29.05.2023 / The size of the downloaded update: 450 megabytes. | ||||
| * the libs_v43 library package has been updated | ||||
|     pressure-vessel 0.20230418.0  | ||||
|     sniper 0.20230424.48416 | ||||
|     YAD 12.3 | ||||
| * fixed vkPlay Cloud Cloud gaming (it is necessary to reinstall vkPlay from the AUTOINSTALL tab after updating the scripts) | ||||
| * the installation and launch of Plarium Play has been restored | ||||
| * PortProton has been transferred to a new version of the pseudographic interface: YAD 12.3 | ||||
|  | ||||
| ###Scripts version 2190### | ||||
| * added auto-detection of the path to the file to be launched after selecting automatic installation ITCH.IO | ||||
| * the FULCRUM GAMES launcher has been completely removed from PortProton due to the transition of all their PC games to the STEAM launcher | ||||
|  | ||||
| ###Scripts version 2189### | ||||
| * accelerated the launch of Metal War Online when the game is restarted. (ALT bug 46275) To apply the fix, you need to run the MWO auto-installation again | ||||
| * fixed the display of Panzar game icons (ALT bug 46273) | ||||
| * fixed the display of World of Sea Battle game icons (ALT bug 46274) | ||||
| * fixed the installation and launch of Ankama Launcher (ALT bug 46276) | ||||
|  | ||||
| ###Scripts version 2188### | ||||
| * Indiegala Client installation is installed in a separate IGCLIENT prefix | ||||
| * temporarily removed installers that require improvements: | ||||
|     Genshin Impact (the developers, for their part, again banned the launch under wine) | ||||
|     Plarium Play (requires dotnet 6, which does not work adequately at the moment) | ||||
|     Electronic Arts App (after switching from Origin to EA App launcher works, but the games do not start)  | ||||
| * added the ability to download a new version of wine: PROTON_STEAM_8.0-2D (using DOWNLOAD OTHER WINE) | ||||
| * fixed incorrect display of the game icon when launching exe files similar in name: Setup, setup, Launcher, launcher (ALT bug 46269) | ||||
|  | ||||
| ###Scripts version 2187### | ||||
| * Added: (Thanks chal55rus Sergey P.) | ||||
|     CONTRACT WARS | ||||
|     Stalker Online | ||||
|     Metal War Online | ||||
|     Xenia | ||||
|     FCEUX | ||||
|     xemu | ||||
|     Demul | ||||
|     Rpcs3  | ||||
|  | ||||
| ###Scripts version 2186### | ||||
| * added Genshin Impact  | ||||
|  | ||||
| ###Scripts version 2185### | ||||
| * updated versions: | ||||
|     DXVK_GIT_VER="2.2-7" | ||||
|     VKD3D_GIT_VER="1.1-3424" | ||||
|  | ||||
| ###Scripts version 2184### | ||||
| * FIX for EveLauncher | ||||
|  | ||||
| ###Scripts version 2183### | ||||
| * minor fixes | ||||
| * updated versions: | ||||
|     DXVK_GIT_VER="2.2-1" | ||||
|     VKD3D_GIT_VER="1.1-3414" | ||||
|  | ||||
| ###Scripts version 2182### | ||||
| * updated versions: | ||||
|     PROTON_GE="8-3" | ||||
|     DXVK_GIT_VER="2.1-85" | ||||
|     VKD3D_GIT_VER="1.1-3413" | ||||
|  | ||||
| ###Scripts version 2181### | ||||
| * updated versions: | ||||
|     PROTON_GE="8-2" | ||||
|     DXVK_GIT_VER="2.1-79" | ||||
|     VKD3D_GIT_VER="1.1-3410" | ||||
|  | ||||
| ###Scripts version 2180### | ||||
| * updated versions: WINE_LOL_GE_7.0-8 (for League of Legend) | ||||
|  | ||||
| ###Scripts version 2179### | ||||
| * compiled and added to GitHub a new version of WINE from our project: WINE_8.5_LG (Atomic Heart videos work) | ||||
| * fixed videos in the Atomic Heart game (it is necessary to reinstall vkPlay from the AUTOINSTALL tab after updating the scripts) | ||||
|  | ||||
| ###Scripts version 2178### | ||||
| * updated versions: | ||||
|     PROTON_LG="7-54" | ||||
|     PROTON_GE="7-54" | ||||
|     DXVK_GIT_VER="2.1-51" | ||||
|     VKD3D_GIT_VER="1.1-3339" | ||||
|  | ||||
| ###Scripts version 2177### | ||||
| * Updated libs_v42 library package: | ||||
|      fixed installation of League of Legends | ||||
|      fixed problems with primary authorization in different launchers when using PROTON_LG | ||||
|      finally fixed the problem of launching RDR2 purchased from the Epic Games Launcher | ||||
| * Added instructions for installing PortProton for OS "Alt Linux (Sisyphus)" in README.md and on the site linux-gaming.ru: | ||||
|     su - | ||||
|     epm full-upgrade | ||||
|     epm ei | ||||
|     epm play portproton | ||||
|  | ||||
| ###Scripts version 2176### | ||||
| * The libc_v41 library package has been updated | ||||
|     PROTON_LG="7-53"  | ||||
| @@ -735,7 +938,7 @@ export WINE_FULLSCREEN_FSR="1" (by default) | ||||
| * updated db files | ||||
|  | ||||
| ###Scripts version 2065### | ||||
| * HOTFIX - correcting the termination of the yad and yad_new processes | ||||
| * HOTFIX - correcting the termination of the yad and yad_v12_3 processes | ||||
|  | ||||
| ###Scripts version 2064### | ||||
| * added notification to the user about possible problems when starting in a Wayland session (once and only under Wayland) | ||||
|   | ||||
| @@ -2,6 +2,215 @@ | ||||
| ----------------------------------------- | ||||
| История изменений: | ||||
|  | ||||
| ###Scripts version 2215### Дата: 18.08.2023 / Размер скачиваемого обновления: 8 мегабайт | ||||
| * добавлено зеркало скриптов: https://gitlab.eterfund.ru/Castro-Fidel/ | ||||
| * отключено создание сторонних (не работающих) ярлыков средствами wine (при использовании версий wine отличных от proton) | ||||
|  | ||||
| ###Scripts version 2214### Дата: 04.08.2023 / Размер скачиваемого обновления: 250 мегабайт | ||||
| * обновлен PROTON_LG до версии 8-11 | ||||
| * обновлен в "Авторы и спасибы" список бустеров которые хоть раз поддержали проект. | ||||
| (Для тех кто хочет присоедениться к поддержке проекта: https://boosty.to/portwine-linux.ru) | ||||
|  | ||||
| ###Scripts version 2213### Дата: 03.08.2023 / Размер скачиваемого обновления: 250 мегабайт | ||||
| * обновлен PROTON_LG до версии 8-10 (фикс UBISOFT: купленные игры работают, для магазина нужен VPN) | ||||
| * принято и доработано обновение от Boria138 добавляющее настройку ограничения использования ядер ЦПУ. (WINE_CPU_TOPOLOGY) | ||||
| * добавлен фикс значительно уменьшающий нагрузку CPU и повышающий FPS в Unity играх (при условии более 8 логических ядер процессора) | ||||
| * исправлены изменение и отключение огранчения FPS | ||||
|  | ||||
| ###Scripts version 2212### Дата: 01.08.2023 / Размер скачиваемого обновления: 10 мегабайт | ||||
| * добавлено использование D8VK (транслятор DirectX 8 в Vulkan API) для старых игр, при использовании DXVK и VKD3D  | ||||
|  | ||||
| ###Scripts version 2211### Дата: 31.07.2023 / Размер скачиваемого обновления: 9 мегабайт основные файлы и 90 мегабайт при запуске игры League Of Legends | ||||
| * исправлена работа League Of Legends (обновлен WINE_LOL_GE_8.12) | ||||
| * обновлен README на GitHub (спасибо Boria138) | ||||
|  | ||||
| ###Scripts version 2210### Дата: 28.07.2023 / Размер скачиваемого обновления: 9 мегабайт. | ||||
| * исправлены установка и обновление лончеров (требуется тест на разных системах): | ||||
|     BattleNET | ||||
|     STEAM_PP | ||||
| * множество небольших изменений скриптов | ||||
|  | ||||
| ###Scripts version 2209### Дата: 26.07.2023 / Размер скачиваемого обновления: 9 мегабайт. | ||||
| * добавлена автоустановка игры: "Battle Of Space Raiders" (спасибо Boria138) | ||||
| * приняты небольшие исправления от Boria138 | ||||
| * HOTFIX - исправлены проблемы работы PROTON_LG_8-X на некоторых системах (отображение черных лончеров и потеря библиотек необходимых для игр) | ||||
|  | ||||
| ###Scripts version 2208### Дата: 24.07.2023 / Размер скачиваемого обновления: 9 мегабайт. | ||||
| * добавлена возможность изменения названия при создании "ярлыка" (спасибо Maks1mS) | ||||
| * приняты небольшие исправления от Boria138 | ||||
| * исправлена установка Genshin Impact | ||||
|  | ||||
| ###Scripts version 2207### Дата: 23.07.2023 / Размер скачиваемого обновления: 250 мегабайт. | ||||
| * обновлен PROTON_LG до версии 8-9 | ||||
| * обновлены версии: | ||||
|     DXVK_GIT_VER="2.2-137" | ||||
|     VKD3D_GIT_VER="1.1-3516" | ||||
|  | ||||
| ###Scripts version 2206### Дата: 07.07.2023 / Размер скачиваемого обновления: 250 мегабайт. | ||||
| * обновлен PROTON_LG до версии 8-6 (совместно с версией MONO 8.0) | ||||
| * обновлены версии: | ||||
|     DXVK_GIT_VER="2.2-116" | ||||
|     VKD3D_GIT_VER="1.1-3488" | ||||
| * добавлена автоустановка игры: Guild Wars 2 | ||||
|  | ||||
| ###Scripts version 2205### Дата: 01.07.2023 / Размер скачиваемого обновления: 240 мегабайт. | ||||
| * обновлен PROTON_LG до версии 8-4 | ||||
| * с версией PROTON_LG_8-4 снова работает игра "Мир Кораблей" | ||||
| * с версией PROTON_LG_8-4 снова работает лончер "Ubisoft Connect" | ||||
|  | ||||
| ###Scripts version 2204### Дата: 29.06.2023 / Размер скачиваемого обновления: 9 мегабайт. | ||||
| * улучшение локализации (спасибо Boria138) | ||||
| * обновлены автоустановки LGC и WGC | ||||
|  | ||||
| ###Scripts version 2203### Дата: 23.06.2023 / Размер скачиваемого обновления: 9 мегабайт. | ||||
| * дополнены всплывающие подсказки в меню настроек vkBasalt (спасибо Boria138) | ||||
| * обновлен установщик Battle.net | ||||
|  | ||||
| ###Scripts version 2202### Дата: 15.06.2023 / Размер скачиваемого обновления: 9 мегабайт. | ||||
| * возвращена установка Genshin Impact. (Снова заработал, на долго?) | ||||
| * исправлена загрузка WINE версий PROTON-GE | ||||
|  | ||||
| ###Scripts version 2201### Дата: 12.06.2023 / Размер скачиваемого обновления: 9 мегабайт. | ||||
| * улучшена читаемость вывода при запуске portproton из терминала  | ||||
| * исправлен запуск игры World of Sea Battle | ||||
| * добавлен выбор файла настроек перед запуском setup.exe | ||||
|  | ||||
| ###Scripts version 2200### Дата: 06.06.2023 / Размер скачиваемого обновления: 9 мегабайт. | ||||
| * обновлен WINE для League of Legends (Для применения изменений требуется снова запустить автоустановку League of Legends) | ||||
|  | ||||
| ###Scripts version 2199### Дата: 05.06.2023 / Размер скачиваемого обновления: 9 мегабайт. | ||||
| * добавлен фикс для установки некоторых репаков от xatab | ||||
| * удалена функция: check_nvidia_vk_icd_file (в ней теперь нет необходимости) | ||||
|  | ||||
| ###Scripts version 2198### Дата: 02.06.2023 / Размер скачиваемого обновления: 9 мегабайт. | ||||
| * HOTFIX №2 для включения DLSS | ||||
| * HOTFIX выбора языка интерфейса | ||||
|  | ||||
| ###Scripts version 2197### Дата: 02.06.2023 / Размер скачиваемого обновления: 9 мегабайт. | ||||
| * HOTFIX для включения DLSS | ||||
|  | ||||
| ###Scripts version 2196### Дата: 01.06.2023 / Размер скачиваемого обновления: 9 мегабайт. | ||||
| * исправлено переключение языка в PortProton | ||||
| * успешно проверена работа нативных версий DLSS и DXR в Alt Linux на видеокартах от NVIDIA серии RTX | ||||
| * добавлен файл настроек для новой игры: SystemShockRemake | ||||
| * обновлен файл настроек STEAM с онлайн фиксом (спасибо Boria | Arch | GNOME) Для применения изменений требуется снова запустить автоустановку STEAM | ||||
| * небольшие улучшения интерфейса | ||||
| * в PortProton/data/user.conf добавлена переменная для ноутбуков с гибридной графикой: "export optirun_on=    #nvidia-prime-run or prime-run" | ||||
| * добавлено условие: если переменная "optirun_on" не пустая, то автоматически включается PRIME_RENDER_OFFLOAD и проверка nvidia_vk_icd_file | ||||
|  | ||||
| ###Scripts version 2195### Дата: 30.05.2023 / Размер скачиваемого обновления: 16 мегабайт. | ||||
| * исправлена установка Rockstar Games Launcher (ALT bug 46277) | ||||
| * временно убран установщик ROBLOX (ALT bug 46283) | ||||
| * добавлена поддержка DXR и DLSS в Alt Linux (необходимо выбирать новейшие версии DXVK и VKD3D) | ||||
|  | ||||
| ###Scripts version 2194### Дата: 30.05.2023 / Размер скачиваемого обновления: 9 мегабайт. | ||||
| * HOTFIX - убрана проверка nvml в каталоге plugins | ||||
|  | ||||
| ###Scripts version 2193### Дата: 30.05.2023 / Размер скачиваемого обновления: 15 мегабайт. | ||||
| * обновление функций выбора 3D api, DXR, DLSS, FAKE_DLSS | ||||
| * обновлен dxvk-nvapi до версии 0.6.3 | ||||
| * обновлен FAKE_DLSS 230506 (FidelityFx Super Resolution 2.2-3001-0-9-1683395145) | ||||
|  | ||||
| ###Scripts version 2192### Дата: 30.05.2023 / Размер скачиваемого обновления: 9 мегабайт. | ||||
| * исправлено "убегание" окна интерфейса при изменении его размера | ||||
| * HOTFIX - переход по пути до .exe файла | ||||
|  | ||||
| ###Scripts version 2191### | ||||
| Дата: 29.05.2023 / Размер скачиваемого обновления: 450 мегабайт. | ||||
| * обновлен пакет библиотек libs_v43 | ||||
|     pressure-vessel	0.20230418.0	 | ||||
|     sniper	0.20230424.48416 | ||||
|     YAD 12.3 | ||||
| * исправлен облачный гейминг vkPlay Cloud (необходимо после обновления скриптов повторно переустановить vkPlay из вкладки АВТОУСТАНОВКА) | ||||
| * восстановлена установка и запуск Plarium Play | ||||
| * PortProton переведен на новую версию псевдографического интерфейса: YAD 12.3 | ||||
|  | ||||
| ###Scripts version 2190### | ||||
| * добавлено автоопределение пути до запускаемого файла после выбора автоматической установки ITCH.IO (ALT bug 46278) | ||||
| * полностью удален лончер FULQRUM GAMES из PortProton в связи с переходом всех их ПК игр в лончер STEAM (ALT bug 46279) | ||||
|  | ||||
| ###Scripts version 2189### | ||||
| * ускорен запуск Metal War Online при повторном запуске игры. Добавлен комментарий: На данный момент игра работает, но долго запускаеться из Лаунчера. После установки игры, при повторном запуске, игра будет запускаться быстро. (ALT bug 46275) Для применения исправления требуется снова запустить автоустановку MWO | ||||
| * исправлено отображение иконок игры Panzar (ALT bug 46273) | ||||
| * исправлено отображение иконок игры World of Sea Battle (ALT bug 46274) | ||||
| * исправлена установка и запуск Ankama Launcher (ALT bug 46276) | ||||
|  | ||||
| ###Scripts version 2188### | ||||
| * установка Indiegala Client устанавливается в отдельный префикс IGCLIENT и добавлена информация при запуске лончера: После первого подтверждения логина в вашем браузере необходимо перезапустить игру | ||||
| * временно убраны установщики которые треуют доработки: | ||||
|     Genshin Impact (разработчики со своей стороны снова запретили запуск под wine) | ||||
|     Plarium Play | ||||
|     Electronic Arts App (после перехода с Origin на EA App лончер работает, но игры не запускаются)     | ||||
| * добавлена возможность скачивания новой версии wine: PROTON_STEAM_8.0-2D (с помощью DOWNLOAD OTHER WINE) | ||||
| * исправлено неправильное отображение иконки игры при запуске схожих по названию exe файлов: Setup, setup, Launcher, launcher (ALT bug 46269) | ||||
|  | ||||
| ###Scripts version 2187### | ||||
| * добавлена установка эмуляторов: (Спасибо chal55rus Sergey P.) | ||||
|     Xenia | ||||
|     FCEUX | ||||
|     xemu | ||||
|     Demul | ||||
|     Rpcs3  | ||||
| * добавлена установка игры: (Спасибо chal55rus Sergey P.) | ||||
|     CONTRACT WARS | ||||
|     Stalker Online | ||||
|     Metal War Online | ||||
|  | ||||
| ###Scripts version 2186### | ||||
| * добавлена установка Genshin Impact (работает с оригинальным античитом) | ||||
|  | ||||
| ###Scripts version 2185### | ||||
| * обновлены версии: | ||||
|     DXVK_GIT_VER="2.2-7" | ||||
|     VKD3D_GIT_VER="1.1-3424" | ||||
|  | ||||
| ###Scripts version 2184### | ||||
| * фикс установки EveLauncher | ||||
|  | ||||
| ###Scripts version 2183### | ||||
| * небольшие изменения функции скачивания | ||||
| * добавлен экспериментальный префикс PROGRAMS | ||||
| * обновлены версии (исправлен запуск BattleNET и vkPlay на новейших версиях DXVK и VKD3D): | ||||
|     DXVK_GIT_VER="2.2-1" | ||||
|     VKD3D_GIT_VER="1.1-3414" | ||||
|  | ||||
| ###Scripts version 2182### | ||||
| * обновлены версии: | ||||
|     PROTON_GE="8-3" | ||||
|     DXVK_GIT_VER="2.1-85" | ||||
|     VKD3D_GIT_VER="1.1-3413" | ||||
|  | ||||
| ###Scripts version 2181### | ||||
| * обновлены версии: | ||||
|     PROTON_GE="8-2" | ||||
|     DXVK_GIT_VER="2.1-79" | ||||
|     VKD3D_GIT_VER="1.1-3410" | ||||
|  | ||||
| ###Scripts version 2180### | ||||
| * обновлен WINE_LOL_GE_7.0-8 (League of Legend снова работает) | ||||
|  | ||||
| ###Scripts version 2179### | ||||
| * скомпилирована и добавлена на GitHub версия WINE от нашего проекта: WINE_8.5_LG (работаю видеоролики в Atomic Heart) | ||||
| * исправлены видеоролики в игре Atomic Heart (необходимо после обновления скриптов повторно переустановить vkPlay из вкладки АВТОУСТАНОВКА) | ||||
|  | ||||
| ###Scripts version 2178### | ||||
| * обновлены версии: | ||||
|     PROTON_LG="7-54" (Исправлена работа сервисов Epic Games Launcher) | ||||
|     PROTON_GE="7-54" (Исправлена работа сервисов Epic Games Launcher)  | ||||
|     DXVK_GIT_VER="2.1-51" | ||||
|     VKD3D_GIT_VER="1.1-3339" (улучшена работа The Last of Us, Uncharted и других DX12 игр) | ||||
|  | ||||
| ###Scripts version 2177### | ||||
| * Обновлен пакет библиотек libs_v42: | ||||
|     исправлена установка League of Legends | ||||
|     исправлены проблемы с первичной авторизацией в разных лончерах при использовании PROTON_LG | ||||
|     окончательно исправлена проблема запуска RDR2 купленной в Epic Games Launcher | ||||
| * добавлена инструкция установки PortProton для ОС "Alt Linux (Sisyphus)" в README.md и на сайте linux-gaming.ru: | ||||
|     su - | ||||
|     epm full-upgrade | ||||
|     epm ei | ||||
|     epm play portproton | ||||
|  | ||||
| ###Scripts version 2176### | ||||
| * Обновлен пакет библиотек libs_v41 | ||||
|     pressure-vessel	0.20230314.0	 | ||||
| @@ -16,241 +225,6 @@ | ||||
|  | ||||
| ###Scripts version 2175### | ||||
| * Обновлен список благодарностей платным подписчикам на https://boosty.to/portwine-linux.ru | ||||
| * Огромное спасибо (список всех активных подписок и которые уже не подписаны на данный момент): | ||||
|     anisan_sg | ||||
|     Максим Хмара-Миронов | ||||
|     svo | ||||
|     Seeropoonya | ||||
|     Alexsei Cherniavskiy | ||||
|     wrager | ||||
|     Zloy Ivan | ||||
|     Bat1stuff | ||||
|     LeGi0neR | ||||
|     ivboss | ||||
|     vlad petrov | ||||
|     Ростислав Кузнецов | ||||
|     Maksami Cordyceps | ||||
|     Александр Аброськин | ||||
|     Константин | ||||
|     Ottakvot | ||||
|     VAtiB | ||||
|     sship | ||||
|     Homyakin | ||||
|     Dima Manshin | ||||
|     gg_harper | ||||
|     DIO | ||||
|     Ivory_drive | ||||
|     Jeta | ||||
|     PLAFON | ||||
|     Coin Hunt | ||||
|     Александр Кладов | ||||
|     Антон Фамилианов | ||||
|     Cruze | ||||
|     Gekko | ||||
|     Melord | ||||
|     Taras Zagibalov | ||||
|     dupster mailbox | ||||
|     funti2f | ||||
|     Артём М. | ||||
|     Владимир Бильдюкевич | ||||
|     Олег Скакунов | ||||
|     A B | ||||
|     onix | ||||
|     BELIJJAaL | ||||
|     Apofis Smab | ||||
|     Aule Mahal | ||||
|     Андрей Гусаков | ||||
|     Влад Кладиев | ||||
|     Дмитрий Маньшин | ||||
|     Vikthor Prieto | ||||
|     Александр Абдулов | ||||
|     Александр Мерзликин | ||||
|     Алексей Чугунов | ||||
|     Дмитрий Круглов | ||||
|     Егор Кречун | ||||
|     Евгений Храмов | ||||
|     Ярослав Москвин | ||||
|     Виктор Щетинин | ||||
|     CanBoo | ||||
|     Алексей Галаш | ||||
|     Алексей Самойлов | ||||
|     Another games | ||||
|     Maktub | ||||
|     MrBatonio | ||||
|     Алексей Ивушкин | ||||
|     Тимофей Ковалев | ||||
|     Юрий С. | ||||
|     Alex Sh | ||||
|     AlxChkln | ||||
|     Ivan Vlasov | ||||
|     Rojok56 | ||||
|     vano_364 | ||||
|     xpamych | ||||
|     Андрей Нешта | ||||
|     Виталий Росляков | ||||
|     Евгений Долгополов | ||||
|     Евгений Хирвонен | ||||
|     Иван Чевычелов | ||||
|     Марат Рахимов | ||||
|     Сергей Александрович К. | ||||
|     Windchester | ||||
|     Неизвестый Дмитрий | ||||
|     Денис Олефиренко | ||||
|     Soma | ||||
|     Никита Булавин | ||||
|     Сергей Sid | ||||
|     haravara | ||||
|     Энвер | ||||
|     Серёга Сапрыкин | ||||
|     AdamArclight666 | ||||
|     Vosarat | ||||
|     fight fox | ||||
|     Дед Мазай | ||||
|     Леонид | ||||
|     tima | ||||
|     Andrei K | ||||
|     Tykva | ||||
|     Григорий Кожуханцев | ||||
|     Стас Толкачёв | ||||
|     Haschwalth | ||||
|     Looter-bit | ||||
|     Optimus | ||||
|     zntzj | ||||
|     Маленькая сосна | ||||
|     Ethan Winters | ||||
|     Семён Клишин | ||||
|     Daniil Go | ||||
|     GaiverX | ||||
|     Happy Husky | ||||
|     Pependos | ||||
|     Zorit | ||||
|     chal55rusSergey P. | ||||
|     d.kostroma | ||||
|     penguin4ek | ||||
|     Алексей Войтенко | ||||
|     Влад Блинов | ||||
|     Данил Павлов | ||||
|     Жан-Люк Пикар | ||||
|     Коляныч Королёв | ||||
|     Марат | ||||
|     Равич Ревес | ||||
|     Роман Паженский | ||||
|     Aleks | ||||
|     Dencher12 | ||||
|     Rustam | ||||
|     Евгений Бебин | ||||
|     Константин Абадонна | ||||
|     Никита Иванов | ||||
|     Семён Сорокин | ||||
|     Сергей Шипарев | ||||
|     V1ktr | ||||
|     Алексей Ultralin | ||||
|     Evgen Buiko | ||||
|     Allegra_g | ||||
|     Eliot | ||||
|     amikha1lov | ||||
|     paulscathedral | ||||
|     Удалить Аккаунт | ||||
|     Alexey RasskazovskyQ | ||||
|     Bunny Sword | ||||
|     Евгений Горенков | ||||
|     Geomant17 | ||||
|     Oleg55Rus | ||||
|     The End | ||||
|     WK217 | ||||
|     devmorro | ||||
|     typedef | ||||
|     Георгий Гурский | ||||
|     Никита Попков | ||||
|     Рамиль | ||||
|     Рома Б. | ||||
|     Семён | ||||
|     Dnevnnoy | ||||
|     Jackie | ||||
|     PlagueEvgeny | ||||
|     Slir3x | ||||
|     Zillah Giovanni | ||||
|     ksandr4370 | ||||
|     Владимир Дарвин | ||||
|     Денис Мальцев | ||||
|     Тима Суеубаев | ||||
|     Drakorgaur | ||||
|     EvilDevolver | ||||
|     Nuclearsun | ||||
|     Sergey Zotov | ||||
|     Виндэтарог | ||||
|     Виталий Богаченко | ||||
|     Павел Пашенцев | ||||
|     Виталий Нуров | ||||
|     July April | ||||
|     didi_side | ||||
|     Валерий Толмачёв | ||||
|     Azartiny Mor | ||||
|     Dezert1r | ||||
|     Dmitriy Tokarev | ||||
|     Kitsune_Yagiza | ||||
|     Lonely Lonely | ||||
|     MICROFARAT | ||||
|     Monti Roquefort | ||||
|     Nesterik | ||||
|     Ruslan Vlasov | ||||
|     Sudo Connect | ||||
|     VUMtut | ||||
|     Xpamych | ||||
|     apolon | ||||
|     fusiok | ||||
|     mrquokka | ||||
|     sanelasan | ||||
|     shecspir | ||||
|     sugoyako | ||||
|     Антон Рудковский | ||||
|     Артём К. | ||||
|     Дмитрий Сергеев | ||||
|     Павел Иванов | ||||
|     Igor14936 | ||||
|     VanBugel | ||||
|     Кирилл Т | ||||
|     BRXC | ||||
|     D M_y | ||||
|     MLogaut | ||||
|     Nikola P. | ||||
|     Yasiok | ||||
|     Вячеслав Шустров | ||||
|     Дмитрий Мазанка | ||||
|     Тимур Сафонов | ||||
|     1 1 | ||||
|     El Mago | ||||
|     dunkanMcLoud | ||||
|     Akai | ||||
|     Dallasss | ||||
|     Linux Vumtut | ||||
|     Nurik | ||||
|     Subscript | ||||
|     Yurec | ||||
|     sendependa_dio | ||||
|     ua3dko | ||||
|     Алексей Зубрийчук | ||||
|     Антоний Дамикан | ||||
|     Виктор Шварц | ||||
|     Вячеслав Шитюков | ||||
|     Денис Матій | ||||
|     Дмитрий Сидоров | ||||
|     Роман Игнатьев | ||||
|     Саша  | ||||
|     Юрий Константинов | ||||
|     benya | ||||
|     Женя Рябушкин | ||||
|     Хоттабыч | ||||
|     DSergeev | ||||
|     Dadenard | ||||
|     Lexa XLS | ||||
|     Saireg | ||||
|     sashman | ||||
|     Александр Лобанов | ||||
|     Андрей Карпенцов | ||||
|     Иван Белекеев | ||||
|     Михаил Полозов | ||||
|     николай гинтов | ||||
|  | ||||
| ###Scripts version 2174### | ||||
| * обновлены версии: | ||||
| @@ -760,7 +734,7 @@ export WINE_FULLSCREEN_FSR="1" (используется по умолчанию | ||||
| * обновлены db файлы | ||||
|  | ||||
| ###Scripts version 2065### | ||||
| * HOTFIX - корректировка завершения процессов yad и yad_new | ||||
| * HOTFIX - корректировка завершения процессов yad и yad_v12_3 | ||||
|  | ||||
| ###Scripts version 2064### | ||||
| * добавлено уведомление пользователю о возможных проблемах при запуске в Wayland сессии (один раз и только под Wayland) | ||||
| @@ -1167,7 +1141,7 @@ PS: не забывает для активации добавить перем | ||||
|  | ||||
| ###Scripts version 1104### | ||||
| * крупное обновлеение контейнера (libs_v16): | ||||
|     - добавлен /bin/yad_new версии 10.1 скомпилированный специально для будущего меню в трее) | ||||
|     - добавлен /bin/yad_v12_3 версии 10.1 скомпилированный специально для будущего меню в трее) | ||||
|     - обновлен MANGOHUD (требуется проверка под OpenGL) | ||||
|     - обновлен 7z необходимый для будущей автоматической установки Rockstar Game Launcher | ||||
| * для тестовой поддержки wayland добавлена переменная в скрипт var: GDK_BACKEND="x11" | ||||
|   | ||||
| @@ -24,8 +24,8 @@ | ||||
| # | ||||
| # Supported values : Any non-negative integer | ||||
|  | ||||
| # dxgi.maxFrameRate = 0 | ||||
| # d3d9.maxFrameRate = 0 | ||||
| dxgi.maxFrameRate = 240 | ||||
| d3d9.maxFrameRate = 240 | ||||
|  | ||||
|  | ||||
| # Override PCI vendor and device IDs reported to the application. Can | ||||
| @@ -84,8 +84,8 @@ dxgi.customVendorId = 10de | ||||
| # | ||||
| # Supported values: Any non-negative number | ||||
|  | ||||
| # dxgi.syncInterval = -1 | ||||
| # d3d9.presentInterval = -1 | ||||
| # dxgi.syncInterval = 0 | ||||
| # d3d9.presentInterval = 0 | ||||
|  | ||||
|  | ||||
| # True enables the mailbox present mode in case regular Vsync is disabled. | ||||
|   | ||||
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/Panzar.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 17 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/World of Sea Battle.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 38 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/WorldOfSeaBattleClient.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 38 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/Rockstar.png
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						| Before Width: | Height: | Size: 1.6 KiB After Width: | Height: | Size: 2.2 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/ankama.png
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						| Before Width: | Height: | Size: 1.5 KiB After Width: | Height: | Size: 2.2 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/battle_net.png
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						| Before Width: | Height: | Size: 3.0 KiB After Width: | Height: | Size: 3.4 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/bsr.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 987 B | 
| Before Width: | Height: | Size: 4.1 KiB After Width: | Height: | Size: 5.7 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/cwc.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 6.7 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/demul.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 5.6 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/eve.png
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						| Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 3.4 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/fceux.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 5.6 KiB | 
| Before Width: | Height: | Size: 1.9 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/genshinimpact.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 5.5 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/gw2.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 5.4 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/igclient.png
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						| Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 2.9 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/itch.png
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						| Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 2.4 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/lgc.png
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						| Before Width: | Height: | Size: 680 B After Width: | Height: | Size: 657 B | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/lol.png
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						| Before Width: | Height: | Size: 3.1 KiB After Width: | Height: | Size: 2.4 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/mwo.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 7.2 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/mygames.png
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						| Before Width: | Height: | Size: 2.3 KiB After Width: | Height: | Size: 2.4 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/osu.png
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						| Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 5.0 KiB | 
| Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 3.6 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/poe.png
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						| Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 5.3 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/port_proton.png
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						| Before Width: | Height: | Size: 64 KiB After Width: | Height: | Size: 12 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/roblox.png
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						| Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 3.6 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/rpcs3.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 3.0 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/so.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 2.9 KiB | 
| Before Width: | Height: | Size: 2.2 KiB After Width: | Height: | Size: 3.1 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/wgc.png
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						| Before Width: | Height: | Size: 2.9 KiB After Width: | Height: | Size: 3.8 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/wosb.png
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						| Before Width: | Height: | Size: 3.8 KiB After Width: | Height: | Size: 7.6 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/xemu.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 4.8 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/gui/xenia.png
									
									
									
									
									
										Normal file
									
								
							
							
						
						| After Width: | Height: | Size: 3.2 KiB | 
							
								
								
									
										
											BIN
										
									
								
								data_from_portwine/img/w.png
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						| Before Width: | Height: | Size: 409 KiB After Width: | Height: | Size: 57 KiB | 
| @@ -7,17 +7,27 @@ pw_ping_test () { | ||||
| } | ||||
|  | ||||
| print_error () { | ||||
|     echo "ERROR: $@" | ||||
|     printf "\E[31m%s Error: $@ %s\e[0m\n" | ||||
| } | ||||
| export -f print_error | ||||
|  | ||||
| print_warning () { | ||||
|     printf "\E[33m%s Warning: $@ %s\e[0m\n" | ||||
| } | ||||
| export -f print_warning | ||||
|  | ||||
| print_info () { | ||||
|     echo "INFO: $@" | ||||
|     printf "\E[36m%s Info: $@ %s\e[0m\n" | ||||
| } | ||||
| export -f print_info | ||||
|  | ||||
| print_debug () { | ||||
|     printf "\E[35m%s Debug: $@ %s\e[0m\n" | ||||
| } | ||||
| export -f print_debug | ||||
|  | ||||
| print_var () { | ||||
|     for vp in $@ ; do echo "${vp}=${!vp}" ; done | ||||
|     for vp in $@ ; do print_info "${vp}=${!vp}" ; done | ||||
| } | ||||
| export -f print_var | ||||
|  | ||||
| @@ -27,7 +37,7 @@ try_copy_file () { | ||||
|     else | ||||
|         cp -f "$1" "$2" | ||||
|         if [ "$?" != 0 ] | ||||
|         then print_error "failed to copy file $1 to $2" || return 1 | ||||
|         then print_error "failed to copy file $1 to $2" && return 1 | ||||
|         else return 0 | ||||
|         fi | ||||
|     fi | ||||
| @@ -46,7 +56,7 @@ try_copy_dir () { | ||||
| export -f try_copy_dir | ||||
|  | ||||
| try_remove_file () { | ||||
|     if [ -f "$1" ] ; then | ||||
|     if [ -f "$1" ] || [ ! -e "$1" ] ; then | ||||
|         rm -f "$1" | ||||
|         [ "$?" == 0 ] && return 0 || return 1 | ||||
|     fi | ||||
| @@ -105,18 +115,18 @@ export -f check_process | ||||
| try_download () { | ||||
|     PW_DOWNLOAD_FILE_NAME="$(basename $1)" | ||||
|     set -o pipefail | ||||
|     wget -O "$2" --read-timeout 300 --retry-connrefused --timeout 15 --tries 2 \ | ||||
|     --user-agent="Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" "${1}" 2>&1 | \ | ||||
|     wget -O "$2" --read-timeout 300 --retry-connrefused --timeout 4 --tries 2 --no-dns-cache --no-cache \ | ||||
|     --user-agent="Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" "$1" 2>&1 | \ | ||||
|     tr '\r' '\n' | sed -u 's/.* \([0-9]\+%\)\ \+\([0-9,.]\+.\) \(.*\)/\1\n#Downloading at \1\/, \2\/s, ETA \3/; s/^20[0-9][0-9].*/#Done./' | \ | ||||
|     zenity --progress --percentage=0 --title="Download ${PW_DOWNLOAD_FILE_NAME}" --text=Starting... --auto-close --width=500 --height=90 | ||||
|     if [ "${PIPESTATUS[0]}" != 0 ] ; then | ||||
|         print_error "Failed to download ${PW_DOWNLOAD_FILE_NAME} from GitHub." | ||||
|         print_info "Try download ${PW_DOWNLOAD_FILE_NAME} from FTP" | ||||
|         try_remove_file "$2" | ||||
|         wget -O "$2" --read-timeout 300 --retry-connrefused --timeout 15 --tries 2 \ | ||||
|         wget -O "$2" --read-timeout 300 --retry-connrefused --timeout 4 --tries 2 --no-dns-cache --no-cache \ | ||||
|         --user-agent="Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" --ftp-user=anonymous "ftp://171.22.215.18/archives/${PW_DOWNLOAD_FILE_NAME}" 2>&1 | \ | ||||
|         tr '\r' '\n' | sed -u 's/.* \([0-9]\+%\)\ \+\([0-9,.]\+.\) \(.*\)/\1\n#Downloading at \1\/, \2\/s, ETA \3/; s/^20[0-9][0-9].*/#Done./' | \ | ||||
|         zenity --progress --percentage=0 --title="Download ${PW_DOWNLOAD_FILE_NAME}" --text=Starting... --auto-close --width=500 --height=90 | ||||
|         zenity --progress --percentage=0 --title="Try download ${PW_DOWNLOAD_FILE_NAME} from FTP" --text=Starting... --auto-close --width=500 --height=90 | ||||
|         if [ "${PIPESTATUS[0]}" != 0 ] ; then | ||||
|             print_error "Failed to download ${PW_DOWNLOAD_FILE_NAME} from FTP." | ||||
|             try_remove_file "$2" | ||||
| @@ -129,7 +139,7 @@ try_download () { | ||||
|  | ||||
| try_download_to_path () { | ||||
|     set -o pipefail | ||||
|     wget --directory-prefix="$2" --read-timeout 300 --retry-connrefused --timeout 15 --tries 3 \ | ||||
|     wget --directory-prefix="$2" --read-timeout 300 --retry-connrefused --timeout 4 --tries 2 --no-dns-cache --no-cache \ | ||||
|     --user-agent="Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" "$1" 2>&1 | \ | ||||
|     tr '\r' '\n' | sed -u 's/.* \([0-9]\+%\)\ \+\([0-9,.]\+.\) \(.*\)/\1\n#Downloading at \1\/, \2\/s, ETA \3/; s/^20[0-9][0-9].*/#Done./' | \ | ||||
|     zenity --progress --percentage=0 --title="Download $(basename $1)" --text=Starting... --auto-close --width=500 --height=90 | ||||
| @@ -142,7 +152,7 @@ try_download_to_path () { | ||||
| } | ||||
|  | ||||
| try_download_silent () { | ||||
|     wget -O "$2" --read-timeout 300 --retry-connrefused --timeout 15 --tries 3 \ | ||||
|     wget -O "$2" --read-timeout 300 --retry-connrefused --timeout 4 --tries 2 --no-dns-cache --no-cache \ | ||||
|     --user-agent="Mozilla/5.0 (compatible; Konqueror/2.1.1; X11)" "$1" | ||||
|     if [ "${PIPESTATUS[0]}" != 0 ] ; then | ||||
|         print_error "Failed to download $1. Skipping." | ||||
| @@ -195,7 +205,7 @@ var_vk_istance_layers_config_update () { | ||||
| unpack_tar_zst () { | ||||
|     set -o pipefail | ||||
|     unset PW_ZSTD_PORT | ||||
|     if  [[ `which zstd` ]] &>/dev/null ; then | ||||
|     if  [[ `command -v zstd` ]] &>/dev/null ; then | ||||
|         tar -I zstd -xhvf "$1" -C "$2" | sszen | ||||
|         [ "${PIPESTATUS[0]}" != 0 ] && print_error "File $1 unpacking error." && return 1 || return 0 | ||||
|     else | ||||
| @@ -264,7 +274,7 @@ pw_reinstall_pp () { | ||||
|         read -p "Do you want to reinstall PortProton? (Y,y - Yes):   " -n 1 -r | ||||
|         if [[ ! $REPLY =~ ^[Yy]$ ]] | ||||
|         then | ||||
|             echo | ||||
|             echo "" | ||||
|             exit 1 | ||||
|         fi | ||||
|     elif ! gui_question "${port_reinstall}"  | ||||
| @@ -277,7 +287,7 @@ pw_reinstall_pp () { | ||||
|     try_remove_file "${PORT_WINE_PATH}/data/user.conf" | ||||
|     echo 1000 > "${PORT_WINE_TMP_PATH}/scripts_ver" | ||||
|     echo | ||||
|     echo "Restarting PP for reinstall files..." | ||||
|     print_info "Restarting PP for reinstall files..." | ||||
|     /usr/bin/env bash -c ${pw_full_command_line[*]} & | ||||
|     exit 0 | ||||
| } | ||||
| @@ -286,7 +296,13 @@ check_user_conf () { | ||||
|     if [ ! -f "${USER_CONF}" ]; then | ||||
|         echo "#!/usr/bin/env bash" > "${USER_CONF}" | ||||
|         echo "# User overides db and var settings..." >> "${USER_CONF}" | ||||
|         echo "# export DXVK_HUD=full" >> "${USER_CONF}" | ||||
|         echo "# export GALLIUM_HUD=fps" >> "${USER_CONF}" | ||||
|         echo "export optirun_on=      #nvidia-prime-run or prime-run" >> "${USER_CONF}" | ||||
|         chmod u+x "${USER_CONF}" | ||||
|     else | ||||
|         grep "optirun_on" "${USER_CONF}" >/dev/null | ||||
|         [[ "$?" != 0 ]] && echo "export optirun_on=" >> "${USER_CONF}" | ||||
|     fi | ||||
|     return 0 | ||||
| } | ||||
| @@ -360,21 +376,18 @@ init_wine_ver () { | ||||
|             mv -f "${WINEDIR}/lib/wine/x86_64-windows" "${WINEDIR}/lib64/wine/" | ||||
|         fi | ||||
|  | ||||
|         try_remove_file "${WINEDIR}/lib/libsteam_api.so" | ||||
|         try_remove_file "${WINEDIR}/lib64/libsteam_api.so" | ||||
|          | ||||
|         for mono_gecko_chk in "mono" "gecko" ; do | ||||
|             if check_symlink "${WINEDIR}/share/wine/${mono_gecko_chk}" ; then | ||||
|                 echo "${WINEDIR}/share/wine/${mono_gecko_chk} is symlink. OK." | ||||
|                 print_info "${WINEDIR}/share/wine/${mono_gecko_chk} is symlink. OK." | ||||
|             elif [[ -d "${WINEDIR}/share/wine/${mono_gecko_chk}" ]] ; then | ||||
|                 try_copy_dir "${WINEDIR}/share/wine/${mono_gecko_chk}" "${PORT_WINE_TMP_PATH}" | sszen | ||||
|                 try_remove_dir "${WINEDIR}/share/wine/${mono_gecko_chk}" | ||||
|                 try_force_link_dir "${PORT_WINE_TMP_PATH}/${mono_gecko_chk}" "${WINEDIR}"/share/wine/ | ||||
|                 echo "Copy ${WINEDIR}/share/wine/${mono_gecko_chk} to tmp and create symlink to ${WINEDIR}/share/wine/. OK." | ||||
|                 print_info "Copy ${WINEDIR}/share/wine/${mono_gecko_chk} to tmp and create symlink to ${WINEDIR}/share/wine/. OK." | ||||
|             else | ||||
|                 try_remove_dir "${WINEDIR}/share/wine/${mono_gecko_chk}" | ||||
|                 try_force_link_dir "${PORT_WINE_TMP_PATH}/${mono_gecko_chk}" "${WINEDIR}"/share/wine | ||||
|                 echo "${WINEDIR}/share/wine/${mono_gecko_chk} is broken symlink. Repair... OK." | ||||
|                 print_warning "${WINEDIR}/share/wine/${mono_gecko_chk} is broken symlink. Repair... OK." | ||||
|             fi | ||||
|         done | ||||
|  | ||||
| @@ -384,8 +397,14 @@ init_wine_ver () { | ||||
|             echo 'HKLM,System\ControlSet001\Services\nvlddmkm,"{41FCC608-8496-4DEF-B43E-7D9BD675A6FF}",0x10001,0x00000001' >> "${WINEDIR}/share/wine/wine.inf" | ||||
|             sed -i '/Steam.exe/d' "${WINEDIR}/share/wine/wine.inf" | ||||
|             sed -i '/\\Valve\\Steam/d' "${WINEDIR}/share/wine/wine.inf" | ||||
|             sed -i '/winemenubuilder/d' "${WINEDIR}/share/wine/wine.inf" | ||||
|         fi | ||||
|     fi | ||||
|  | ||||
|     rm -f "${WINEDIR}"/lib*/*steam* &>/dev/null | ||||
|     rm -f "${WINEDIR}"/lib*/wine/*/*steam* &>/dev/null | ||||
|     rm -f "${WINEDIR}"/lib*/wine/*-windows/winemenubuilder.exe &>/dev/null | ||||
|  | ||||
|     return 0 | ||||
| } | ||||
|  | ||||
| @@ -414,14 +433,13 @@ pw_init_runtime () { | ||||
|     if [ "${PW_USE_GSTREAMER}" = 1 ] ; then  | ||||
|         if [ -d "${WINEDIR}/lib64/gstreamer-1.0" ] ; then | ||||
|             export GST_PLUGIN_SYSTEM_PATH_1_0="${WINEDIR}/lib64/gstreamer-1.0:${WINEDIR}/lib/gstreamer-1.0" | ||||
|         elif [ -d "${PW_WINELIB}/portable/lib/lib64/gstreamer-1.0" ] ; then | ||||
|             export GST_PLUGIN_SYSTEM_PATH_1_0="${PW_WINELIB}/portable/lib/lib64/gstreamer-1.0:${PW_WINELIB}/portable/lib/lib32/gstreamer-1.0" | ||||
|         fi | ||||
|         export WINE_GST_REGISTRY_DIR="${PORT_WINE_TMP_PATH}" | ||||
|         export MEDIACONV_AUDIO_DUMP_FILE="${PORT_WINE_TMP_PATH}"/audio.foz | ||||
|         export MEDIACONV_AUDIO_TRANSCODED_FILE="${PORT_WINE_TMP_PATH}"/transcoded_audio.foz | ||||
|         export MEDIACONV_VIDEO_DUMP_FILE="${PORT_WINE_TMP_PATH}"/video.foz | ||||
|         export MEDIACONV_VIDEO_TRANSCODED_FILE="${PORT_WINE_TMP_PATH}"/transcoded_video.foz | ||||
|         create_new_dir "${WINEDIR}"/gstreamer_tmp/ | ||||
|         export WINE_GST_REGISTRY_DIR="${WINEDIR}"/gstreamer_tmp/ | ||||
|         export MEDIACONV_AUDIO_DUMP_FILE="${WINEDIR}"/gstreamer_tmp/audio.foz | ||||
|         export MEDIACONV_AUDIO_TRANSCODED_FILE="${WINEDIR}"/gstreamer_tmp/transcoded_audio.foz | ||||
|         export MEDIACONV_VIDEO_DUMP_FILE="${WINEDIR}"/gstreamer_tmp/video.foz | ||||
|         export MEDIACONV_VIDEO_TRANSCODED_FILE="${WINEDIR}"/gstreamer_tmp/transcoded_video.foz | ||||
|     else | ||||
|         var_winedlloverride_update "winegstreamer=" | ||||
|     fi | ||||
| @@ -461,7 +479,7 @@ pw_init_runtime () { | ||||
|         else export PRESSURE_VESSEL_FILESYSTEMS_RW="${PWRTMRW}" | ||||
|         fi | ||||
|     done | ||||
|     echo "RUNTIME is enabled" | ||||
|     print_info "RUNTIME is enabled" | ||||
| } | ||||
|  | ||||
| pw_mangohud_check () { | ||||
| @@ -498,7 +516,6 @@ pw_vkbasalt_check () { | ||||
|         fi | ||||
|         sed -ri "s/casSharpness .*/casSharpness = ${PW_VKBASALT_FFX_CAS}/g" "${PORT_WINE_PATH}/data/vkBasalt.conf" | ||||
|         export VKBASALT_CONFIG_FILE="${PORT_WINE_PATH}/data/vkBasalt.conf" | ||||
|         # sed -i s/'> = 0.05;'/'> = 0.035;'/ "${PW_WINELIB}/pressure-vessel/reshade/shaders/FilmGrain2.fx" | ||||
|         var_vk_istance_layers_config_update "VK_LAYER_VKBASALT_post_processing64:VK_LAYER_VKBASALT_post_processing32" | ||||
|         print_info "vkBasalt is enabled" | ||||
|     else | ||||
| @@ -508,14 +525,6 @@ pw_vkbasalt_check () { | ||||
|     return 0 | ||||
| } | ||||
|  | ||||
| check_nvidia_vk_icd_file () { | ||||
|     if [[ -f "/usr/share/vulkan/icd.d/nvidia_icd.json" ]] ; then | ||||
|         export VK_ICD_FILENAMES="/usr/share/vulkan/icd.d/nvidia_icd.json" | ||||
|     elif [[ -f "/etc/vulkan/icd.d/nvidia_icd.json" ]] ; then | ||||
|         export VK_ICD_FILENAMES="/etc/vulkan/icd.d/nvidia_icd.json" | ||||
|     fi | ||||
| } | ||||
|  | ||||
| regdlloverrides () { | ||||
|     PW_DLL_EXE=`echo $@ | awk -F: '{print $1}'` | ||||
|     PW_DLL_LIB=`echo $@ | awk -F: '{print $2}' | awk -F= '{print $1}'` | ||||
| @@ -606,12 +615,12 @@ stop_portwine () { | ||||
|     kill_portwine && | ||||
|     try_remove_dir "${PW_WINELIB}/var" | ||||
|     find "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/" -maxdepth 1 -type f -name "*.tmp" -delete | ||||
|     if [ ! -z "`pgrep -a yad_new | grep "\-\-notification" | awk '{print $1}'`" ] ; then | ||||
|         kill -s SIGUSR1 "`pgrep -a yad_new | grep "\-\-notification" | awk '{print $1}'`" 2>/dev/null | ||||
|     if [ ! -z "`pgrep -a yad_v12_3 | grep "\-\-notification" | awk '{print $1}'`" ] ; then | ||||
|         kill -s SIGUSR1 "`pgrep -a yad_v12_3 | grep "\-\-notification" | awk '{print $1}'`" 2>/dev/null | ||||
|     fi | ||||
|     add_in_stop_portwine #&>/dev/null | ||||
|     kill -n 9 `pgrep -a start.sh | grep -i '/PortProton/' | awk '{print $1}'` > /dev/null 2>&1 | ||||
|     killall yad_new &>/dev/null | ||||
|     killall yad_v12_3 &>/dev/null | ||||
|     exit 0 | ||||
| } | ||||
| export -f stop_portwine | ||||
| @@ -640,11 +649,11 @@ pw_download_libs () { | ||||
|         fi | ||||
|     fi | ||||
|     export pw_yad="${PW_WINELIB}/portable/bin/yad" | ||||
|     export pw_yad_new="${PW_WINELIB}/portable/bin/yad_new" | ||||
|     export pw_yad_v12_3="${PW_WINELIB}/portable/bin/yad_v12_3" | ||||
|     export pw_zstd="${PW_WINELIB}/portable/bin/zstd" | ||||
|     export pw_7z="${PW_WINELIB}/portable/lib/p7zip/7z" | ||||
|     if [ -x "`which xterm 2>/dev/null`" ]; then | ||||
|         export SYS_XTERM=`which xterm` | ||||
|     if [ -x "`command -v xterm 2>/dev/null`" ]; then | ||||
|         export SYS_XTERM=`command -v xterm` | ||||
|         export PW_XTERM="${SYS_XTERM} -geometry 159x37 -e" | ||||
|     else | ||||
|         export PW_XTERM="${PW_WINELIB}/runtime/files/bin/xterm -geometry 159x37 -e" | ||||
| @@ -739,6 +748,24 @@ pw_check_and_download_dxvk_and_vkd3d () { | ||||
|             fi | ||||
|         fi | ||||
|     done | ||||
|  | ||||
|     #Download D8VK | ||||
|     if [ ! -d "${PW_VULKAN_DIR}/d8vk-${D8VK_VER}" ] ; then | ||||
|         print_info "Download and install D8VK v.${D8VK_VER}" | ||||
|         if try_download "https://github.com/Castro-Fidel/vulkan/releases/download/d8vk-${D8VK_VER}/d8vk-${D8VK_VER}.tar.xz" "${PW_VULKAN_DIR}/d8vk-${D8VK_VER}.tar.xz" ; then | ||||
|             if unpack_tar_xz "${PW_VULKAN_DIR}/d8vk-${D8VK_VER}.tar.xz" "${PW_VULKAN_DIR}" ; then | ||||
|                 try_remove_file "${PW_VULKAN_DIR}/d8vk-${D8VK_VER}.tar.xz" | ||||
|             else | ||||
|                 try_remove_file "${PW_VULKAN_DIR}/d8vk-${D8VK_VER}.tar.xz" | ||||
|                 try_remove_dir "d8vk-${D8VK_VER}" | ||||
|  | ||||
|                 zenity_error_download && pw_check_and_download_dxvk_and_vkd3d | ||||
|             fi | ||||
|         else | ||||
|             zenity_error_download && pw_check_and_download_dxvk_and_vkd3d | ||||
|         fi | ||||
|     fi | ||||
|  | ||||
|     return 0 | ||||
| } | ||||
|  | ||||
| @@ -748,9 +775,7 @@ pw_check_and_download_plugins () { | ||||
|         do try_remove_dir "${PORT_WINE_TMP_PATH}/${RM_PLUGINS}" | ||||
|         done | ||||
|     fi | ||||
|     if [[ ! -d "${PW_PLUGINS_PATH}/BattlEye_Runtime" || ! -d "${PW_PLUGINS_PATH}/fake_dlss" \ | ||||
|     || ! -d "${PW_PLUGINS_PATH}/nvapi" || ! -d "${PW_PLUGINS_PATH}/nvml" ]] | ||||
|     then | ||||
|     if [[ ! -d "${PW_PLUGINS_PATH}/fake_dlss" ]] || [[ ! -d "${PW_PLUGINS_PATH}/nvapi" ]] ; then | ||||
|         print_info "Download and install plugins${PW_PLUGINS_VER}..." | ||||
|         if try_download "github.com/Castro-Fidel/wine_builds/releases/download/plugins${PW_PLUGINS_VER}/plugins${PW_PLUGINS_VER}.tar.xz" "${PORT_WINE_TMP_PATH}/plugins${PW_PLUGINS_VER}.tar.xz" ; then | ||||
|             if unpack_tar_xz "${PORT_WINE_TMP_PATH}/plugins${PW_PLUGINS_VER}.tar.xz" "${PORT_WINE_TMP_PATH}" ; then | ||||
| @@ -770,10 +795,10 @@ pw_check_and_download_plugins () { | ||||
|  | ||||
| pw_init_db () { | ||||
|     if [[ ! -z "${portwine_exe}" ]] ; then | ||||
|         try_remove_file "${PORT_SCRIPTS_PATH}/portwine_db/setup" | ||||
|         export PORTWINE_DB=`echo "${portwine_exe}" | awk -F '/' 'NF>1{print $NF}' | sed s/".exe"/""/gi` | ||||
|         if [[ -f "${portwine_exe}".ppdb ]] && [[ "${PORTWINE_DB}" != "RiotClientServices" ]] ; then | ||||
|             export PORTWINE_DB_FILE="${portwine_exe}".ppdb | ||||
|             # sed -i 's/ PP_/ PW_/g' "${PORTWINE_DB_FILE}" | ||||
|             . "${PORTWINE_DB_FILE}" | ||||
|             if [[ -z "`ls -p "${PORT_WINE_PATH}/prefixes/" | grep -e "^${PW_PREFIX_NAME}/"`" ]] ; then | ||||
|                 export PW_PREFIX_NAME=`echo "${portwine_exe}" | awk -F"/prefixes/" '{print $2}' | awk -F"/" '{print $1}'` | ||||
| @@ -787,19 +812,17 @@ pw_init_db () { | ||||
|                 unset ADD_CB_DBFILE | ||||
|                 for PW_CHECK_DB_FILE in $PW_FIND_DB_FILE ; do | ||||
|                     if [[ -z "${ADD_CB_DBFILE}" ]] ; then | ||||
|                         export ADD_CB_DBFILE="${PW_CHECK_DB_FILE}" | ||||
|                         export ADD_CB_DBFILE="`echo ${PW_CHECK_DB_FILE} | awk -F'/' '{print $NF}'`" | ||||
|                     else | ||||
|                         export ADD_CB_DBFILE="${PW_CHECK_DB_FILE}!${ADD_CB_DBFILE}" | ||||
|                         export ADD_CB_DBFILE="`echo ${PW_CHECK_DB_FILE} | awk -F'/' '{print $NF}'`!${ADD_CB_DBFILE}" | ||||
|                     fi | ||||
|                 done | ||||
|                 PORTWINE_DB_FILE=`"${pw_yad_new}" --text-align=center --text "${PW_SELECTION_DB_LOC}" --borders=15 --form --center  \ | ||||
|                 PORTWINE_DB_FILE="${PORT_SCRIPTS_PATH}/portwine_db"/`"${pw_yad_v12_3}" --text-align=center --text "${PW_SELECTION_DB_LOC}" --borders=15 --form \ | ||||
|                 --title "Database file selection..." --window-icon="$PW_GUI_ICON_PATH/port_proton.png"  --form --separator="" \ | ||||
|                 --field="DB FILE: :CB" "${ADD_CB_DBFILE}"` | ||||
|                 --field="DB FILE: :CB" "${ADD_CB_DBFILE}" 2>/dev/null` | ||||
|                 if [[ "$?" == "1" || "$?" == "252" ]] ; then exit 0 ; fi | ||||
|                 # sed -i 's/ PP_/ PW_/g' "${PORTWINE_DB_FILE}" | ||||
|             elif [[ `echo "$PW_FIND_DB_FILE" | wc -l` -eq 1 ]] ; then | ||||
|                 PORTWINE_DB_FILE="${PW_FIND_DB_FILE}" | ||||
|                 # sed -i 's/ PP_/ PW_/g' "${PORTWINE_DB_FILE}" | ||||
|             fi | ||||
|             IFS="$orig_IFS" | ||||
|             if [[ -f "${PW_FIND_DB_FILE}" ]] && [[ -z `grep "^export PW_DISABLED_CREATE_DB=1" "${PW_FIND_DB_FILE}"` ]] ; then | ||||
| @@ -818,8 +841,19 @@ pw_init_db () { | ||||
|             init_wine_ver && | ||||
|             print_info "Use ${PORTWINE_DB_FILE} db file." | ||||
|         fi | ||||
|         if [ -z "$PATH_TO_GAME" ] ; then | ||||
|             export PATH_TO_GAME="$( cd "$( dirname "${portwine_exe}" )" >/dev/null 2>&1 && pwd )" | ||||
|         if [ -z "${PATH_TO_GAME}" ] ; then | ||||
|             export PATH_TO_GAME="$( cd "$( dirname "${portwine_exe}" )" >/dev/null 2>&1 && pwd )"         | ||||
|         fi | ||||
|  | ||||
|         if [[ "${PW_WINE_CPU_TOPOLOGY}" == "disabled" ]] && [[ -n "${WINE_CPU_TOPOLOGY}" ]] ; then | ||||
|             export PW_WINE_CPU_TOPOLOGY="${WINE_CPU_TOPOLOGY}" | ||||
|         fi | ||||
|         if ls "${PATH_TO_GAME}"/*_Data/Resources/ 2>/dev/null | grep "unity" &>/dev/null && \ | ||||
|            [[ "${PW_WINE_CPU_TOPOLOGY}" == "disabled" ]] && \ | ||||
|            [[ $(grep -c "^processor" /proc/cpuinfo) -gt "8" ]] | ||||
|         then | ||||
|                 export PW_WINE_CPU_TOPOLOGY="8:0,1,2,3,4,5,6,7" | ||||
|                 print_info "Automatic added fix for unity games: WINE_CPU_TOPOLOGY=8:0,1,2,3,4,5,6,7" | ||||
|         fi | ||||
|     fi | ||||
|     return 0 | ||||
| @@ -832,8 +866,22 @@ pw_port_update () { | ||||
|     fi | ||||
|     export scripts_install_ver=`cat "${PORT_WINE_TMP_PATH}/scripts_ver" | head -n 1` | ||||
|     print_info "Check update..." | ||||
|     curl -s --list-only https://raw.githubusercontent.com/Castro-Fidel/PortWINE/master/data_from_portwine/scripts/var > "${PORT_WINE_TMP_PATH}/curent_var_ver" | ||||
|     [[ $? == 0 ]] && print_info "OK!" || print_info "ERROR!" | ||||
|     if curl -s --list-only --connect-timeout 3 "https://raw.githubusercontent.com/Castro-Fidel/PortWINE/master/data_from_portwine/scripts/var" > "${PORT_WINE_TMP_PATH}/curent_var_ver" | ||||
|     then | ||||
|         URL_FOR_CHANGELOG="https://raw.githubusercontent.com/Castro-Fidel/PortWINE/master/data_from_portwine" | ||||
|         URL_TO_PW_MASTER="https://github.com/Castro-Fidel/PortWINE/archive/refs/heads/master.tar.gz" | ||||
|         print_info "OK." | ||||
|     else | ||||
|         if curl -s --list-only --connect-timeout 3 "https://gitlab.eterfund.ru/Castro-Fidel/PortWINE/raw/master/data_from_portwine/scripts/var" > "${PORT_WINE_TMP_PATH}/curent_var_ver" | ||||
|         then | ||||
|             URL_FOR_CHANGELOG="https://gitlab.eterfund.ru/Castro-Fidel/PortWINE/raw/master/data_from_portwine" | ||||
|             URL_TO_PW_MASTER="https://gitlab.eterfund.ru/Castro-Fidel/PortWINE/-/archive/master/PortWINE-master.tar.gz" | ||||
|             print_info "OK." | ||||
|         else | ||||
|             print_error "Unable to determine the version on the server. Skip it..." | ||||
|             return 1 | ||||
|         fi | ||||
|     fi | ||||
|     [[ ! -f "${PORT_WINE_TMP_PATH}/scripts_update_notifier" ]] && echo "1" > "${PORT_WINE_TMP_PATH}/scripts_update_notifier" | ||||
|     read "scripts_update_not" < "${PORT_WINE_TMP_PATH}/scripts_update_notifier" | ||||
|     if [[ "${scripts_update_not}" == "1" ]] ; then | ||||
| @@ -841,14 +889,14 @@ pw_port_update () { | ||||
|         print_info "Scripts version in github = ${scripts_current_ver}" | ||||
|         print_info "Scripts version local = ${scripts_install_ver}" | ||||
|         if [[ ! -z "${scripts_current_ver}" ]] &&  [[ "${scripts_current_ver}" -gt "${scripts_install_ver}" ]] ; then | ||||
|             if [[ -f "${PW_WINELIB}/portable/bin/yad_new" ]] ; then | ||||
|                 export pw_yad_new="${PW_WINELIB}/portable/bin/yad_new" | ||||
|                 curl -s --list-only "https://raw.githubusercontent.com/Castro-Fidel/PortWINE/master/data_from_portwine/${PW_CHANGELOG_FILE}" | tee "${PORT_WINE_TMP_PATH}/curent_var_ver" | sszen | ||||
|             if [[ -f "${PW_WINELIB}/portable/bin/yad_v12_3" ]] ; then | ||||
|                 export pw_yad_v12_3="${PW_WINELIB}/portable/bin/yad_v12_3" | ||||
|                 curl -s --list-only "${URL_FOR_CHANGELOG}/${PW_CHANGELOG_FILE}" | tee "${PORT_WINE_TMP_PATH}/curent_var_ver" | sszen | ||||
|                 CHANGLOG_NEWS=`cat "${PORT_WINE_TMP_PATH}/curent_var_ver" | sed "/Scripts version ${scripts_install_ver}/,$ d" | sed '1,/---/ d' ` | ||||
|                 xcsd=`"${pw_yad_new}" --title "${scripts_upd2} v.${scripts_current_ver}" --window-icon="$PW_GUI_ICON_PATH/port_proton.png" \ | ||||
|                 --borders=5 --form --separator='%%%' --width=1000 --height=350 --center \ | ||||
|                 xcsd=`"${pw_yad_v12_3}" --title "${scripts_upd2} v.${scripts_current_ver}" --window-icon="$PW_GUI_ICON_PATH/port_proton.png" \ | ||||
|                 --borders=3 --form --separator='%%%' --width=1200 --height=600 \ | ||||
|                 --field=":TXT" "${CHANGLOG_NEWS}" \ | ||||
|                 --field="   ${scripts_upd3} :CB" "${scripts_upd4}!${scripts_upd5}!${scripts_upd6}" ` | ||||
|                 --field="   ${scripts_upd3} :CB" "${scripts_upd4}!${scripts_upd5}!${scripts_upd6}" 2>/dev/null` | ||||
|                 YAD_STATUS="$?" | ||||
|                 if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then exit 0 ; fi | ||||
|                 xcsd=`echo "${xcsd}" | awk -F'%%%' '{print $2}'` | ||||
| @@ -863,7 +911,7 @@ pw_port_update () { | ||||
|                     echo "######################################################" | ||||
|                     print_info "Update scripts..." | ||||
|                     try_remove_file "${PORT_WINE_TMP_PATH}/PortWINE-master.tar.gz" | ||||
|                     if try_download "github.com/Castro-Fidel/PortWINE/archive/refs/heads/master.tar.gz" "${PORT_WINE_TMP_PATH}/PortWINE-master.tar.gz" ; then | ||||
|                     if try_download "${URL_TO_PW_MASTER}" "${PORT_WINE_TMP_PATH}/PortWINE-master.tar.gz" ; then | ||||
|                         if unpack_tar_gz "${PORT_WINE_TMP_PATH}/PortWINE-master.tar.gz" "${PORT_WINE_TMP_PATH}" | ||||
|                         then | ||||
|                             create_new_dir "${PORT_WINE_TMP_PATH}/scripts_backup" | ||||
| @@ -874,7 +922,7 @@ pw_port_update () { | ||||
|                             try_remove_file "${PORT_WINE_TMP_PATH}/PortWINE-master.tar.gz" | ||||
|                             try_remove_dir "${PORT_WINE_TMP_PATH}/PortWINE-master/" | ||||
|                             echo "${scripts_current_ver}" > "${PORT_WINE_TMP_PATH}/scripts_ver" | ||||
|                             if [[ -z "${pw_yad_new}" ]] ; then | ||||
|                             if [[ -z "${pw_yad_v12_3}" ]] ; then | ||||
|                                 zenity --title="Changelog" --text-info --width=1200 --height=550 \ | ||||
|                                 --filename="${PORT_WINE_PATH}/data/${PW_CHANGELOG_FILE}" | ||||
|                             fi  | ||||
| @@ -882,7 +930,7 @@ pw_port_update () { | ||||
|                             exit 0 | ||||
|                         fi | ||||
|                     else | ||||
|                         zenity_error_download && pw_scripts_update | ||||
|                         zenity_error_download && pw_port_update | ||||
|                     fi ;; | ||||
|                 "${scripts_upd5}") | ||||
|                     echo " " ;; | ||||
| @@ -918,9 +966,9 @@ update_winetricks () { | ||||
| } | ||||
|  | ||||
| edit_db_from_gui () { | ||||
|     echo "edit_db_from_gui PORTWINE_DB_FILE=$PORTWINE_DB_FILE" | ||||
|     print_info "edit_db_from_gui PORTWINE_DB_FILE=$PORTWINE_DB_FILE" | ||||
|     for mod_db in $@ ; do | ||||
|         echo "${mod_db}=${!mod_db}" | ||||
|         print_info "${mod_db}=${!mod_db}" | ||||
|         if [ -z "`cat "${PORTWINE_DB_FILE}" | grep "export ${mod_db}="`" ] ; then | ||||
|             echo "export ${mod_db}=\"${!mod_db}\"" >> "${PORTWINE_DB_FILE}" | ||||
|         elif [ "`cat "${PORTWINE_DB_FILE}" | grep "export ${mod_db}=" | grep -v "#"`" ] ; then | ||||
| @@ -942,7 +990,10 @@ pw_create_gui_png () { | ||||
|     fi | ||||
|     PW_RESIZE_TO=128 | ||||
|     try_remove_file "${PORT_WINE_PATH}/data/img/setup.png" | ||||
|     if [[ -x "`which wrestool 2>/dev/null`" ]] && [[ ! -f "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" ]] ; then | ||||
|     try_remove_file "${PORT_WINE_PATH}/data/img/Setup.png" | ||||
|     try_remove_file "${PORT_WINE_PATH}/data/img/launcher.png" | ||||
|     try_remove_file "${PORT_WINE_PATH}/data/img/Launcher.png" | ||||
|     if [[ -x "`command -v wrestool 2>/dev/null`" ]] && [[ ! -f "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" ]] ; then | ||||
|         try_remove_dir "${PORT_WINE_TMP_PATH}/tmp_img" | ||||
|         create_new_dir "${PORT_WINE_TMP_PATH}/tmp_img" | ||||
|         wrestool -x --output="${PORT_WINE_TMP_PATH}/tmp_img/" -t14 "${portwine_exe}" | ||||
| @@ -957,7 +1008,7 @@ pw_create_gui_png () { | ||||
|         cp -f "${PORT_WINE_TMP_PATH}/tmp_img/${PORTPROTON_NAME}.png" "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" | ||||
|     fi | ||||
|     if [[ -z "`file "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" | grep "${PW_RESIZE_TO} x ${PW_RESIZE_TO}"`" ]] && \ | ||||
|        [[ -x "`which "convert" 2>/dev/null`" ]] && [[ -f "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" ]] ; then | ||||
|        [[ -x "`command -v "convert" 2>/dev/null`" ]] && [[ -f "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" ]] ; then | ||||
|         convert "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" -resize ${PW_RESIZE_TO}x${PW_RESIZE_TO} "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png"  | ||||
|     fi | ||||
|     if [[ -z "${PW_ICON_FOR_YAD}" ]] ; then | ||||
| @@ -989,15 +1040,15 @@ pw_find_exe () { | ||||
|     done < "${PORT_WINE_TMP_PATH}/tmp_yad_find_exe" | ||||
|  | ||||
|     OrigIFS="$IFS" && IFS=% | ||||
|     PW_SET_FIND_EXE="$("${pw_yad_new}" --height="300" --width="1000" --center --list \ | ||||
|     PW_SET_FIND_EXE="$("${pw_yad_v12_3}" --height="300" --width="1000" --list \ | ||||
|     --text-align=center --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "Create shortcut for..." \ | ||||
|     --text="\n${loc_gui_create_shortcut_for_exe}" --column="path to .exe file:" ${FIND_TO_GUI})" | ||||
|     --text="\n${loc_gui_create_shortcut_for_exe}" --column="path to .exe file:" ${FIND_TO_GUI} 2>/dev/null)" | ||||
|     YAD_STATUS="$?" | ||||
|     print_var YAD_STATUS | ||||
|     if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then | ||||
|         if [[ -z "${PW_SET_FIND_EXE}" ]] ; then | ||||
|             /usr/bin/env bash -c ${pw_full_command_line[*]} & | ||||
|             echo "Restarting..." | ||||
|             print_info "Restarting..." | ||||
|         fi | ||||
|         exit 0 | ||||
|     fi | ||||
|   | ||||
| @@ -1,15 +1,28 @@ | ||||
| #!/usr/bin/env bash | ||||
| # Author: linux-gaming.ru | ||||
| # Helped in translation: ConTI1NuEsZZZ and Boria138  | ||||
|  | ||||
| unset update_loc | ||||
| if [[ -f "${PORT_WINE_TMP_PATH}/${portname}_loc" ]] ; then | ||||
| 	read "update_loc" < "${PORT_WINE_TMP_PATH}/${portname}_loc" | ||||
| 	export update_loc=${update_loc} | ||||
| fi | ||||
|  | ||||
| if [ "${update_loc}" = "RUS" ] | ||||
| then | ||||
| 	export loc_gui_pw_reinstall_pp="Переустановить PORTPROTON" | ||||
|     export loc_gui_rm_pp="Удалить PORTPROTON" | ||||
| if [[ "${update_loc}" == "RUS" || "${update_loc}" == "ENG" ]] && [[ -f "${PORT_WINE_TMP_PATH}/${portname}_loc" ]] ; then | ||||
| 	echo "" | ||||
| else | ||||
| 	SET_LANG=`zenity --title  "LAUNGUAGE" --text "Select the language" --list --radiolist \ | ||||
| 	--column="Set:" --column "Choose language:" TRUE "RUS" FALSE "ENG" ` | ||||
| 	echo "${SET_LANG}" > "${PORT_WINE_TMP_PATH}/${portname}_loc" | ||||
| 	if [[ ! -z "${SET_LANG}" ]] | ||||
| 	then export update_loc=${SET_LANG} | ||||
| 	else exit 1 | ||||
| 	fi | ||||
| fi | ||||
|  | ||||
| if [[ "${update_loc}" == "RUS" ]] ; then | ||||
| 	export loc_gui_pw_reinstall_pp="Переустановить ${portname}" | ||||
|     export loc_gui_rm_pp="Удалить ${portname}" | ||||
|     export loc_gui_upd_pp="Проверить обновления" | ||||
|     export loc_gui_changelog="История изменений" | ||||
| 	export loc_gui_change_loc="Сменить язык интерфейса" | ||||
| @@ -32,12 +45,14 @@ then | ||||
| 	export PW_SELECTION_DB_LOC="Найдено более одного DB файла для запускаемого приложения.\nВыберите необходимый, или перед следующим запуском удалите лишний DB файл.\n" | ||||
|  | ||||
| 	export inst_set="Выбор" | ||||
| 	export inst_set_top="Установка PortWINE" | ||||
| 	export ss_done="Ярлык создан в каталоге PortProton.\nДобавить его в МЕНЮ и на Рабочий стол?" | ||||
| 	export inst_set_top="Установка ${portname}" | ||||
| 	export sc_info="Ярлык будет создан в каталоге ${portname}." | ||||
| 	export sc_name="Название" | ||||
| 	export sc_menu_desktop="Добавить ярлык в МЕНЮ -> Игры и на Рабочий стол" | ||||
|  | ||||
| 	export inst_succ="Установка завершена успешно!" | ||||
|  | ||||
| 	export port_upd1="Обновление PortWINE" | ||||
| 	export port_upd1="Обновление ${portname}" | ||||
| 	export port_upd2="На сайте linux-gaming.ru вышло обновление для ${portname}\n" | ||||
| 	export port_upd3="Действие:" | ||||
| 	export port_upd4="Перейти на сайт" | ||||
| @@ -51,18 +66,18 @@ then | ||||
| 	export scripts_upd5="Напомнить позже" | ||||
| 	export scripts_upd6="Больше не напоминать" | ||||
|  | ||||
| 	export port_clear_pfx="Вы действительно хотите очистить префикс PortProton?" | ||||
| 	export port_clear_pfx="Вы действительно хотите очистить префикс ${portname}?" | ||||
|  | ||||
| 	export port_del1="Удаление $portname" | ||||
| 	export port_del2="Вы действительно хотите полностью удалить PortProton?" | ||||
| 	export port_del2="Вы действительно хотите полностью удалить ${portname}?" | ||||
|  | ||||
| 	export port_reinstall="Вы действительно хотите переустановить PortProton?\nДля этого будет необходимо интернет соединение." | ||||
| 	export port_reinstall="Вы действительно хотите переустановить ${portname}?\nДля этого будет необходимо интернет соединение." | ||||
|  | ||||
| 	export port_deb1="PortWINE был запущен в режиме создания ${portname}.log и он успешно сохранен в корне каталога порта" | ||||
| 	export port_deb2="Для диагностики проблемы, скопируйте ВЕСЬ лог в соответствующий канал у нас на сервере дискорда: https://discord.gg/FTaheP99wE" | ||||
|  | ||||
| 	export port_start1="Запуск PortWINE" | ||||
| 	export port_start2="В каком режиме вы хотите запустить PortWINE?" | ||||
| 	export port_start1="Запуск ${portname}" | ||||
| 	export port_start2="В каком режиме вы хотите запустить ${portname}?" | ||||
| 	export port_start3="Режим:" | ||||
| 	export port_start4="Обычный" | ||||
| 	export port_start5="Отдельной X-сессии" | ||||
| @@ -88,8 +103,7 @@ then | ||||
| 	export ENABLE_VKBASALT_INFO='Включить vkBasalt по умолчанию для улучшение графики в играх работающих под Vulkan. (Горячая клавиша HOME отключает vkbasalt)' | ||||
| 	export PW_NO_ESYNC_INFO='Не использовать примитивы внутрипроцессной синхронизации на основе eventfd. (Рекомендуется не изменять значение)' | ||||
| 	export PW_NO_FSYNC_INFO='Не использовать примитивы внутрипроцессной синхронизации на основе фьютексов. (Автоматически отключается в системах без FUTEX_WAIT_MULTIPLE поддержки) (Рекомендуется не изменять значение)' | ||||
| 	export PW_USE_DXR10_INFO='Включить поддержку Ray Tracing v.1.0' | ||||
| 	export PW_USE_DXR11_INFO='Включить поддержку Ray Tracing v.1.1 (бета)' | ||||
| 	export PW_USE_RAY_TRACING_INFO='Включить поддержку vkd3d - Ray Tracing' | ||||
| 	export PW_FIX_VIDEO_IN_GAME_INFO='Требуется для воспроизведения видео в некоторых играх, чтобы оно не было искажено (обычно окрашено в розовый цвет)' | ||||
| 	export PW_VULKAN_NO_ASYNC_INFO='Выключить асинхронные вызовы для режимов VULKAN и DXVK' | ||||
| 	export PW_USE_NVAPI_AND_DLSS_INFO='Включить DLSS на поддерживаемых видеокартах NVIDIA' | ||||
| @@ -118,37 +132,74 @@ then | ||||
| 	export PW_WINE_FULLSCREEN_FSR_INFO='Работает во время использования любой версии ProtonGE в полноэкранном режиме при разрешении ниже стандартного для экрана' | ||||
| 	export PW_USE_FAKE_DLSS_INFO='Включить транслятор DLSS в FSR 2 в играх DirectX 12' | ||||
| 	export PW_MANGOHUD_x32_INFO='Включить MANGOHUD для 32 битных приложений и игр' | ||||
|     export PW_USE_EAC_AND_BE_INFO='Включить Easy Anti-Cheat and BattlEye Anti-Cheat (требуется если игра использует какой-то из этих античитов)' | ||||
|  | ||||
| 	export PW_3DFX_INFO='Имитация старого графического ускорителя 3dfx (добавляет горизонтальные полосы)' | ||||
| 	export PW_AdaptiveSharpen_INFO='Увеличение резкости, можно использовать совместо с CAS' | ||||
| 	export PW_AdaptiveSharpen_INFO='Увеличение резкости, можно использовать совместно с CAS' | ||||
| 	export PW_Bloom_INFO='Добавляет свечения от ярких источников света в игре' | ||||
| 	export PW_Border_INFO='Обрезка изображения сверху и снизу (как в кино =)' | ||||
| 	export PW_Cartoon_INFO='Сильное увеличение резкости краев тексур' | ||||
| 	export PW_Cartoon_INFO='Сильное увеличение резкости краев текстур' | ||||
| 	export PW_ChromaticAberration_INFO='Добавляет хроматические аберрации к изображению' | ||||
| 	export PW_Clarity_INFO='Увеличение резкости текстур с небольшими модификациями контраста изображения (похож по эффекту на CAS)' | ||||
| 	export PW_ColorMatrix_INFO='Добавление холодных цветов' | ||||
| 	export PW_Colourfulness_INFO='Увеличение насыщености цветов' | ||||
| 	export PW_Colourfulness_INFO='Увеличение насыщенности цветов' | ||||
| 	export PW_FakeHDR_INFO='Расширение динамического диапазона цветов' | ||||
| 	export PW_FilmGrain2_INFO='Добавление эффекта зерна кинопленки' | ||||
| 	export PW_Curves_INFO='Увеличение контраста изображения' | ||||
| 	export PW_Curves_INFO='Увеличивает контрастность изображения, при этом не трогая яркие и тёмные участки, чтобы не пропала детализация в тенях и небе' | ||||
| 	export PW_Denoise_INFO='Уменьшение шумов за счет смазывания изображения' | ||||
| 	export PW_Emphasize_INFO='Уменьшение рязрядности цветопередачи' | ||||
| 	export PW_Emphasize_INFO='Уменьшение разрядности цветопередачи' | ||||
| 	export PW_FakeMotionBlur_INFO='Сильное размытие объектов в движении' | ||||
| 	export PW_FilmicAnamorphSharpen_INFO='Увеличение резкости (рекомендую для мультяшных игр)' | ||||
| 	export PW_FilmicPass_INFO='Добавление холодных цветов' | ||||
| 	export PW_SMAA_INFO='Альтернативный вариант сглаживания (меньший эффект, но с меньшим потреблением ресурсов GPU, относительно стандартного SMAA)' | ||||
| 	export PW_GaussianBlur_INFO='Небольшой эффект размытия ярких обьектов (например пламя)' | ||||
|  | ||||
| 	export PW_WAYLAND_INFO="Внимание! Вы запускаете PortProton в сессии Wayland, некоторые функции могут быть недоступны!\nРекомендуется перезапустить сессию в X11!" | ||||
| 	export PW_GaussianBlur_INFO='Небольшой эффект размытия ярких объектов (например пламя)' | ||||
|     export PW_Glitch_INFO='Эффект глючной картинки' | ||||
|     export PW_HighPassSharpen_INFO='Повышения резкости с использованием высокочастотных частот' | ||||
|     export PW_HQ4X_INFO='Сглаживание близлежащих пикселей с дорисовкой недостающих частей (в обычных играх картинка размывается)' | ||||
|     export PW_HSLShift_INFO='Усовершенствованный сдвиг HSL (для каждого оттенка)' | ||||
|     export PW_Layer_INFO='Наложение изображения на игру (изображение лежит в папке ~/PortWINE/PortProton/data/tmp/libs_v43/pressure-vessel/reshade/textures)' | ||||
|     export PW_Levels_INFO='Увеличивает контрастность, но некоторые детали в тенях или бликах могут быть потеряны' | ||||
|     export PW_LevelsPlus_INFO='Тоже что и Levels, но с меньшей потерей деталей' | ||||
|     export PW_LiftGammaGain_INFO='Коррекция гаммы по отдельным цветовым каналам: красному, зелёному и синему' | ||||
|     export PW_LightDoF_INFO='Увеличивает глубину резкости (сильно влияет на FPS)' | ||||
|     export PW_LumaSharpen_INFO='Повышает резкость изображения для улучшения деталей' | ||||
|     export PW_LUT_INFO='Цветокорекция изображения' | ||||
|     export PW_MagicBloom_INFO='Тоже самое что Bloom, но более естественный' | ||||
|     export PW_Monochrome_INFO='Преобразует изображение в черно-белое' | ||||
|     export PW_MultiLUT_INFO='Расширенная версия LUT (предустановлен лут Hollywood)' | ||||
|     export PW_MXAO_INFO='Алгоритм SSAO (сильно влияет на FPS)' | ||||
|     export PW_NightVision_INFO='Эффект ночного зрения' | ||||
|     export PW_Nostalgia_INFO='Делает картинку похожей на старые фотографии' | ||||
|     export PW_PerfectPerspective_INFO='Эффект рыбьего глаза (подходит для VR)' | ||||
|     export PW_PPFX_Godrays_INFO='Объёмное рассеяние света' | ||||
|     export PW_Prism_INFO='Эффект призматической линзы' | ||||
|     export PW_ReflectiveBumpMapping_INFO='Создаёт иллюзию глубины текстур' | ||||
|     export PW_Sepia_INFO='Добавляет эффект сепии со старых фотографий' | ||||
|     export PW_Splitscreen_INFO='Разделяет изображение на необработанное и обработанный вывод для сравнения' | ||||
|     export PW_SurfaceBlur_INFO='Снижение детализации объектов без размытия контрастных контуров' | ||||
|     export PW_Technicolor_INFO='Делает картинку похожей на фильмы 1930 годов' | ||||
|     export PW_Technicolor2_INFO='Обновлённая версия Technicolor, даёт иную картинку, агрессивнее меняя цвета' | ||||
|     export PW_TiltShift_INFO='Размытие по краям экрана для создания эффекта миниатюры' | ||||
|     export PW_Tonemap_INFO='Изменяет насыщенность картинки' | ||||
|     export PW_TriDither_INFO='Уменьшает количество шумов' | ||||
|     export PW_UIDetect_INFO='Автоматически переключает эффекты в зависимости от видимости UI' | ||||
|     export PW_Vibrance_INFO='Насыщает блеклые цвета, не трогая яркие' | ||||
|     export PW_Vignette_INFO='Добавляет к изображению виньетку' | ||||
|     export PW_AspectRatio_INFO='Эффект для настройки соотношения сторон (для игр которые не поддерживают широкоформатные мониторы)' | ||||
|     export PW_UIMask_INFO='Часть общего шейдера ReShade . Он использует маску с градиентами от черного к белому, чтобы определить, где будут применены эффекты' | ||||
|     export PW_StageDepth_INFO='Позволяет добавлять новые элементы в 3d-пространство внутри игры и применять пользовательские текстуры' | ||||
|     export PW_PPFX_Bloom_INFO='Добавляет Bloom эффект' | ||||
|     | ||||
| 	export PW_WAYLAND_INFO="Внимание! Вы запускаете ${portname} в сессии Wayland, некоторые функции могут быть недоступны!\nРекомендуется перезапустить сессию в X11!" | ||||
|  | ||||
| 	export loc_find_d3dadapter9_error="не найден в системе.\nУстановите недостающий пакет: </Sb>d3dadapter9</b>" | ||||
|  | ||||
| 	export loc_gui_create_shortcut_for_exe="Выберите .exe файл для которого необходимо создать ярлык и нажмите ОК.\n" | ||||
|  | ||||
| 	export loc_gui_error='Ошибка.' | ||||
| 	export loc_gui_error_download="Проверьте интернет соединение и\nнажмите OK для повторной попытки скачивания" | ||||
| 	export loc_gui_error_download="Проверьте интернет соединение и\nнажмите Repeat для повторной попытки скачивания" | ||||
| 	export loc_gui_settings="Пожалуйста подождите." | ||||
| 	export loc_gui_sett_info="Обновление конфигурации <b>PortProton</b>..." | ||||
| 	export loc_gui_sett_info="Обновление конфигурации <b>${portname}</b>..." | ||||
| 	export loc_gui_edit_db="Изменение файла настроек для:" | ||||
| 	export loc_gui_edit_db_help="<b>ПРИМЕЧАНИЕ:</b> Для вывода справки по каждому пункту, просто наведите курсор мыши на текст." | ||||
|  | ||||
| @@ -182,9 +233,12 @@ then | ||||
| 	export loc_gui_arg_exe="Добавить аргумент после <b>.exe</b> файла" | ||||
| 	export loc_gui_arg_exe_help="Добавление аргумента после <b>.exe</b> файла, так же как если бы вы добавили аргумент в ярлыке в системе  <b>WINDOWS </b>"  | ||||
|  | ||||
| 	export loc_gui_mango_fps="Ограничить FPS (0 - выключено)" | ||||
| 	export loc_gui_mango_fps="Ограничить FPS" | ||||
| 	export loc_gui_mango_fps_help="Включение ограничения количества кадров в секунду средстами MANGOHUD встроенного в PortProton." | ||||
|  | ||||
| 	export loc_gui_cpu_limit="Ограничить использование ядер процессора" | ||||
| 	export loc_gui_cpu_limit_help="Ограничения количества ядер процессора полезно для игр на движке Unity (Рекомендуется выставить значение равное 8)" | ||||
|  | ||||
| 	export loc_gui_check_new_wine="Проверяем новые версии WINE на GitHub" | ||||
| 	export loc_gui_check_new_wine_error="Не удается установить соединение с GitHub\nдля проверки новых версии WINE." | ||||
| 	export loc_gui_set_new_wine="Выберите версию WINE для загрузки:" | ||||
| @@ -215,77 +269,41 @@ then | ||||
| 	export loc_gui_installing_the="Устанавливаем" | ||||
| 	export loc_gui_please_wait="Пожалуйста подождите..." | ||||
|  | ||||
| elif [ "${update_loc}" = "ENG" ] | ||||
| then | ||||
| 	export loc_gui_installing_the="Installing the" | ||||
| 	export loc_gui_please_wait="Please wait..." | ||||
| elif [[ "${update_loc}" == "ENG" ]] ; then | ||||
|  | ||||
| 	export loc_gui_vulkan_stable="VULKAN (Stable version of DXVK and VKD3D)" | ||||
| 	export loc_gui_vulkan_git="VULKAN (New GIT version of DXVK and VKD3D)" | ||||
| 	export loc_gui_gallium_nine="GALLIUM_NINE (Native DX9 on MESA)" | ||||
| 	export loc_gui_open_gl="OPENGL (For video cards without VULKAN)" | ||||
|  | ||||
| 	export loc_gui_error='Error.' | ||||
| 	export loc_gui_error_download="You will need to check internet connection,\nand press OK for repeat download" | ||||
| 	export loc_gui_settings="Settings." | ||||
| 	export loc_gui_sett_info="Updating parameters..." | ||||
| 	export loc_gui_edit_db="Change settings in database file for" | ||||
| 	export loc_gui_cancel="CANCEL" | ||||
| 	export loc_gui_open_db="OPEN DB FILE" | ||||
| 	export loc_gui_save_changes="SAVE CHANGES" | ||||
| 	export loc_gui_ver_windows="SELECT VERSION OF WINDOWS" | ||||
| 	export loc_gui_aut_winetricks="AUTOINSTALL WITH WINETRICKS" | ||||
| 	export loc_gui_winedllover="WINEDLLOVERRIDES" | ||||
| 	export loc_gui_arg_exe="ADD ARGUMENTS FOR .EXE FILE" | ||||
| 	export loc_gui_mango_fps="MANGOHUD FPS LIMIT (0-disabled)" | ||||
| 	export loc_gui_check_new_wine="Check new version WINE from GitHub" | ||||
| 	export loc_gui_check_new_wine_error="Error: check wine from github." | ||||
| 	export loc_gui_set_new_wine="Select WINE for download:" | ||||
| 	export loc_gui_del_wine="Select installed WINE for delete:" | ||||
| 	export loc_gui_installed_wine="INSTALLED" | ||||
| 	export loc_gui_disabled_vkbas="DISABLE  VKBASALT" | ||||
| 	export loc_gui_no="NO" | ||||
| 	export loc_gui_yes="YES" | ||||
| 	export loc_gui_create_shortcut="CREATE SHORTCUT" | ||||
| 	export loc_gui_delete_shortcut="DELETE SHORTCUT" | ||||
| 	export loc_gui_launch="LAUNCH" | ||||
| 	export loc_gui_debug="DEBUG" | ||||
| 	export loc_gui_edit_db_start="EDIT  DB" | ||||
| 	export loc_gui_vkbasalt_start="VKBASALT" | ||||
| 	export loc_gui_db_comments="PortProton database file was found for" | ||||
|  | ||||
| 	export loc_create_shortcut_from_gui="Create shortcut..." | ||||
|  | ||||
|     export loc_gui_rm_pp="REMOVE PORTPROTON" | ||||
|     export loc_gui_upd_pp="UPDATE PORTPROTON" | ||||
| 	export loc_gui_pw_reinstall_pp="REINSTALL ${portname}" | ||||
|     export loc_gui_rm_pp="REMOVE ${portname}" | ||||
|     export loc_gui_upd_pp="UPDATE ${portname}" | ||||
|     export loc_gui_changelog="CHANGELOG" | ||||
| 	export loc_gui_change_loc="CHANGE LANGUAGE" | ||||
|     export loc_gui_edit_usc="EDIT USER.CONF" | ||||
|     export loc_gui_scripts_fb="SCRIPTS FROM BACKUP" | ||||
|     export loc_gui_credits="CREDITS" | ||||
| 	export loc_gui_pw_reinstall_pp="REINSTALL PORTPROTON" | ||||
|  | ||||
| 	export loc_tray_winefile="WINEFILE" | ||||
|     export loc_tray_winefile="WINEFILE" | ||||
| 	export loc_tray_tascmng="TASKMNR" | ||||
| 	export loc_tray_cangelog="CHANGE  LOG" | ||||
| 	export loc_tray_force_exit="FORCE  EXIT" | ||||
|  | ||||
| 	export loc_mg_autoinstall="AUTOINSTALL" | ||||
|     export loc_mg_autoinstall="AUTOINSTALL" | ||||
| 	export loc_mg_emulators="EMULATORS" | ||||
| 	export loc_mg_wine_settings="WINE SETTINGS" | ||||
| 	export loc_mg_portproton_settings="PORTPROTON SETTINGS" | ||||
| 	export loc_mg_portproton_settings="${portname} SETTINGS" | ||||
| 	export loc_mg_installed="INSTALLED" | ||||
|  | ||||
| 	export PW_CHANGELOG_FILE="changelog_eng" | ||||
|     export PW_CHANGELOG_FILE="changelog_eng" | ||||
| 	export PW_SELECTION_DB_LOC="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" | ||||
|  | ||||
| 	export inst_set="Sett..." | ||||
| 	export inst_set_top="PortWINE setting" | ||||
| 	export ss_done="The shortcut was created in the ${portname} directory.\n    Add it to MENU -> GAMES and Desktop?" | ||||
| 	export inst_set="Choices" | ||||
| 	export inst_set_top="Instaling ${portname}" | ||||
| 	export sc_info="The shortcut will be created in the ${portname} directory." | ||||
| 	export sc_name="Name" | ||||
| 	export sc_menu_desktop="Add shortcut to MENU -> GAMES and Desktop" | ||||
|  | ||||
| 	export inst_succ="The installation was successful." | ||||
|  | ||||
| 	export port_upd1="New update PortWINE" | ||||
| 	export port_upd2="On linux-gaming.ru site published an update to the ${portname}\n" | ||||
| 	export port_upd1="New update for ${portname}" | ||||
| 	export port_upd2="On linux-gaming.ru site published an update for ${portname}\n" | ||||
| 	export port_upd3="Action:" | ||||
| 	export port_upd4="Go to the website" | ||||
| 	export port_upd5="Remind me later" | ||||
| @@ -293,23 +311,23 @@ then | ||||
|  | ||||
| 	export scripts_upd1="New update for scripts" | ||||
| 	export scripts_upd2="Scripts update avialable for ${portname}" | ||||
| 	export scripts_upd3="Action :" | ||||
| 	export scripts_upd3="Action:" | ||||
| 	export scripts_upd4="Updating now" | ||||
| 	export scripts_upd5="Remind me later" | ||||
| 	export scripts_upd6="Do not remind me" | ||||
|  | ||||
| 	export port_clear_pfx="Do you want to clear prefix in PortProton?" | ||||
| 	export port_clear_pfx="Do you want to clear prefix in ${portname}?" | ||||
|  | ||||
| 	export port_del1="Remove $portname" | ||||
| 	export port_del2="Are you sure you want to delete the PortProton" | ||||
| 	 | ||||
| 	export port_reinstall="Do you really want to reinstall PortProton?\nFor this, an internet connection will be required." | ||||
| 	export port_del2="Do you really want to remove $portname?" | ||||
|  | ||||
| 	export port_deb1="PortWINE was launched in creation mode ${portname}.log and it is successfully stored in the root directory of the port" | ||||
| 	export port_reinstall="Do you really want to reinstall ${portname}?\nFor this, an internet connection will be required." | ||||
|  | ||||
| 	export port_deb1="${portname} was launched in creation mode ${portname}.log and it is successfully stored in the root directory of the port" | ||||
| 	export port_deb2="To diagnose the problem, copy ALL of the log to discord server: https://discord.gg/FTaheP99wE" | ||||
|  | ||||
| 	export port_start1="Starting the PortWINE" | ||||
| 	export port_start2="In what mode you want to start the PortWINE?" | ||||
| 	export port_start1="Starting the ${portname}" | ||||
| 	export port_start2="In what mode you want to start the ${portname}?" | ||||
| 	export port_start3="Mode:" | ||||
| 	export port_start4="Normal" | ||||
| 	export port_start5="Individual X-Session" | ||||
| @@ -317,30 +335,189 @@ then | ||||
| 	export port_start7="Run winetricks" | ||||
| 	export port_start8="DXVK" | ||||
|  | ||||
| 	export loc_gui_create_shortcut_for_exe="Choose the .exe file for which you need to create a shortcut and click OK.\n" | ||||
|  | ||||
| 	export port_debug="Please wait! After finishing the ${portname}, click STOP." | ||||
| 	 | ||||
| 	export PW_WAYLAND_INFO="Attention! You are running $portname in a Wayland session, some features may not be available!\nRestarting your session in X11 is recommended!" | ||||
|  | ||||
| 	export loc_download_other_wine="Download other wine-proton from GITHUB" | ||||
|  | ||||
| 	# Helped in translation: ConTI1NuEsZZZ | ||||
| 	export loc_create_shortcut_from_gui="Create shortcut..." | ||||
| 	export loc_create_shortcut="Create shortcut for select file..." | ||||
| 	export loc_delete_shortcut="Delete shortcut for select file..." | ||||
| 	export loc_debug="Launch with the creation of a .log file at the root ${portname}" | ||||
|     export loc_launch="Run file ..." | ||||
|     export loc_winecfg="Run winecfg to edit prefix settings ${portname}" | ||||
|     export loc_winefile="Run the file manager built into wine" | ||||
|     export loc_winecmd="Run wine command line" | ||||
|     export loc_winereg="Run Registry Prefix Editor ${portname}" | ||||
|     export loc_winetricks="Run winetricks to install additional libraries to the prefix ${portname}" | ||||
| 	export loc_winecfg="Run winecfg to edit the settings of the selected prefix" | ||||
|     export loc_winefile="Run wine file manager" | ||||
|     export loc_winecmd="Run wine cmd" | ||||
| 	export loc_winereg="Run wine regedit" | ||||
|     export loc_winetricks="Run winetricks to install additional libraries to the selected prefix" | ||||
| 	export loc_edit_db="Edit database file for" | ||||
| 	export loc_download_other_wine="Open the menu to download other versions of WINE-PROTON " | ||||
|  | ||||
| 	export loc_find_d3dadapter9_error="not found in the system.\nInstall it and try again." | ||||
| else | ||||
| 	SET_LANG=`zenity --title  "LAUNGUAGE" --text "Select the language" --list --radiolist \ | ||||
| 	--column="Set:" --column "Choose language:" TRUE "RUS" FALSE "ENG" ` | ||||
| 	echo "${SET_LANG}" > "${PORT_WINE_TMP_PATH}/${portname}_loc" | ||||
| 	exit 0 | ||||
| 	export ENABLE_VKBASALT_INFO='Enable vkBasalt by default to improve graphics in games running on Vulkan. (The HOME hotkey disables vkbasalt)' | ||||
| 	export PW_NO_ESYNC_INFO='Do not use in-process synchronization primitives based on eventfd. (It is recommended not to change the value.)' | ||||
| 	export PW_NO_FSYNC_INFO='Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems without FUTEX_WAIT_MULTIPLE support) (It is recommended not to change the value)' | ||||
| 	export PW_USE_RAY_TRACING_INFO='Enable vkd3d support - Ray Tracing' | ||||
| 	export PW_FIX_VIDEO_IN_GAME_INFO='Required for video playback in some games so that it is not distorted (usually colored pink)' | ||||
| 	export PW_VULKAN_NO_ASYNC_INFO='Disable asynchronous calls for VULKAN and DXVK modes' | ||||
| 	export PW_USE_NVAPI_AND_DLSS_INFO='Enable DLSS on supported NVIDIA graphics cards' | ||||
| 	export PW_OLD_GL_STRING_INFO='Forced use of older versions of OpenGL' | ||||
| 	export PW_HIDE_NVIDIA_GPU_INFO='Disguise all features used for NVIDIA graphics cards' | ||||
| 	export PW_FORCE_USE_VSYNC_INFO='Forced activation of vertical sync' | ||||
| 	export PW_VIRTUAL_DESKTOP_INFO='Enable the application to run in the WINE virtual desktop' | ||||
| 	export PW_WINEDBG_DISABLE_INFO='Disable all WINE debugging functions (It is recommended not to change the value)' | ||||
| 	export PW_USE_TERMINAL_INFO='Run the application in the terminal' | ||||
|     export PW_WINE_ALLOW_XIM_INFO='Use alternate mode for controller (Use only if there is a problem with the controller)' | ||||
| 	export PW_HEAP_DELAY_FREE_INFO='Include a delay in releasing some memory to bypass errors associated with using the application after the memory is released' | ||||
| 	export PW_NO_WRITE_WATCH_INFO='A very dangerous way to hack the memory write timer in ntdll. This improves the performance of some very specific games. (It is recommended not to change the value.)' | ||||
| 	export PW_GUI_DISABLED_CS_INFO='Disable the window for selecting startup modes and WINE versions' | ||||
| 	export PW_USE_GSTREAMER_INFO='Use Gstreamer to output clips in games (WMF support)' | ||||
| 	export PW_USE_RUNTIME_INFO='Use container launch mode (It is recommended not to change the value)' | ||||
| 	export PW_MANGOHUD_INFO='Using FPS and system load monitoring (Turns on and off by the key combination - right Shift + F12)' | ||||
| 	export PW_USE_GAMEMODE_INFO='Using automatic system optimization to improve performance in games (provided the gamemode package is installed on the system)' | ||||
| 	export PW_DX12_DISABLE_INFO='Forced disabling DirectX 12' | ||||
| 	export PW_USE_WINE_DXGI_INFO='Forced use of built-in DXGI library (in rare cases it solves problems with DX12 games)' | ||||
| 	export PW_MANGOHUD_USER_CONF_INFO='Forced use of MANGOHUD system settings (GOverlay, etc.)' | ||||
| 	export PW_USE_D3D_EXTRAS_INFO='Enable forced use of third-party DirectX libraries' | ||||
| 	export PW_PRIME_RENDER_OFFLOAD_INFO='Enable NVIDIA discrete graphics card for notebooks with hybrid graphics (if supported by the installed driver in the OS)' | ||||
| 	export PW_USE_WINDOWS_7_INFO='Change the version of WINDOWS 10 to WINDOWS 7 in the prefix' | ||||
| 	export PW_USE_AMDVLK_DRIVER_INFO='Use AMDVLK driver instead of RADV on AMD graphics cards' | ||||
| 	export PW_USE_SHADER_CACHE_INFO='Use WINE shader caching (disable only if there are microfreezes in the game)' | ||||
| 	export PW_WINE_FULLSCREEN_FSR_INFO='Works while using any version of ProtonGE in full screen mode at a resolution below the standard screen' | ||||
| 	export PW_USE_FAKE_DLSS_INFO='Enable DLSS translator in FSR 2 in DirectX 12 games' | ||||
| 	export PW_MANGOHUD_x32_INFO='Enable MANGOHUD for 32 bit applications and games' | ||||
| 	export PW_USE_EAC_AND_BE_INFO='Enable Easy Anti-Cheat and BattlEye Anti-Cheat runtimes (required if game used this anti-cheats)' | ||||
|  | ||||
|     export PW_3DFX_INFO='Simulation of an old 3dfx graphics accelerator (adds horizontal stripes)' | ||||
|    	export PW_AdaptiveSharpen_INFO='Sharpness increase, can be used with CAS' | ||||
|    	export PW_Bloom_INFO='Adds glow from bright light sources in the game' | ||||
|    	export PW_Border_INFO='Cropping the image from the top and bottom (like in a movie =)' | ||||
|    	export PW_Cartoon_INFO='Strong sharpening of texture edges' | ||||
|    	export PW_ChromaticAberration_INFO='Adds chromatic aberration to an image' | ||||
|    	export PW_Clarity_INFO='Sharpening textures with slight modifications of image contrast (similar in effect to CAS)' | ||||
|    	export PW_ColorMatrix_INFO='Adding cool colors' | ||||
|    	export PW_Colourfulness_INFO='Increasing color saturationIncreasing color saturation' | ||||
|    	export PW_FakeHDR_INFO='Add fake HDR' | ||||
|    	export PW_FilmGrain2_INFO='Adding the film grain effect' | ||||
|    	export PW_Curves_INFO='Increases the contrast of the image without affecting the bright and dark areas, so that the detail in shadows and sky is not lost' | ||||
|    	export PW_Denoise_INFO='Reducing noise by blurring the image' | ||||
|    	export PW_Emphasize_INFO='Reducing the bit depth of color' | ||||
|    	export PW_FakeMotionBlur_INFO='Strong blurring of objects in motion' | ||||
|    	export PW_FilmicAnamorphSharpen_INFO='Sharpening (recommended for cartoon games)' | ||||
|    	export PW_FilmicPass_INFO='Adding cold colors' | ||||
|    	export PW_SMAA_INFO='Alternative antialiasing option (less effect, but with less consumption of GPU resources, relative to the standard SMAA)' | ||||
|    	export PW_GaussianBlur_INFO='Slight blur effect on bright objects (such as flames)' | ||||
|     export PW_Glitch_INFO='Glitch effect' | ||||
|     export PW_HighPassSharpen_INFO='Another method of sharpening using highpass frequencies' | ||||
|     export PW_HQ4X_INFO='Smoothing of nearby pixels with the drawing of missing parts (in normal games the picture is blurred)' | ||||
|     export PW_HSLShift_INFO='Advanced HSL shift (for each shade)' | ||||
|     export PW_Layer_INFO='Image overlay on the game (the image is in the ~/PortWINE/PortProton/data/tmp/libs_v43/pressure-vessel/reshade/textures folder)' | ||||
|     export PW_Levels_INFO='Increases contrast, but some detail in shadows or highlights may be lost' | ||||
|     export PW_LevelsPlus_INFO='Same as Levels, but with less loss of detail' | ||||
|     export PW_LiftGammaGain_INFO='Gamma correction by individual color channels: red, green and blue' | ||||
|     export PW_LightDoF_INFO='Increases depth of field (greatly affects FPS)' | ||||
|     export PW_LumaSharpen_INFO='Enhances image sharpness for improved detail' | ||||
|     export PW_LUT_INFO='Image color correction' | ||||
|     export PW_MagicBloom_INFO='Same as Bloom, but more natural' | ||||
|     export PW_Monochrome_INFO='Converts the image into monochrome' | ||||
|     export PW_MultiLUT_INFO='Extended version of the LUT (Hollywood loot is pre-installed)' | ||||
|     export PW_MXAO_INFO='SSAO algorithm (Greatly affects FPS)' | ||||
|     export PW_NightVision_INFO='Night vision effect' | ||||
|     export PW_Nostalgia_INFO='Makes the picture look like old photos' | ||||
|     export PW_PerfectPerspective_INFO='Fisheye effect (suitable for VR)' | ||||
|     export PW_PPFX_Godrays_INFO='Add God rays (also called 3D light rays) effect' | ||||
|     export PW_Prism_INFO='The prismatic lens effect' | ||||
|     export PW_ReflectiveBumpMapping_INFO='Creates the illusion of depth in textures' | ||||
|     export PW_Sepia_INFO='Adds a sepia effect like in old photos' | ||||
|     export PW_Splitscreen_INFO='Splits the image into raw and processed output for comparison' | ||||
|     export PW_SurfaceBlur_INFO='Reducing object detail without blurring contrast contours' | ||||
|     export PW_Technicolor_INFO='Makes the picture look like films from the 1930s' | ||||
|     export PW_Technicolor2_INFO='The updated version of Technicolor, gives a different picture by changing colors more aggressively' | ||||
|     export PW_TiltShift_INFO='Blur on the edges of the screen to create a Tilt Shift effect' | ||||
|     export PW_Tonemap_INFO='Changes the saturation of the picture' | ||||
|     export PW_TriDither_INFO='Reduces the amount of noise' | ||||
|     export PW_UIDetect_INFO='Automatically switches effects depending on the visibility of the UI' | ||||
|     export PW_Vibrance_INFO='Saturates faded colors without touching the bright ones' | ||||
|     export PW_Vignette_INFO='Adds a vignette to the image' | ||||
|     export PW_AspectRatio_INFO='An effect for adjusting the aspect ratio (for games that do not support widescreen monitors)' | ||||
|     export PW_UIMask_INFO='Part of the overall ReShade shader . It uses a mask with gradients from black to white to determine where the effects will be applied' | ||||
|     export PW_StageDepth_INFO='Allows you to add new elements to the 3d space inside the game and apply custom textures' | ||||
|     export PW_PPFX_Bloom_INFO='Adds a Bloom effect' | ||||
|         | ||||
| 	export PW_WAYLAND_INFO="Attention! You are running $portname in a Wayland session, some features may not be available!\nRestarting your session in X11 is recommended!" | ||||
|  | ||||
| 	export loc_find_d3dadapter9_error="Not found in the system.\nInstall the missing package: </Sb>d3dadapter9</b>" | ||||
|  | ||||
| 	export loc_gui_create_shortcut_for_exe="Choose the .exe file for which you need to create a shortcut and click OK.\n" | ||||
|  | ||||
| 	export loc_gui_error='Error.' | ||||
| 	export loc_gui_error_download="You will need to check internet connection,and\npress Repeat for repeat download" | ||||
| 	export loc_gui_settings="Please wait." | ||||
| 	export loc_gui_sett_info="Updating configuration for <b>${portname}</b>..." | ||||
| 	export loc_gui_edit_db="Change settings in database file for" | ||||
| 	export loc_gui_edit_db_help="<b>NOTE:</b> To display help for each item, simply hover your mouse over the text" | ||||
|  | ||||
| 	export loc_gui_cancel="CANCEL THE CHANGES" | ||||
| 	export loc_gui_cancel_help="Cancel the current changes and return to the previous menu." | ||||
|  | ||||
| 	export loc_gui_open_db="OPEN THE SETTINGS FILE" | ||||
| 	export loc_gui_open_db_help="Open the <b>.ppdb</b> settings file in a system text editor to view and change variables manually." | ||||
|  | ||||
| 	export loc_gui_save_changes="SAVE CHANGES" | ||||
| 	export loc_gui_save_changes_help="Save the current changes, and go to the previous menu."	 | ||||
|  | ||||
| 	export loc_gui_ver_windows="Change the version of <b>WINDOWS</b> emulation" | ||||
| 	export loc_gui_ver_windows_help="Changing the <b>WINDOWS</b> emulation version may be required to run older games. <b>WINDOWS</b> versions below 10 do not support new games with DirectX 12" | ||||
|  | ||||
|  | ||||
| 	export loc_gui_aut_winetricks="AUTOINSTALL WITH <b>WINETRICKS</b>" | ||||
| 	export loc_gui_aut_winetricks_help="Automatically install with <b>WINETRICKS</b> additional libraries required to run the game/program. List of libraries separated by spaces" | ||||
|  | ||||
| 	export loc_gui_winedllover="Forced to use/disable libraries" | ||||
| 	export loc_gui_winedllover_help="Forced to use/disable the library only for the given application. (There are examples in the drop-down list) | ||||
|  | ||||
| A brief instruction: | ||||
| 	* libraries are written <b>WITHOUT</b> the .dll file extension | ||||
| 	* libraries are separated by semicolons - <b>;</b> | ||||
| 	* library=n - use the <b>WINDOWS</b> (third-party) library | ||||
| 	* library=b - use <b>WINE</b> (built-in) library  | ||||
| 	* library=n,b - use <b>WINDOWS</b> library and then <b>WINE</b> | ||||
| 	* library=b,n - use <b>WINE</b> library and then <b>WINDOWS</b> | ||||
| 	* library= - disable the use of this library" | ||||
| 	 | ||||
| 	export loc_gui_arg_exe="ADD ARGUMENTS FOR .EXE FILE" | ||||
| 	export loc_gui_arg_exe_help="Adding an argument after the <b>.exe</b> file, just like you would add an argument in a shortcut on a <b>WINDOWS </b> system"  | ||||
|  | ||||
|     export loc_gui_mango_fps="MANGOHUD FPS LIMIT" | ||||
| 	export loc_gui_mango_fps_help="Enabling FPS limits using MANGOHUD built into ${portname}"	 | ||||
|  | ||||
| 	export loc_gui_cpu_limit="Limit the use of processor cores" | ||||
| 	export loc_gui_cpu_limit_help="Limiting the number of CPU cores is useful for Unity games (It is recommended to set the value equal to 8)" | ||||
|  | ||||
| 	export loc_gui_check_new_wine="Check new version WINE from GitHub" | ||||
| 	export loc_gui_check_new_wine_error="Error: check wine from github." | ||||
| 	export loc_gui_set_new_wine="Select WINE for download:" | ||||
| 	export loc_gui_del_wine="Select installed WINE for delete:" | ||||
| 	export loc_gui_installed_wine="INSTALLED" | ||||
|  | ||||
| 	export loc_gui_ffx_cas="AMD FidelityFX - CAS is designed to dramatically improve texture sharpness without additional modification settings for games, with minimal loss of performance. (For older games it is recommended to set value = 100)" | ||||
| 	export loc_gui_disabled_vkbas="DISABLE  VKBASALT" | ||||
| 	export loc_gui_disabled_vkbas_help="Disable vkBasalt and go to the previous menu." | ||||
|  | ||||
| 	export loc_gui_no="NO" | ||||
| 	export loc_gui_yes="YES" | ||||
|  | ||||
| 	export loc_gui_create_shortcut="CREATE SHORTCUT" | ||||
| 	export loc_gui_delete_shortcut="DELETE SHORTCUT" | ||||
| 	export loc_gui_launch="LAUNCH" | ||||
| 	export loc_gui_debug="DEBUG" | ||||
| 	export loc_gui_edit_db_start="EDIT  DB" | ||||
| 	export loc_gui_vkbasalt_start="VKBASALT" | ||||
|     export loc_gui_vkbasalt_top="vkBasalt settings for adding effects to games running under Vulkan. (The <b>HOME</b> key disables vkbasalt)\n<b>NOTE:</b> To display help for each item, simply hover over the text\n" | ||||
|  | ||||
| 	export loc_gui_db_comments="${portname} database file was found for"	 | ||||
|  | ||||
| 	export loc_gui_vulkan_stable="Stable DXVK ${DXVK_STABLE_VER} и VKD3D ${VKD3D_STABLE_VER}" | ||||
| 	export loc_gui_vulkan_git="Newest DXVK ${DXVK_GIT_VER} и VKD3D ${VKD3D_GIT_VER}" | ||||
| 	export loc_gui_gallium_nine="GALLIUM_NINE (DX9 for MESA)" | ||||
| 	export loc_gui_open_gl="OPENGL (For video cards without VULKAN)" | ||||
|  | ||||
| 	export loc_gui_installing_the="Installing the" | ||||
| 	export loc_gui_please_wait="Please wait..." | ||||
| fi | ||||
|   | ||||
							
								
								
									
										23
									
								
								data_from_portwine/scripts/portwine_db/01_setup_standart
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,23 @@ | ||||
| #!/usr/bin/env bash | ||||
| #Author: linux-gaming.ru | ||||
| #setup.exe | ||||
| #Setup.exe | ||||
| #SETUP.exe | ||||
| #.msi | ||||
| #Rating=5 | ||||
| ################################################ | ||||
| export PW_DISABLED_CREATE_DB=1 | ||||
| export PW_ICON_FOR_YAD="${PORT_WINE_PATH}/data/img/setup.png"  | ||||
| export PW_VULKAN_USE=1 | ||||
| export PW_MANGOHUD=0 | ||||
| export PW_NO_FSYNC=0        # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||
| export PW_NO_ESYNC=1        # Do not use eventfd-based in-process synchronization primitives | ||||
| export PW_WINEDBG_DISABLE=1 | ||||
| export PW_USE_GAMEMODE=1             # Force disabele gamemod | ||||
| export PW_FORCE_LARGE_ADDRESS_AWARE=1          # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. | ||||
| export PW_DLL_INSTALL="" | ||||
| export WINEDLLOVERRIDES="mscoree,mshtml=" | ||||
|  | ||||
| add_in_stop_portwine () { | ||||
|     pw_find_exe news | ||||
| } | ||||
							
								
								
									
										26
									
								
								data_from_portwine/scripts/portwine_db/02_setup_xatab
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,26 @@ | ||||
| #!/usr/bin/env bash | ||||
| #Author: linux-gaming.ru | ||||
| #setup.exe | ||||
| #Setup.exe | ||||
| #SETUP.exe | ||||
| #.msi | ||||
| #Rating=5 | ||||
| ################################################ | ||||
| export PW_WINE_USE="WINE-8.8-STAGING-TKG-AMD64" | ||||
| [[ "${update_loc}" == "RUS" ]] && export PW_COMMENT_DB="Для установки репаков от xatab требуется использовать ${PW_WINE_USE}.\nОн загружен и выбран автоматически.\n" | ||||
| export PW_DISABLED_CREATE_DB=1 | ||||
| export PW_ICON_FOR_YAD="${PORT_WINE_PATH}/data/img/setup.png"  | ||||
| export PW_VULKAN_USE=1 | ||||
| export PW_MANGOHUD=0 | ||||
| export PW_NO_FSYNC=0        # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||
| export PW_NO_ESYNC=1        # Do not use eventfd-based in-process synchronization primitives | ||||
| export PW_WINEDBG_DISABLE=1 | ||||
| export PW_USE_GAMEMODE=1             # Force disabele gamemod | ||||
| export PW_FORCE_LARGE_ADDRESS_AWARE=1          # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. | ||||
| export PW_DLL_INSTALL="" | ||||
| export WINEDLLOVERRIDES="mscoree,mshtml=" | ||||
| gui_proton_downloader silent "WINE-8.8-STAGING-TKG-AMD64" | ||||
|  | ||||
| add_in_stop_portwine () { | ||||
|     pw_find_exe news | ||||
| } | ||||
| @@ -5,18 +5,18 @@ | ||||
| #SETUP.exe | ||||
| #.msi | ||||
| #Rating=5 | ||||
| #export PW_COMMENT_DB="blablabla" | ||||
| ################################################ | ||||
| export PW_DISABLED_CREATE_DB=1 | ||||
| export PW_ICON_FOR_YAD="${PORT_WINE_PATH}/data/img/setup.png"  | ||||
| export PW_VULKAN_USE=1 | ||||
| export PW_MANGOHUD=0 | ||||
| export PW_NO_FSYNC=1        # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||
| export PW_NO_FSYNC=0        # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||
| export PW_NO_ESYNC=1        # Do not use eventfd-based in-process synchronization primitives | ||||
| export PW_WINEDBG_DISABLE=1 | ||||
| export PW_USE_GAMEMODE=0             # Force disabele gamemod | ||||
| export PW_USE_GAMEMODE=1             # Force disabele gamemod | ||||
| export PW_FORCE_LARGE_ADDRESS_AWARE=1          # Force Wine to enable the LARGE_ADDRESS_AWARE flag for all executables. Enabled by default. | ||||
| export PW_DLL_INSTALL="" | ||||
| export PW_PREFIX_NAME="DOTNET" | ||||
| 
 | ||||
| add_in_stop_portwine () { | ||||
|     pw_find_exe news | ||||
| @@ -12,6 +12,8 @@ export LAUNCH_PARAMETERS="" | ||||
| export WINEDLLOVERRIDES="locationapi=" | ||||
| export PW_DLL_INSTALL="vcrun2019 d3dx11_42 d3dx11_43" | ||||
| export PW_WINDOWS_VER=10 | ||||
| export PW_WINE_FULLSCREEN_FSR="0" | ||||
| export PW_USE_EAC_AND_BE="0" | ||||
|  | ||||
| add_in_start_portwine () { | ||||
|     rm -fr "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/ProgramData/Agent/data" | ||||
|   | ||||
| @@ -39,4 +39,3 @@ export PW_GUI_DISABLED_CS=0 | ||||
| export PW_MANGOHUD=1 | ||||
| export PW_USE_RUNTIME=1 | ||||
| export PW_USE_GAMEMODE=1 | ||||
| export MANGOHUD_CONFIG=font_size=24,position=top-left,toggle_hud=Shift_R+F12,no_display,resolution,wine,gpu_name,vulkan_driver,gpu_stats,vkbasalt,fps_limit=0  | ||||
|   | ||||
| @@ -4,10 +4,9 @@ | ||||
| #EADesktop.exe | ||||
| #Rating=5 | ||||
| #####################examples########################### | ||||
| export PW_DLL_INSTALL="vcrun2022"               # Install DDL in port prefix (used winetricks)  | ||||
| # export PW_DLL_INSTALL="vcrun2019"               # Install DDL in port prefix (used winetricks)  | ||||
| export PW_VULKAN_USE=1                       # dxvk, vkd3d or 0 for OpenGL | ||||
| # export PW_USE_TERMINAL="1" | ||||
| export PW_MUST_HAVE_DLL="" | ||||
| export PW_USE_TERMINAL="1" | ||||
| export PW_PREFIX_NAME="EA_APP" | ||||
| export PW_WINE_USE="WINE-8.2-STAGING-TKG-AMD64" | ||||
| gui_proton_downloader silent "WINE-8.2-STAGING-TKG-AMD64" | ||||
| # export PW_WINE_USE="WINE-8.8-STAGING-TKG-AMD64" | ||||
| # gui_proton_downloader silent "WINE-8.8-STAGING-TKG-AMD64" | ||||
|   | ||||
| @@ -7,11 +7,10 @@ | ||||
| # export PW_WINE_USE=PROTON_GE | ||||
| export PW_VULKAN_USE=1 | ||||
| export LAUNCH_PARAMETERS="-SkipBuildPatchPrereq" | ||||
| export PW_DLL_INSTALL="vcrun2012 vcrun2013 vcrun2022" | ||||
| export PW_DLL_INSTALL="vcrun2012 vcrun2013 vcrun2019" | ||||
| export PW_USE_D3D_EXTRAS=1 | ||||
| export PW_WINE_USE="PROTON_LG" | ||||
| export WINEDLLOVERRIDES="vulkan-1=n,b" | ||||
|  | ||||
| add_in_start_portwine () { | ||||
|     regdlloverrides "RDR2.exe:vulkan-1=n,b" | ||||
| } | ||||
| # add_in_start_portwine () { | ||||
| #     regdlloverrides "RDR2.exe:vulkan-1=n,b" | ||||
| # } | ||||
|   | ||||
| @@ -8,7 +8,6 @@ | ||||
| ##export PW_DLL_INSTALL="vcrun2017"               # Install DDL in port prefix (used winetricks)  | ||||
| ##export WINEDLLOVERRIDES="blabla=n,b" | ||||
| ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options | ||||
| export PW_WINE_USE=PROTON_GE | ||||
| export VK_FORMAT_A8_UNORM=1 | ||||
| export PW_VULKAN_USE=1 | ||||
| export PW_DXR_ON=0 | ||||
| @@ -37,7 +36,3 @@ export PW_USE_TERMINAL=0 | ||||
| export PW_GUI_DISABLED_CS=0 | ||||
| ##export PATH_TO_GAME= | ||||
| ##add_in_start_portwine () { commands ; } | ||||
| export PW_MANGOHUD=1 | ||||
| export PW_USE_RUNTIME=1 | ||||
| export PW_USE_GAMEMODE=1 | ||||
| export MANGOHUD_CONFIG=font_size=24,position=top-left,toggle_hud=Shift_R+F12,no_display,resolution,wine,gpu_name,vulkan_driver,gpu_stats,vkbasalt,fps_limit=60  | ||||
|   | ||||
							
								
								
									
										10
									
								
								data_from_portwine/scripts/portwine_db/IGClient
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,10 @@ | ||||
| #!/usr/bin/env bash | ||||
| #Author: fidel | ||||
| #IGClient.exe | ||||
| #Rating=1-5 | ||||
| #####################examples########################### | ||||
| export PW_COMMENT_DB="\nПосле первого подтверждения логина в вашем браузере\nнеобходимо перезапустить игру.\n" | ||||
| export PW_WINE_USE="PROTON_LG" | ||||
| export PW_VULKAN_USE="1" | ||||
| export PW_PREFIX_NAME="IGCLIENT" | ||||
| export PW_DLL_INSTALL="vcrun2019" | ||||
							
								
								
									
										10
									
								
								data_from_portwine/scripts/portwine_db/Icarus
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,10 @@ | ||||
| #!/usr/bin/env bash | ||||
| #Author: fidel | ||||
| #Icarus.exe | ||||
| #Rating=1-5 | ||||
| #####################examples########################### | ||||
| ##export PW_COMMENT_DB="blablabla" | ||||
| export PW_WINDOWS_VER="10" | ||||
| export WINEDLLOVERRIDES="" | ||||
| export LAUNCH_PARAMETERS="-dx12" | ||||
| export PW_USE_EAC_AND_BE="0" | ||||
| @@ -1,39 +1,52 @@ | ||||
| #!/usr/bin/env bash | ||||
| #Author: castro-fidel | ||||
| #FulqrumGames.exe | ||||
| #Author: CyberHippy | ||||
| #Konung3.exe | ||||
| #Rating=1-5 | ||||
| #####################examples########################### | ||||
| ##export PW_COMMENT_DB="blablabla" | ||||
| ##export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP | ||||
| ##export PW_DLL_INSTALL="vcrun2017"               # Install DDL in port prefix (used winetricks)  | ||||
| ##export WINEDLLOVERRIDES="blabla=n,b" | ||||
| ##export LAUNCH_PARAMETERS="+com_skipIntroVideo 1 +com_skipSignInManager 1"               # Additional launch options | ||||
| # export PW_WINE_USE="PROTON_LG_7-34" | ||||
| export PW_VULKAN_USE="1" | ||||
| ##export PW_USE_DXR10=1 | ||||
| export PW_WINDOWS_VER="10" | ||||
| export PW_DLL_INSTALL="" | ||||
| export WINEDLLOVERRIDES="" | ||||
| export LAUNCH_PARAMETERS="" | ||||
| export PW_WINE_USE="PROTON_LG" | ||||
| export PW_VULKAN_USE="0" | ||||
| export PW_USE_DXR10="0" | ||||
| ##export PW_DLSS_ON=1 | ||||
| ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ||||
| ##export PW_USE_NVAPI_AND_DLSS=0 | ||||
| ##export PW_OLD_GL_STRING=1 | ||||
| ##export PW_HIDE_NVIDIA_GPU=1 | ||||
| export PW_USE_NVAPI_AND_DLSS="0" | ||||
| export PW_OLD_GL_STRING="0" | ||||
| export PW_HIDE_NVIDIA_GPU="0" | ||||
| ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ||||
| ##export PW_VIRTUAL_DESKTOP=1 | ||||
| export PW_VIRTUAL_DESKTOP="1" | ||||
| ##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue | ||||
| export ENABLE_VKBASALT="1" | ||||
| export PW_VKBASALT_EFFECTS="Curves:cas" | ||||
| export PW_VKBASALT_FFX_CAS="1" | ||||
| ##export PW_NO_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||
| ##export PW_NO_ESYNC=0                            # Do not use eventfd-based in-process synchronization primitives | ||||
| export ENABLE_VKBASALT="0" | ||||
| ##export PW_VKBASALT_EFFECTS="FakeHDR:cas"        # Use Reshade in others games (dx9-12 to vulkan only) | ||||
| ##export PW_VKBASALT_FFX_CAS="0.75"               # FidelityFX Contrast Adaptive Sharpening (min 0 - max 1) | ||||
| export PW_NO_FSYNC="0" | ||||
| export PW_NO_ESYNC="1" | ||||
| ##export PW_USE_GSTREAMER=1                       # 0 - disabled use winegstreamer  | ||||
| ##export PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games | ||||
| ##export PW_NO_WRITE_WATCH=1                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||
| ##export PW_HEAP_DELAY_FREE=1 | ||||
| export PW_HEAP_DELAY_FREE="0" | ||||
| ##export PW_WINE_ALLOW_XIM=1                      # Disable XIM support until libx11 >= 1.7 is widespread | ||||
| ##export WINEARCH=win32                           # defaut = win64 | ||||
| ##export WINEPREFIX= | ||||
| ##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG | ||||
| ##export PW_USE_TERMINAL=1                        # Force run in terminal | ||||
| ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI | ||||
| export PW_USE_TERMINAL="0" | ||||
| export PW_GUI_DISABLED_CS="0" | ||||
| ##export PATH_TO_GAME= | ||||
| ##add_in_start_portwine () { commands ; } | ||||
| export PW_PREFIX_NAME="DEFAULT" | ||||
| export PW_MANGOHUD="1" | ||||
| export PW_MANGOHUD_USER_CONF="1" | ||||
| export PW_USE_DXR11="0" | ||||
| export PW_USE_FAKE_DLSS="0" | ||||
| export PW_WINE_FULLSCREEN_FSR="0" | ||||
| export PW_USE_GAMEMODE="1" | ||||
| export PW_DX12_DISABLE="0" | ||||
| export PW_PRIME_RENDER_OFFLOAD="0" | ||||
| export PW_USE_D3D_EXTRAS="1" | ||||
| export PW_FIX_VIDEO_IN_GAME="0" | ||||
| export PW_FORCE_LARGE_ADDRESS_AWARE="1" | ||||
| export PW_USE_SHADER_CACHE="1" | ||||
| export PW_USE_WINE_DXGI="0" | ||||
| @@ -13,7 +13,7 @@ export TEXT_OPSSL="" | ||||
| export PW_COMMENT_DB="${TEXT_OPSSL}Dwnload and start League of Legends can take a long time" | ||||
| export WINEDLLOVERRIDES="mscoree,mshtml=" | ||||
| export LAUNCH_PARAMETERS="--launch-product=league_of_legends --launch-patchline=live"              # Additional launch options | ||||
| export PW_WINE_USE=WINE_LOL_GE_7.0-5 | ||||
| export PW_WINE_USE=WINE_LOL_GE_8.12 | ||||
| export PW_VULKAN_USE=1 | ||||
| export PW_MUST_HAVE_DLL="" | ||||
| export PW_PREFIX_NAME="LEAGUE_OF_LEGENDS" | ||||
| @@ -21,27 +21,13 @@ export PW_NO_FSYNC=1 | ||||
| export PW_NO_ESYNC=1 | ||||
| export PW_DISABLED_CREATE_DB=1 | ||||
| export PW_USE_D3D_EXTRAS=1 | ||||
| export PW_USE_EAC_AND_BE="0" | ||||
| export DXVK_STABLE_VER="1.10.3-28" | ||||
| ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI | ||||
|  | ||||
| check_download_wine_ver_for_lol () { | ||||
|     if [ ! -d "${PORT_WINE_PATH}/data/dist/${PW_WINE_USE}" ] ; then | ||||
|         if try_download "github.com/Castro-Fidel/wine_builds/releases/download/${PW_WINE_USE}/${PW_WINE_USE}.tar.xz" \ | ||||
|         "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz" ; then | ||||
|             if unpack_tar_xz "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz" "${PORT_WINE_PATH}/data/dist/" ; then | ||||
|                 try_remove_file "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz" | ||||
|                 UNPACK_STATUS=0 | ||||
|             else | ||||
|                 try_remove_file "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz" | ||||
|                 try_remove_dir "${PORT_WINE_PATH}/data/dist/${PW_WINE_USE}" | ||||
|             fi | ||||
|         fi | ||||
|         [[ "${UNPACK_STATUS}" != 0 ]] && exit 1 | ||||
|     fi | ||||
| } | ||||
| check_download_wine_ver_for_lol | ||||
| try_remove_dir "${PORT_WINE_PATH}/data/dist/WINE_LOL_GE_8.7-1" | ||||
| gui_proton_downloader silent "${PW_WINE_USE}" | ||||
|  | ||||
| add_in_start_portwine () { | ||||
|     echo "" | ||||
|  | ||||
| } | ||||
|   | ||||
							
								
								
									
										45
									
								
								data_from_portwine/scripts/portwine_db/MWO
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,45 @@ | ||||
| #!/usr/bin/env bash | ||||
| #Author: fidel | ||||
| #MWOLauncher.exe | ||||
| #MWO.exe | ||||
| #Rating=1-5 | ||||
| #####################examples########################### | ||||
| export PW_COMMENT_DB="\nНа данный момент игра работает, но долго запускаеться из Лаунчера.\nПосле установки игры, при повторном запуске, игра будет запускаться быстро.\n" | ||||
| export PW_WINDOWS_VER="10" | ||||
| export PW_DLL_INSTALL="" | ||||
| export WINEDLLOVERRIDES="steam_api,steam_api64,steamclient,steamclient64=n;dotnetfx35.exe,dotnetfx35setup.exe,winemenubuilder=" | ||||
| export LAUNCH_PARAMETERS="" | ||||
| export PW_WINE_USE="PROTON_LG" | ||||
| export PW_VULKAN_USE="1" | ||||
| export PW_USE_NVAPI_AND_DLSS="0" | ||||
| export PW_HIDE_NVIDIA_GPU="0" | ||||
| export PW_VIRTUAL_DESKTOP="0" | ||||
| export ENABLE_VKBASALT="0" | ||||
| export PW_NO_FSYNC="0" | ||||
| export PW_NO_ESYNC="1" | ||||
| export PW_USE_GSTREAMER="1" | ||||
| export PW_USE_TERMINAL="0" | ||||
| export PW_GUI_DISABLED_CS="0" | ||||
| export PW_PREFIX_NAME="METAL_WAR_ONLINE" | ||||
| export PW_MANGOHUD="1" | ||||
| export PW_MANGOHUD_x32="1" | ||||
| export PW_MANGOHUD_USER_CONF="0" | ||||
| export PW_USE_RAY_TRACING="0" | ||||
| export PW_USE_FAKE_DLSS="0" | ||||
| export PW_WINE_FULLSCREEN_FSR="1" | ||||
| export PW_USE_GAMEMODE="1" | ||||
| export PW_DX12_DISABLE="0" | ||||
| export PW_PRIME_RENDER_OFFLOAD="0" | ||||
| export PW_USE_D3D_EXTRAS="1" | ||||
| export PW_FIX_VIDEO_IN_GAME="1" | ||||
| export PW_FORCE_LARGE_ADDRESS_AWARE="1" | ||||
| export PW_USE_SHADER_CACHE="1" | ||||
| export PW_USE_WINE_DXGI="0" | ||||
| export PW_USE_EAC_AND_BE="1" | ||||
| add_in_start_portwine () | ||||
| { | ||||
|     if [[ -f "${PATH_TO_GAME}/MWO.exe" ]] ; then | ||||
|         echo "Override $portwine_exe to ${PATH_TO_GAME}/MWO.exe" | ||||
|         export portwine_exe="${PATH_TO_GAME}/MWO.exe" | ||||
|     fi | ||||
| } | ||||
| @@ -4,48 +4,33 @@ | ||||
| #Rating=1-5 | ||||
| #####################examples########################### | ||||
| ##export PW_COMMENT_DB="blablabla" | ||||
| export PW_WINDOWS_VER="10" | ||||
| export PW_WINDOWS_VER="7" | ||||
| export PW_DLL_INSTALL="" | ||||
| export WINEDLLOVERRIDES="libglesv2=" | ||||
| export LAUNCH_PARAMETERS="" | ||||
| export PW_VULKAN_USE="1" | ||||
| export PW_USE_DXR10="0" | ||||
| ##export PW_DLSS_ON=1 | ||||
| ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ||||
| export PW_USE_NVAPI_AND_DLSS="0" | ||||
| export PW_OLD_GL_STRING="0" | ||||
| export PW_HIDE_NVIDIA_GPU="0" | ||||
| ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ||||
| export PW_VIRTUAL_DESKTOP="0" | ||||
| ##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue | ||||
| export ENABLE_VKBASALT="0" | ||||
| ##export PW_VKBASALT_EFFECTS="FakeHDR:cas"        # Use Reshade in others games (dx9-12 to vulkan only) | ||||
| ##export PW_VKBASALT_FFX_CAS="0.75"               # FidelityFX Contrast Adaptive Sharpening (min 0 - max 1) | ||||
| export PW_NO_FSYNC="0" | ||||
| export PW_NO_ESYNC="1" | ||||
| ##export PW_USE_GSTREAMER=1                       # 0 - disabled use winegstreamer  | ||||
| ##export PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games | ||||
| ##export PW_NO_WRITE_WATCH=1                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||
| export PW_HEAP_DELAY_FREE="0" | ||||
| ##export PW_WINE_ALLOW_XIM=1                      # Disable XIM support until libx11 >= 1.7 is widespread | ||||
| ##export WINEARCH=win32                           # defaut = win64 | ||||
| ##export WINEPREFIX= | ||||
| ##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG | ||||
| export PW_USE_TERMINAL="0" | ||||
| export PW_GUI_DISABLED_CS="0" | ||||
| ##export PATH_TO_GAME= | ||||
| ##add_in_start_portwine () { commands ; } | ||||
| export PW_PREFIX_NAME="DOTNET" | ||||
| export PW_PREFIX_NAME="PLARIUM_PLAY" | ||||
| export PW_MANGOHUD="0" | ||||
| export PW_MANGOHUD_x32="0" | ||||
| export PW_MANGOHUD_USER_CONF="0" | ||||
| export PW_USE_DXR11="0" | ||||
| export ENABLE_VKBASALT="0" | ||||
| export PW_NO_ESYNC="1" | ||||
| export PW_NO_FSYNC="1" | ||||
| export PW_USE_RAY_TRACING="0" | ||||
| export PW_USE_NVAPI_AND_DLSS="0" | ||||
| export PW_USE_FAKE_DLSS="0" | ||||
| export PW_WINE_FULLSCREEN_FSR="0" | ||||
| export PW_USE_GAMEMODE="1" | ||||
| export PW_DX12_DISABLE="0" | ||||
| export PW_HIDE_NVIDIA_GPU="0" | ||||
| export PW_VIRTUAL_DESKTOP="0" | ||||
| export PW_USE_TERMINAL="0" | ||||
| export PW_GUI_DISABLED_CS="0" | ||||
| export PW_USE_GAMEMODE="0" | ||||
| export PW_DX12_DISABLE="1" | ||||
| export PW_PRIME_RENDER_OFFLOAD="0" | ||||
| export PW_USE_D3D_EXTRAS="1" | ||||
| export PW_USE_D3D_EXTRAS="0" | ||||
| export PW_FIX_VIDEO_IN_GAME="0" | ||||
| export PW_USE_GSTREAMER="0" | ||||
| export PW_FORCE_LARGE_ADDRESS_AWARE="1" | ||||
| export PW_USE_SHADER_CACHE="1" | ||||
| export PW_USE_SHADER_CACHE="0" | ||||
| export PW_USE_WINE_DXGI="0" | ||||
| export PW_USE_EAC_AND_BE="0" | ||||
| export WINEDLLOVERRIDES="" | ||||
|   | ||||
| @@ -4,36 +4,7 @@ | ||||
| #Rating=1-5 | ||||
| #####################examples########################### | ||||
| ##export PW_COMMENT_DB="blablabla" | ||||
| ##export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP | ||||
| ##export PW_DLL_INSTALL="vcrun2017"               # Install DDL in port prefix (used winetricks)  | ||||
| ##export WINEDLLOVERRIDES="blabla=n,b" | ||||
| ##export LAUNCH_PARAMETERS="+com_skipIntroVideo 1 +com_skipSignInManager 1"               # Additional launch options | ||||
| export PW_WINE_USE="WINE-8.2-STAGING-TKG-AMD64" | ||||
| export PW_WINE_USE="WINE-8.8-STAGING-TKG-AMD64" | ||||
| export PW_VULKAN_USE="1" | ||||
| ##export PW_USE_DXR10=1 | ||||
| ##export PW_DLSS_ON=1 | ||||
| ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ||||
| ##export PW_USE_NVAPI_AND_DLSS=0 | ||||
| ##export PW_OLD_GL_STRING=1 | ||||
| ##export PW_HIDE_NVIDIA_GPU=1 | ||||
| ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ||||
| ##export PW_VIRTUAL_DESKTOP=1 | ||||
| ##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue | ||||
| ##export ENABLE_VKBASALT=1 | ||||
| ##export PW_VKBASALT_EFFECTS="FakeHDR:cas"        # Use Reshade in others games (dx9-12 to vulkan only) | ||||
| ##export PW_VKBASALT_FFX_CAS="0.75"               # FidelityFX Contrast Adaptive Sharpening (min 0 - max 1) | ||||
| ##export PW_NO_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||
| ##export PW_NO_ESYNC=0                            # Do not use eventfd-based in-process synchronization primitives | ||||
| ##export PW_USE_GSTREAMER=1                       # 0 - disabled use winegstreamer  | ||||
| ##export PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games | ||||
| ##export PW_NO_WRITE_WATCH=1                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||
| ##export PW_HEAP_DELAY_FREE=1 | ||||
| ##export PW_WINE_ALLOW_XIM=1                      # Disable XIM support until libx11 >= 1.7 is widespread | ||||
| ##export WINEARCH=win32                           # defaut = win64 | ||||
| ##export WINEPREFIX= | ||||
| ##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG | ||||
| ##export PW_USE_TERMINAL=1                        # Force run in terminal | ||||
| ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI | ||||
| ##export PATH_TO_GAME= | ||||
| ##add_in_start_portwine () { commands ; } | ||||
| export PW_PREFIX_NAME="ROBLOX" | ||||
| # export DISABLE_CP_DEFPFX=1 | ||||
|   | ||||
| @@ -8,6 +8,7 @@ | ||||
| export PW_VULKAN_USE=1 | ||||
| export PW_DLL_INSTALL="vcrun2019" | ||||
| export PW_WINDOWS_VER=10 | ||||
| add_in_start_portwine () { | ||||
|     regdlloverrides "RDR2.exe:vulkan-1=n" | ||||
| } | ||||
| export WINEDLLOVERRIDES="vulkan-1=n,b" | ||||
| # add_in_start_portwine () { | ||||
| #     regdlloverrides "RDR2.exe:vulkan-1=n,b" | ||||
| # } | ||||
|   | ||||
							
								
								
									
										39
									
								
								data_from_portwine/scripts/portwine_db/SystemShockRemake
									
									
									
									
									
										Normal file
									
								
							
							
						
						| @@ -0,0 +1,39 @@ | ||||
| #!/usr/bin/env bash | ||||
| #Author: licrit | ||||
| #SystemShock.exe | ||||
| #SystemReShock-Win64-Shipping.exe | ||||
| #Rating=1-5 | ||||
| #####################examples########################### | ||||
| ##export PW_COMMENT_DB="blablabla" | ||||
| export PW_WINDOWS_VER="10" | ||||
| export PW_DLL_INSTALL="" | ||||
| export WINEDLLOVERRIDES="" | ||||
| export LAUNCH_PARAMETERS="" | ||||
| export PW_VULKAN_USE="2" | ||||
| export PW_USE_NVAPI_AND_DLSS="0" | ||||
| export PW_HIDE_NVIDIA_GPU="0" | ||||
| export PW_VIRTUAL_DESKTOP="0" | ||||
| export ENABLE_VKBASALT="1" | ||||
| export PW_NO_FSYNC="0" | ||||
| export PW_NO_ESYNC="1" | ||||
| export PW_USE_GSTREAMER="1" | ||||
| export PW_USE_TERMINAL="0" | ||||
| export PW_GUI_DISABLED_CS="0" | ||||
| export PW_PREFIX_NAME="DEFAULT" | ||||
| export PW_MANGOHUD="1" | ||||
| export PW_MANGOHUD_x32="0" | ||||
| export PW_MANGOHUD_USER_CONF="0" | ||||
| export PW_USE_RAY_TRACING="0" | ||||
| export PW_USE_FAKE_DLSS="0" | ||||
| export PW_WINE_FULLSCREEN_FSR="1" | ||||
| export PW_USE_GAMEMODE="1" | ||||
| export PW_DX12_DISABLE="0" | ||||
| export PW_PRIME_RENDER_OFFLOAD="0" | ||||
| export PW_USE_D3D_EXTRAS="1" | ||||
| export PW_FIX_VIDEO_IN_GAME="0" | ||||
| export PW_FORCE_LARGE_ADDRESS_AWARE="1" | ||||
| export PW_USE_SHADER_CACHE="1" | ||||
| export PW_USE_WINE_DXGI="0" | ||||
| export PW_USE_EAC_AND_BE="0" | ||||
| export PW_WINE_USE="WINE_8.5_LG" | ||||
| gui_proton_downloader silent "WINE_8.5_LG" | ||||
| @@ -4,7 +4,7 @@ | ||||
| #Rating=1-5 | ||||
| ################################################ | ||||
| export PW_VULKAN_USE=1 | ||||
| export PW_DLL_INSTALL="d3dcompiler_43 d3dcompiler_47 d3dx9 d3dx11_42 d3dx11_43"  | ||||
| export PW_DLL_INSTALL=""  | ||||
| #####################examples########################### | ||||
| ##export PW_COMMENT_DB="blablabla" | ||||
| ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL | ||||
|   | ||||
| @@ -9,10 +9,14 @@ else | ||||
|     export PW_COMMENT_DB="If you use Wayland, to intercept control in Atomic Heart\n,you need to collapse the VK Play Game Center itself into the tray" | ||||
| fi | ||||
| export PW_WINDOWS_VER="10" | ||||
| export WINEDLLOVERRIDES="" | ||||
| export WINEDLLOVERRIDES="mscoree,mshtml=" | ||||
| export PW_MUST_HAVE_DLL="" | ||||
| export PW_PREFIX_NAME="VK_PLAY" | ||||
| export PW_USE_GSTREAMER="0" | ||||
| export PW_USE_GSTREAMER="1" | ||||
| export PW_VULKAN_USE="2" | ||||
|  | ||||
| export PW_WINE_USE="WINE_8.5_LG" | ||||
| gui_proton_downloader silent "WINE_8.5_LG" | ||||
|  | ||||
| add_in_start_portwine () { | ||||
|     if [[ -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/user.reg" ]] ; then | ||||
|   | ||||
| @@ -10,7 +10,6 @@ export PW_WINDOWS_VER="10" | ||||
| export PW_DLL_INSTALL="faudio dotnet48 dotnet20sp2" | ||||
| export WINEDLLOVERRIDES="quartz=b" | ||||
| export LAUNCH_PARAMETERS="" | ||||
| export PW_WINE_USE="PROTON_GE" | ||||
| export PW_VULKAN_USE="1" | ||||
| export PW_VULKAN_NO_ASYNC="0" | ||||
| export PW_USE_NVAPI_AND_DLSS="0" | ||||
| @@ -40,3 +39,5 @@ export PW_FIX_VIDEO_IN_GAME="0" | ||||
| export PW_USE_AMDVLK_DRIVER="1" | ||||
| export PW_FORCE_LARGE_ADDRESS_AWARE="1" | ||||
| export PW_USE_SHADER_CACHE="1" | ||||
| export PW_WINE_USE=GE-PROTON7-55 | ||||
| gui_proton_downloader silent "${PW_WINE_USE}" | ||||
|   | ||||
| @@ -5,7 +5,7 @@ | ||||
| #Rating=5 | ||||
| #####################examples########################### | ||||
| ##export PW_COMMENT_DB="blablabla" | ||||
| export PW_WINE_USE=PROTON_GE | ||||
| # export PW_WINE_USE=PROTON_GE | ||||
| export PW_VULKAN_USE=1 | ||||
| #export PW_WINDOWS_VER=7                        # Set windows version 10, 7 or XP | ||||
| export PW_DLL_INSTALL="vcrun2019 d3dcompiler_47"               # Install DDL in port prefix (used winetricks)  | ||||
|   | ||||
| @@ -3,36 +3,5 @@ | ||||
| #itch.exe | ||||
| #Rating=1-5 | ||||
| #####################examples########################### | ||||
| ##export PW_COMMENT_DB="blablabla" | ||||
| ##export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP | ||||
| ##export PW_DLL_INSTALL="vcrun2017"               # Install DDL in port prefix (used winetricks)  | ||||
| ##export WINEDLLOVERRIDES="blabla=n,b" | ||||
| ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options | ||||
| export PW_WINE_USE=PROTON_GE | ||||
| export PW_VULKAN_USE=1 | ||||
| ##export PW_USE_DXR10=1 | ||||
| ##export PW_DLSS_ON=1 | ||||
| ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN | ||||
| ##export PW_USE_NVAPI_AND_DLSS=0 | ||||
| ##export PW_OLD_GL_STRING=1 | ||||
| ##export PW_HIDE_NVIDIA_GPU=1 | ||||
| ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ||||
| ##export PW_VIRTUAL_DESKTOP=1 | ||||
| ##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue | ||||
| ##export ENABLE_VKBASALT=1 | ||||
| ##export PW_VKBASALT_EFFECTS="FakeHDR:cas"        # Use Reshade in others games (dx9-12 to vulkan only) | ||||
| ##export PW_VKBASALT_FFX_CAS="0.75"               # FidelityFX Contrast Adaptive Sharpening (min 0 - max 1) | ||||
| ##export PW_NO_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support. | ||||
| ##export PW_NO_ESYNC=0                            # Do not use eventfd-based in-process synchronization primitives | ||||
| ##export PW_USE_GSTREAMER=1                       # 0 - disabled use winegstreamer  | ||||
| ##export PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games | ||||
| ##export PW_NO_WRITE_WATCH=1                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games). | ||||
| ##export PW_HEAP_DELAY_FREE=1 | ||||
| ##export PW_WINE_ALLOW_XIM=1                      # Disable XIM support until libx11 >= 1.7 is widespread | ||||
| ##export WINEARCH=win32                           # defaut = win64 | ||||
| ##export WINEPREFIX= | ||||
| ##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG | ||||
| ##export PW_USE_TERMINAL=1                        # Force run in terminal | ||||
| ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI | ||||
| ##export PATH_TO_GAME= | ||||
| ##add_in_start_portwine () { commands ; } | ||||
| #add_in_start_portwine () { commands ; } | ||||
|   | ||||
| @@ -5,8 +5,8 @@ | ||||
| ################################################ | ||||
| export PW_COMMENT_DB="Steam" | ||||
| export PW_WINDOWS_VER="10" | ||||
| export PW_DLL_INSTALL="vcrun2022 d3dcompiler_46" | ||||
| export WINEDLLOVERRIDES="" | ||||
| export PW_DLL_INSTALL="vcrun2019 d3dcompiler_46" | ||||
| export WINEDLLOVERRIDES="OnlineFix64,SteamOverlay64,steam_api,steam_api64,steamclient,steamclient64=n;winmm=n,b" | ||||
| export LAUNCH_PARAMETERS="-gamepadui -fullscreen -no-dwrite" | ||||
| export PW_VULKAN_USE="1" | ||||
|  | ||||
|   | ||||
| @@ -13,11 +13,12 @@ export LAUNCH_PARAMETERS=""            # Additional launch options | ||||
| #export PW_USE_TERMINAL=1 | ||||
| export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP | ||||
| #export PW_USE_NVAPI_AND_DLSS=0 | ||||
| export WINEDLLOVERRIDES="ucrtbase,xaudio2_7,xaudio2_8=n,b" | ||||
| export PW_DLL_INSTALL="lucida vcrun2022"     # Install DDL in port prefix (used winetricks) | ||||
| export WINEDLLOVERRIDES="" | ||||
| export PW_DLL_INSTALL="lucida vcrun2019"     # Install DDL in port prefix (used winetricks) | ||||
| ##export PW_GUI_DISABLED_CS=1 | ||||
| ##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG | ||||
| export PW_USE_D3D_EXTRAS=0 | ||||
| export PW_USE_D3D_EXTRAS="1" | ||||
| export PW_USE_EAC_AND_BE="0" | ||||
|  | ||||
| add_in_start_portwine () { | ||||
|     if [[ -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/users/${USER}/AppData/Roaming/Wargaming.net/WorldOfTanks/preferences.xml" ]] ; then | ||||
|   | ||||
| @@ -2,13 +2,13 @@ | ||||
| # Author: chal55rus (Sergey P.) | ||||
| ######################################################################## | ||||
| export LAUNCH_PARAMETERS=("/S") | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Ankama Launcher-Setup.exe" | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Ankama-Setup.exe" | ||||
| start_portwine | ||||
| if try_download "launcher.cdn.ankama.com/installers/production/Ankama%20Launcher-Setup.exe" "${PW_AUTOINSTALL_EXE}" | ||||
| if try_download "download.ankama.com/launcher/full/win/" "${PW_AUTOINSTALL_EXE}"  | ||||
| then | ||||
|     pw_start_progress_bar_block "${loc_gui_installing_the} Ankama Launcher. ${loc_gui_please_wait} " | ||||
|     pw_run "${PW_AUTOINSTALL_EXE}" | ||||
|     portwine_exe="$WINEPREFIX/drive_c/Program Files/Ankama/Ankama Launcher/Ankama Launcher.exe" | ||||
|     portwine_exe="$WINEPREFIX/drive_c/users/steamuser/AppData/Local/Programs/Ankama Launcher/Ankama Launcher.exe" | ||||
|     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
|     kill_portwine | ||||
|   | ||||
| @@ -4,12 +4,13 @@ | ||||
| [ "${update_loc}" = "RUS" ] && export BN_LOC=ruRU || export BN_LOC=enUS | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Battle.net-Setup-${BN_LOC}.exe" | ||||
| start_portwine | ||||
| if try_download "dist.blizzard.com/downloads/bna-installers/322d5bb9ae0318de3d4cde7641c96425/retail.1/Battle.net-Setup-${BN_LOC}.exe" "${PW_AUTOINSTALL_EXE}" | ||||
| if try_download "https://www.battle.net/download/getInstallerForGame?os=win&version=LIVE&gameProgram=BATTLENET_APP" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     # PW_START_PROGRESS_BAR "${loc_gui_installing_the} Battle Net. ${loc_gui_please_wait} " | ||||
|     try_remove_dir "$WINEPREFIX/drive_c/ProgramData/Battle.net" | ||||
|     pw_kill_autostart Battle.net.exe & | ||||
|     pw_run "${PW_AUTOINSTALL_EXE}" | ||||
|     portwine_exe=`find "$WINEPREFIX/drive_c/" -type f -name "Battle.net.exe"` | ||||
|     portwine_exe=`find "$WINEPREFIX/drive_c/" -type f -name "Battle.net.exe" | grep "Battle.net/Battle.net.exe"` | ||||
|     pw_stop_progress_bar | ||||
|     portwine_create_shortcut | ||||
|     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|   | ||||
							
								
								
									
										19
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_BSR
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,19 @@ | ||||
| #!/usr/bin/env bash | ||||
| # Author: Boria138 | ||||
| ######################################################################## | ||||
| export LAUNCH_PARAMETERS=("/VERYSILENT /SUPPRESSMSGBOXES") | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/bsr_setup.exe" | ||||
| start_portwine | ||||
| if try_download "battleofspaceraiders.com/install/bsr_setup.exe" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     pw_start_progress_bar_block "${loc_gui_installing_the} Battle Of Space Raiders. ${loc_gui_please_wait} " | ||||
|     pw_run "${PW_AUTOINSTALL_EXE}" | ||||
|     portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/Battle Of Space Raiders/aops.exe" | ||||
|     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
|     kill_portwine | ||||
|     pw_stop_progress_bar | ||||
|     export PORTWINE_CREATE_SHORTCUT_NAME="Battle Of Space Raiders" | ||||
|     portwine_create_shortcut | ||||
| fi | ||||
| stop_portwine | ||||
| @@ -20,16 +20,8 @@ if [ ! -d "${PORT_WINE_PATH}/data/dist/${PW_WINE_USE}" ] ; then | ||||
|     [[ "${UNPACK_STATUS}" != 0 ]] && exit 1 | ||||
| fi | ||||
|  | ||||
| try_download_caliber () { | ||||
|     set -o pipefail | ||||
|     wget -t 5 -T 3 "$1" --no-check-certificate --output-document="$2" 2>&1 | \ | ||||
|     tr '\r' '\n' | sed -u 's/.* \([0-9]\+%\)\ \+\([0-9,.]\+.\) \(.*\)/\1\n#Downloading at \1\/, \2\/s, ETA \3/; s/^20[0-9][0-9].*/#Done./' | \ | ||||
|     "${pw_yad_new}" --center --progress --percentage=0 --title="Download $(basename $1)" --text=Starting... --auto-close --auto-kill --width=500 --height=90 | ||||
|     [ "${PIPESTATUS[0]}" != 0 ] && print_error "failed to download $1. Scipping." && return 1 || return 0 | ||||
| } | ||||
|  | ||||
| start_portwine | ||||
| if try_download_caliber "https://cdn.playcaliber.com/p1/a88c3b70f76a0e56b1e08b62c9895cfe/launcher/setup/CaliberSetup.exe" "${PW_AUTOINSTALL_EXE}" | ||||
| if try_download "https://caliber-files.gcdn.co/caliber-s3/p1/a88c3b70f76a0e56b1e08b62c9895cfe/launcher/setup/CaliberSetup.exe" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     pw_start_progress_bar_block "${loc_gui_installing_the} CALIBER. ${loc_gui_please_wait} " | ||||
|     pw_kill_autostart VC_redist.x64.exe 3 & | ||||
|   | ||||
							
								
								
									
										20
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_CWC
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,20 @@ | ||||
| #!/usr/bin/env bash | ||||
| # Author: chal55rus | ||||
| ######################################################################## | ||||
| export PW_PREFIX_NAME="CONTRACT_WARS" | ||||
| export LAUNCH_PARAMETERS=("/VERYSILENT") | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/CWClient_Install.exe" | ||||
| start_portwine | ||||
| if try_download "https://cdn-01.contractwarsgame.com/standalone/CWClient_Install.exe" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     pw_start_progress_bar_block "${loc_gui_installing_the} CONTRACT WARS Client. ${loc_gui_please_wait} " | ||||
|     pw_run "${PW_AUTOINSTALL_EXE}" | ||||
|     portwine_exe="$WINEPREFIX/drive_c/Games/CWClient/CWClientLauncher.exe" | ||||
|     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
|     kill_portwine | ||||
|     pw_stop_progress_bar | ||||
|     export PORTWINE_CREATE_SHORTCUT_NAME="CONTRACT WARS" | ||||
|     portwine_create_shortcut | ||||
| fi | ||||
| stop_portwine | ||||
							
								
								
									
										18
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_DEMUL
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,18 @@ | ||||
| #!/usr/bin/env bash | ||||
| # Author: chal55rus (Sergey P.) | ||||
| ######################################################################## | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/demul07_280418.7z" | ||||
| start_portwine | ||||
| if try_download "http://demul.emulation64.com/files/demul07_280418.7z" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     pw_start_progress_bar_block "${loc_gui_installing_the} Demul. ${loc_gui_please_wait} " | ||||
|     "$pw_7z" x -y "${PW_AUTOINSTALL_EXE}" -o"$WINEPREFIX/drive_c/Program Files (x86)/Demul" | ||||
|     portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/Demul/demul.exe" | ||||
|     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
|     kill_portwine | ||||
|     pw_stop_progress_bar | ||||
|     export PORTWINE_CREATE_SHORTCUT_NAME="Demul" | ||||
|     portwine_create_shortcut | ||||
| fi | ||||
| stop_portwine | ||||
| @@ -4,19 +4,17 @@ | ||||
| export LAUNCH_PARAMETERS=("/silent" "/repair" ) | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/EAappInstaller.exe" | ||||
| export PW_DLL_INSTALL=""               # Install DDL in port prefix (used winetricks)  | ||||
| export PW_VULKAN_USE=1                       # dxvk, vkd3d or 0 for OpenGL | ||||
| export PW_MUST_HAVE_DLL="" | ||||
| export PW_VULKAN_USE=1 | ||||
| export PW_PREFIX_NAME="EA_APP" | ||||
| # export WINEDLLOVERRIDES="mscoree,mshtml=b" | ||||
| export PW_WINE_USE="WINE-8.2-STAGING-TKG-AMD64" | ||||
| gui_proton_downloader silent "WINE-8.2-STAGING-TKG-AMD64" | ||||
|  | ||||
| # export DISABLE_CP_DEFPFX=1 | ||||
| # export PW_WINE_USE="WINE-8.8-STAGING-TKG-AMD64" | ||||
| # gui_proton_downloader silent "WINE-8.8-STAGING-TKG-AMD64" | ||||
|  | ||||
| start_portwine | ||||
| if try_download "origin-a.akamaihd.net/EA-Desktop-Client-Download/installer-releases/EAappInstaller.exe" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     pw_start_progress_bar_block "${loc_gui_installing_the} EA Launcher. ${loc_gui_please_wait} " | ||||
|     pw_kill_autostart EABackgroundService.exe & | ||||
|     # pw_kill_autostart EABackgroundService.exe & | ||||
|     # pw_kill_autostart EALocalHostSvc.exe & | ||||
|     mkdir -p "$WINEPREFIX/drive_c/Program Files/Electronic Arts/EA Desktop/EA Desktop" | ||||
|     pw_run "${PW_AUTOINSTALL_EXE}" | ||||
|   | ||||
| @@ -4,22 +4,18 @@ | ||||
| export LAUNCH_PARAMETERS=("/q" ) | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/EpicGamesLauncherInstaller.msi" | ||||
| export PW_USE_D3D_EXTRAS=1 | ||||
| # sed -i '/Epic Games/d' "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/*.reg >/dev/null | ||||
| try_remove_file "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/.wine_ver" | ||||
|  | ||||
| start_portwine | ||||
| if try_download "launcher-public-service-prod06.ol.epicgames.com/launcher/api/installer/download/EpicGamesLauncherInstaller.msi" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     pw_start_progress_bar_block "Installing Epic Games Launcher. ${loc_gui_please_wait} " | ||||
| #    pw_kill_autostart EpicGamesLauncher.exe & | ||||
|     # try_remove_dir "${WINEPREFIX}/drive_c/Program Files (x86)/Epic Games/Epic Online Services/" | ||||
|     # try_remove_dir "${WINEPREFIX}/drive_c/Program Files (x86)/Epic Games/Launcher/" | ||||
|     # try_remove_dir "${WINEPREFIX}/drive_c/ProgramData/Epic" | ||||
|     pw_run msiexec /i "${PW_AUTOINSTALL_EXE}" | ||||
| #     sleep 10 | ||||
| #     if [ ! -z `pgrep msiexec* | head -n 1` ] ; then | ||||
| #         while [ ! -z `pgrep msiexec* | head -n 1` ] || [ ! -z `pgrep rundll32* | head -n 1` ] || [ ! -z `pgrep -a wrap | grep ${portname} | head -n 1` ] | ||||
| #         do | ||||
| #             [ ! -z `pgrep rundll32* | head -n 1` ] && kill -n 9 `pgrep rundll32* | head -n 1` && echo "Kill rundll32.exe" | ||||
| #             sleep 5 | ||||
| #         done | ||||
| #     fi | ||||
|     portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/Epic Games/Launcher/Portal/Binaries/Win32/EpicGamesLauncher.exe" | ||||
|     portwine_exe="${WINEPREFIX}/drive_c/Program Files (x86)/Epic Games/Launcher/Portal/Binaries/Win32/EpicGamesLauncher.exe" | ||||
|     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
|     kill_portwine | ||||
|   | ||||
| @@ -3,22 +3,16 @@ | ||||
| ######################################################################## | ||||
| export PW_WINDOWS_VER=10 | ||||
| export PW_DLL_INSTALL="vcrun2017" | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/EveLauncher-1892908.exe" | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/EveLauncher-2198233.exe" | ||||
| start_portwine | ||||
| if try_download "binaries.eveonline.com/EveLauncher-1892908.exe" "${PW_AUTOINSTALL_EXE}" | ||||
| if try_download "binaries.eveonline.com/EveLauncher-2198233.exe" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     pw_start_progress_bar_block "${loc_gui_installing_the} EVE Launcher. ${loc_gui_please_wait} " | ||||
|     if [ ! -f "$WINEPREFIX/drive_c/Games/EVE Online/Launcher/evelauncher.exe" ] ; then | ||||
|         try_remove_dir "$WINEPREFIX/drive_c/Games/EVE Online" | ||||
|         dd if="${PW_AUTOINSTALL_EXE}" of="${PW_AUTOINSTALL_EXE}".7z bs=1M skip=31646603 count=196171208 iflag=skip_bytes,count_bytes | ||||
|         "$pw_7z" x "${PW_AUTOINSTALL_EXE}".7z -o"$WINEPREFIX/drive_c/Games/EVE Online" | ||||
|         try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
|         try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb".7z | ||||
|     fi | ||||
|     portwine_exe="$WINEPREFIX/drive_c/Games/EVE Online/Launcher/evelauncher.exe" | ||||
|     pw_kill_autostart evelauncher.exe & | ||||
|     pw_run "${PW_AUTOINSTALL_EXE}" | ||||
|     portwine_exe=`find "$WINEPREFIX/drive_c/" -type f -name "evelauncher.exe"` | ||||
|     pw_stop_progress_bar | ||||
|     portwine_create_shortcut | ||||
|     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
| fi | ||||
| stop_portwine | ||||
|   | ||||
							
								
								
									
										18
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_FCEUX
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,18 @@ | ||||
| #!/usr/bin/env bash | ||||
| # Author: chal55rus (Sergey P.) | ||||
| ######################################################################## | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/fceux-2.6.5-win64.zip" | ||||
| start_portwine | ||||
| if try_download "https://github.com/TASEmulators/fceux/releases/download/v2.6.5/fceux-2.6.5-win64.zip" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     pw_start_progress_bar_block "${loc_gui_installing_the} FCEUX. ${loc_gui_please_wait} " | ||||
|     "$pw_7z" x -y "${PW_AUTOINSTALL_EXE}" -o"$WINEPREFIX/drive_c/Program Files (x86)/FCEUX" | ||||
|     portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/FCEUX/fceux64.exe" | ||||
|     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
|     kill_portwine | ||||
|     pw_stop_progress_bar | ||||
|     export PORTWINE_CREATE_SHORTCUT_NAME="FCEUX" | ||||
|     portwine_create_shortcut | ||||
| fi | ||||
| stop_portwine | ||||
| @@ -1,19 +0,0 @@ | ||||
| #!/usr/bin/env bash | ||||
| # Author: chal55rus (Sergey P.) | ||||
| ######################################################################## | ||||
| export LAUNCH_PARAMETERS=("/VERYSILENT" ) | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/fulqrumgames_setup.exe" | ||||
| start_portwine | ||||
| if try_download "https://royalquest.com/download/fulqrum" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     pw_start_progress_bar_block "${loc_gui_installing_the} Fulqrum Games. ${loc_gui_please_wait} " | ||||
|     pw_run "${PW_AUTOINSTALL_EXE}" | ||||
|     portwine_exe="$WINEPREFIX/drive_c/FulqrumGames/FulqrumGames.exe" | ||||
|     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
|     kill_portwine | ||||
|     pw_stop_progress_bar | ||||
|     export PORTWINE_CREATE_SHORTCUT_NAME="Fulqrum Games" | ||||
|     portwine_create_shortcut | ||||
| fi | ||||
| stop_portwine | ||||
							
								
								
									
										25
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_GENSHIN_IMPACT
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,25 @@ | ||||
| #!/usr/bin/env bash | ||||
| # Author: Castro-Fidel (linux-gaming.ru) | ||||
| ######################################################################## | ||||
| export PW_VULKAN_USE=1 | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/gi_installer.exe" | ||||
| export PW_PREFIX_NAME="GENSHIN_IMPACT" | ||||
|  | ||||
| start_portwine | ||||
|  | ||||
| if try_download "https://ys-api-os.mihoyo.com/event/download_porter/link/ys_global/genshinimpactpc/default" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     pw_start_progress_bar_block "Installing Genshin Impact Launcher. ${loc_gui_please_wait} " | ||||
|     pw_kill_autostart launcher.exe & | ||||
|     export PATH_TO_GAME="${PW_USER_TEMP}" | ||||
|     pw_run "${PW_AUTOINSTALL_EXE}" | ||||
|     portwine_exe="$WINEPREFIX/drive_c/Program Files/Genshin Impact/launcher.exe" | ||||
|     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
|     kill_portwine | ||||
|     pw_stop_progress_bar | ||||
|     export PORTWINE_CREATE_SHORTCUT_NAME="Genshin Impact" | ||||
|     portwine_create_shortcut | ||||
| fi | ||||
|  | ||||
| stop_portwine | ||||
| @@ -2,6 +2,9 @@ | ||||
| # Author: Castro Fidel | ||||
| ######################################################################## | ||||
| export LAUNCH_PARAMETERS=("/VERYSILENT") | ||||
| export PW_PREFIX_NAME="GW2" | ||||
| export WINEDLLOVERRIDES="mscoree,mshtml=" | ||||
| export PW_MUST_HAVE_DLL="" | ||||
|  | ||||
| start_portwine | ||||
| mkdir -p "${WINEPREFIX}/drive_c/Program Files/Guild Wars 2/" | ||||
| @@ -10,13 +13,13 @@ export PW_AUTOINSTALL_EXE="${WINEPREFIX}/drive_c/Program Files/Guild Wars 2/Gw2S | ||||
| if try_download "https://s3.amazonaws.com/gw2cdn/client/branches/Gw2Setup-64.exe" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     pw_start_progress_bar_block "${loc_gui_installing_the} Guild Wars 2. ${loc_gui_please_wait} " | ||||
|     pw_kill_autostart Gw2-64.exe 3 & | ||||
|     cd "${WINEPREFIX}/drive_c/Program Files/Guild Wars 2/" | ||||
|     pw_kill_autostart Gw2.exe 3 & | ||||
|     pw_run "${PW_AUTOINSTALL_EXE}" | ||||
|     portwine_exe="${WINEPREFIX}/drive_c/Program Files/Guild Wars 2/Gw2-64.exe" | ||||
|     portwine_exe="${WINEPREFIX}/drive_c/Program Files/Guild Wars 2/Gw2.exe" | ||||
|     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
|     kill_portwine | ||||
|     mv -f "${WINEPREFIX}/drive_c/users/steamuser/Temp/"* "${WINEPREFIX}/drive_c/Program Files/Guild Wars 2/" | ||||
|     pw_stop_progress_bar | ||||
|     export PORTWINE_CREATE_SHORTCUT_NAME="Guild Wars 2" | ||||
|     portwine_create_shortcut | ||||
|   | ||||
| @@ -2,7 +2,9 @@ | ||||
| # Author: Castro Fidel | ||||
| ######################################################################## | ||||
| export LAUNCH_PARAMETERS=("/S") | ||||
| export PW_PREFIX_NAME="IGCLIENT" | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/igclient_setup.exe" | ||||
| export PW_DLL_INSTALL="vcrun2019" | ||||
|  | ||||
| start_portwine | ||||
| if try_download "https://content.indiegalacdn.com/common/IGClientSetup.exe" "${PW_AUTOINSTALL_EXE}" | ||||
|   | ||||
| @@ -9,7 +9,8 @@ then | ||||
|     pw_start_progress_bar_block "${loc_gui_installing_the} ITCH.IO. ${loc_gui_please_wait} " | ||||
|     pw_kill_autostart itch.exe & | ||||
|     pw_run "${PW_AUTOINSTALL_EXE}" | ||||
|     portwine_exe="$WINEPREFIX/drive_c/users/steamuser/AppData/Local/itch/app-25.5.1/itch.exe" | ||||
|     portwine_exe=`find "$WINEPREFIX/drive_c/users" -type f -name "itch.exe"` | ||||
|     # portwine_exe="$WINEPREFIX/drive_c/users/steamuser/AppData/Local/itch/app-25.5.1/itch.exe" | ||||
|     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
|     kill_portwine | ||||
|   | ||||
| @@ -8,31 +8,23 @@ try_download_lgc () { | ||||
|     set -o pipefail | ||||
|     wget -t 5 -T 3 "$1" --output-document="$2" 2>&1 | \ | ||||
|     tr '\r' '\n' | sed -u 's/.* \([0-9]\+%\)\ \+\([0-9,.]\+.\) \(.*\)/\1\n#Downloading at \1\/, \2\/s, ETA \3/; s/^20[0-9][0-9].*/#Done./' | \ | ||||
|     "${pw_yad_new}" --center --progress --percentage=0 --title="Download $(basename $1)" --text=Starting... --auto-close --auto-kill --width=500 --height=90 | ||||
|     "${pw_yad_v12_3}" --center --progress --percentage=0 --title="Download $(basename $1)" --text=Starting... --auto-close --auto-kill --width=500 --height=90 | ||||
|     [ "${PIPESTATUS[0]}" != 0 ] && print_error "failed to download $1. Scipping." && return 1 || return 0 | ||||
| } | ||||
|  | ||||
| start_portwine | ||||
| if [[ -f "$WINEPREFIX/drive_c/ProgramData/Lesta/GameCenter/api/lgc_api.exe" ]] ; then | ||||
|     if [[ ! -f "$WINEPREFIX/drive_c/ProgramData/Wargaming.net/GameCenter/api/wgc_api.exe" ]] ; then | ||||
|         try_remove_file "${HOME}/.local/share/applications/Wargaming Game Center.desktop" | ||||
|         try_remove_file "${PORT_WINE_PATH}/Wargaming Game Center.desktop" | ||||
|     fi | ||||
|     export PORTWINE_CREATE_SHORTCUT_NAME="Lesta Game Center" | ||||
|  | ||||
| if try_download_lgc "redirect.lesta.ru/LGC/Lesta_Game_Center_Install_RU.exe"  "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     pw_start_progress_bar_block "Starting LGC installation..." | ||||
|     pw_kill_autostart lgc.exe & | ||||
|     pw_run "${PW_AUTOINSTALL_EXE}" | ||||
|     portwine_exe="$WINEPREFIX/drive_c/ProgramData/Lesta/GameCenter/api/lgc_api.exe" | ||||
|     portwine_create_shortcut | ||||
| else | ||||
|     if try_download_lgc "redirect.lesta.ru/LGC/Lesta_Game_Center_Install_RU.exe"  "${PW_AUTOINSTALL_EXE}" | ||||
|     then | ||||
|         pw_start_progress_bar_block "Starting LGC installation..." | ||||
|         pw_kill_autostart lgc.exe & | ||||
|         pw_run "${PW_AUTOINSTALL_EXE}" | ||||
|         portwine_exe="$WINEPREFIX/drive_c/ProgramData/Lesta/GameCenter/api/lgc_api.exe" | ||||
|         export PORTWINE_CREATE_SHORTCUT_NAME="Lesta Game Center" | ||||
|         try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     export PORTWINE_CREATE_SHORTCUT_NAME="Lesta Game Center" | ||||
|     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
|         kill_portwine | ||||
|         portwine_create_shortcut | ||||
|     fi | ||||
|     kill_portwine | ||||
|     portwine_create_shortcut | ||||
| fi | ||||
|  | ||||
| stop_portwine | ||||
|   | ||||
| @@ -6,23 +6,12 @@ export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/live.na.exe" | ||||
| export LAUNCH_PARAMETERS="--launch-product=league_of_legends --launch-patchline=live" | ||||
| export PW_MUST_HAVE_DLL="" | ||||
| export PW_VULKAN_USE=1 | ||||
| export PW_WINE_USE=WINE_LOL_GE_7.0-5 | ||||
| export PW_WINE_USE=WINE_LOL_GE_8.12 | ||||
| export WINEDLLOVERRIDES="mscoree,mshtml=" | ||||
| export PW_USE_D3D_EXTRAS=1 | ||||
|  | ||||
| if [ ! -d "${PORT_WINE_PATH}/data/dist/${PW_WINE_USE}" ] ; then | ||||
|     if try_download "github.com/Castro-Fidel/wine_builds/releases/download/${PW_WINE_USE}/${PW_WINE_USE}.tar.xz" \ | ||||
|     "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz" ; then | ||||
|         if unpack_tar_xz "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz" "${PORT_WINE_PATH}/data/dist/" ; then | ||||
|             try_remove_file "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz" | ||||
|             UNPACK_STATUS=0 | ||||
|         else | ||||
|             try_remove_file "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz" | ||||
|             try_remove_dir "${PORT_WINE_PATH}/data/dist/${PW_WINE_USE}" | ||||
|         fi | ||||
|     fi | ||||
|     [[ "${UNPACK_STATUS}" != 0 ]] && exit 1 | ||||
| fi | ||||
| gui_proton_downloader silent "${PW_WINE_USE}" | ||||
|  | ||||
| start_portwine | ||||
| if try_download "lol.secure.dyn.riotcdn.net/channels/public/x/installer/current/live.na.exe" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|   | ||||
							
								
								
									
										20
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_MWO
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,20 @@ | ||||
| #!/usr/bin/env bash | ||||
| # Author: chal55rus | ||||
| ######################################################################## | ||||
| export PW_PREFIX_NAME="METAL_WAR_ONLINE" | ||||
| export LAUNCH_PARAMETERS=("/s" "/nr" "/l=Russian") | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/MWO_Launcher_Setup.exe" | ||||
| start_portwine | ||||
| if try_download "http://mwogame.com/download.php" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     pw_start_progress_bar_block "${loc_gui_installing_the} Metal War Online. ${loc_gui_please_wait} " | ||||
|     pw_run "${PW_AUTOINSTALL_EXE}" | ||||
|     portwine_exe="$WINEPREFIX/drive_c/Games/MetalWarOnline/MWOLauncher.exe" | ||||
|     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
|     kill_portwine | ||||
|     pw_stop_progress_bar | ||||
|     export PORTWINE_CREATE_SHORTCUT_NAME="Metal War Online" | ||||
|     portwine_create_shortcut | ||||
| fi | ||||
| stop_portwine | ||||
| @@ -1,9 +1,38 @@ | ||||
| #!/usr/bin/env bash | ||||
| # Author: chal55rus (Sergey P.) | ||||
| ######################################################################## | ||||
| export PW_PREFIX_NAME=DOTNET | ||||
| export LAUNCH_PARAMETERS=("/s" ) | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/plarium_play_setup.exe" | ||||
| export PW_WINDOWS_VER="7" | ||||
| export PW_DLL_INSTALL="" | ||||
| export LAUNCH_PARAMETERS="" | ||||
| export PW_PREFIX_NAME="PLARIUM_PLAY" | ||||
| export PW_MANGOHUD="0" | ||||
| export PW_MANGOHUD_x32="0" | ||||
| export PW_MANGOHUD_USER_CONF="0" | ||||
| export ENABLE_VKBASALT="0" | ||||
| export PW_NO_ESYNC="1" | ||||
| export PW_NO_FSYNC="1" | ||||
| export PW_USE_RAY_TRACING="0" | ||||
| export PW_USE_NVAPI_AND_DLSS="0" | ||||
| export PW_USE_FAKE_DLSS="0" | ||||
| export PW_WINE_FULLSCREEN_FSR="0" | ||||
| export PW_HIDE_NVIDIA_GPU="0" | ||||
| export PW_VIRTUAL_DESKTOP="0" | ||||
| export PW_USE_TERMINAL="0" | ||||
| export PW_GUI_DISABLED_CS="0" | ||||
| export PW_USE_GAMEMODE="0" | ||||
| export PW_DX12_DISABLE="1" | ||||
| export PW_PRIME_RENDER_OFFLOAD="0" | ||||
| export PW_USE_D3D_EXTRAS="0" | ||||
| export PW_FIX_VIDEO_IN_GAME="0" | ||||
| export PW_USE_GSTREAMER="0" | ||||
| export PW_FORCE_LARGE_ADDRESS_AWARE="1" | ||||
| export PW_USE_SHADER_CACHE="0" | ||||
| export PW_USE_WINE_DXGI="0" | ||||
| export PW_USE_EAC_AND_BE="0" | ||||
| export WINEDLLOVERRIDES="" | ||||
|  | ||||
| start_portwine | ||||
| if try_download "https://plarium.com/services/api/downloads/desktop?lid=1&arc=64&os=windows" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
| @@ -19,3 +48,5 @@ then | ||||
|     portwine_create_shortcut | ||||
| fi | ||||
| stop_portwine | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -5,16 +5,16 @@ export LAUNCH_PARAMETERS=("") | ||||
| export PW_PREFIX_NAME="ROBLOX" | ||||
| export PW_AUTOINSTALL_EXE="${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/roblox_installer.exe" | ||||
| export WINEDLLOVERRIDES="mscoree,mshtml=" | ||||
| # export DISABLE_CP_DEFPFX=1 | ||||
| export PW_MUST_HAVE_DLL="" | ||||
| export PW_WINE_USE="WINE-8.2-STAGING-TKG-AMD64" | ||||
|  | ||||
| gui_proton_downloader silent "WINE-8.2-STAGING-TKG-AMD64" | ||||
| export PW_WINE_USE="WINE-8.8-STAGING-TKG-AMD64" | ||||
| gui_proton_downloader silent "WINE-8.8-STAGING-TKG-AMD64" | ||||
|  | ||||
| start_portwine | ||||
| if try_download "setup.rbxcdn.com/RobloxPlayerLauncher.exe" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     pw_run "${PW_AUTOINSTALL_EXE}" | ||||
|     portwine_exe="${WINEPREFIX}/drive_c/users/${USER}/AppData/Local/Roblox/Versions/version-5e9aac577efb4995/RobloxPlayerBeta.exe" | ||||
|     portwine_exe=`find "$WINEPREFIX/drive_c/" -type f -name "RobloxPlayerBeta.exe"` | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
|     pw_stop_progress_bar | ||||
|     # export PORTWINE_CREATE_SHORTCUT_NAME="RobloxPlayerBeta" | ||||
|   | ||||
| @@ -1,13 +1,16 @@ | ||||
| #!/usr/bin/env bash | ||||
| # Author: chal55rus (Sergey P.) | ||||
| ######################################################################## | ||||
| export PW_VULKAN_USE="1" | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/Rockstar-Games-Launcher.exe" | ||||
| start_portwine | ||||
| if try_download "web.archive.org/web/20210708074247if_/gamedownloads.rockstargames.com/public/installer/Rockstar-Games-Launcher.exe" "${PW_AUTOINSTALL_EXE}" | ||||
| if try_download "https://dl-eu.opendataapi.net/lutris/games/GTA/rockstar-games-launcher-1-0-36-344.exe" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     pw_start_progress_bar_block "Rockstar-Games-Launcher. ${loc_gui_please_wait} " | ||||
|     "$pw_7z" x -y "${PW_AUTOINSTALL_EXE}" -o"$WINEPREFIX/drive_c/Program Files/Rockstar Games/Launcher" | ||||
|     portwine_exe="$WINEPREFIX/drive_c/Program Files/Rockstar Games/Launcher/Launcher.exe" | ||||
|     try_remove_dir "$WINEPREFIX/drive_c/Program Files/Rockstar Games/Launcher" | ||||
|     pw_kill_autostart RockstarService.exe & | ||||
|     pw_run "${PW_AUTOINSTALL_EXE}" | ||||
|     portwine_exe=`find "$WINEPREFIX/drive_c/" -type f -name "Launcher.exe" | grep "Rockstar Games/Launcher/Launcher.exe"` | ||||
|     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
|     kill_portwine | ||||
|   | ||||
							
								
								
									
										18
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_RPCS3
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,18 @@ | ||||
| #!/usr/bin/env bash | ||||
| # Author: chal55rus (Sergey P.) | ||||
| ######################################################################## | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/rpcs3-v0.0.27-14790-2de4c03f_win64.7z" | ||||
| start_portwine | ||||
| if try_download "https://github.com/RPCS3/rpcs3-binaries-win/releases/download/build-2de4c03faa54f001910c1cc5bafda62cc23fa803/rpcs3-v0.0.27-14790-2de4c03f_win64.7z" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     pw_start_progress_bar_block "${loc_gui_installing_the} RPCS3. ${loc_gui_please_wait} " | ||||
|     "$pw_7z" x -y "${PW_AUTOINSTALL_EXE}" -o"$WINEPREFIX/drive_c/Program Files (x86)/RPCS3" | ||||
|     portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/RPCS3/rpcs3.exe" | ||||
|     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
|     kill_portwine | ||||
|     pw_stop_progress_bar | ||||
|     export PORTWINE_CREATE_SHORTCUT_NAME="RPCS3" | ||||
|     portwine_create_shortcut | ||||
| fi | ||||
| stop_portwine | ||||
							
								
								
									
										20
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_SO
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,20 @@ | ||||
| #!/usr/bin/env bash | ||||
| # Author: chal55rus | ||||
| ######################################################################## | ||||
| export PW_PREFIX_NAME="STALKER_ONLINE" | ||||
| export LAUNCH_PARAMETERS=("/S") | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/SO_installer.exe" | ||||
| start_portwine | ||||
| if try_download "https://update-nl-release.stalker.so/launcher/SO_installer.exe" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     pw_start_progress_bar_block "${loc_gui_installing_the} Stalker Online. ${loc_gui_please_wait} " | ||||
|     pw_run "${PW_AUTOINSTALL_EXE}" | ||||
|     portwine_exe="$WINEPREFIX/drive_c/Game/StalkerOnline/StalkerOnline Launcher.exe" | ||||
|     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
|     kill_portwine | ||||
|     pw_stop_progress_bar | ||||
|     export PORTWINE_CREATE_SHORTCUT_NAME="Stalker Online" | ||||
|     portwine_create_shortcut | ||||
| fi | ||||
| stop_portwine | ||||
							
								
								
									
										24
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_STAR_RAIL
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,24 @@ | ||||
| #!/usr/bin/env bash | ||||
| # Author: Castro-Fidel (linux-gaming.ru) | ||||
| ######################################################################## | ||||
| export LAUNCH_PARAMETERS=("/q" ) | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/sr_installer.exe" | ||||
| export PW_USE_D3D_EXTRAS=1 | ||||
|  | ||||
| start_portwine | ||||
|  | ||||
| if try_download "https://sg-public-api.hoyoverse.com/event/download_porter/link/hkrpg_global/oswebpc/default" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     pw_start_progress_bar_block "Installing Honkai Star Rail Launcher. ${loc_gui_please_wait} " | ||||
|     pw_kill_autostart launcher.exe & | ||||
|     pw_run "${PW_AUTOINSTALL_EXE}" | ||||
|     portwine_exe="$WINEPREFIX/drive_c/Program Files/Star Rail/launcher.exe" | ||||
|     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
|     kill_portwine | ||||
|     pw_stop_progress_bar | ||||
|     export PORTWINE_CREATE_SHORTCUT_NAME="Star Rail" | ||||
|     portwine_create_shortcut | ||||
| fi | ||||
|  | ||||
| stop_portwine | ||||
| @@ -6,6 +6,9 @@ export PW_PREFIX_NAME="VK_PLAY" | ||||
| export PW_AUTOINSTALL_EXE="${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/users/steamuser/AppData/Local/VKPlayLoader.exe" | ||||
| export WINEDLLOVERRIDES="mscoree,mshtml=" | ||||
| export PW_MUST_HAVE_DLL="" | ||||
| export PW_WINE_USE="WINE_8.5_LG" | ||||
| pw_clear_pfx | ||||
| gui_proton_downloader silent "WINE_8.5_LG" | ||||
|  | ||||
| start_portwine | ||||
| if try_download "static.gc.my.games/VKPlayLoader.exe" "${PW_AUTOINSTALL_EXE}" | ||||
|   | ||||
| @@ -9,7 +9,7 @@ try_download_wgc () { | ||||
|     set -o pipefail | ||||
|     wget -t 5 -T 3 "$1" --output-document="$2" 2>&1 | \ | ||||
|     tr '\r' '\n' | sed -u 's/.* \([0-9]\+%\)\ \+\([0-9,.]\+.\) \(.*\)/\1\n#Downloading at \1\/, \2\/s, ETA \3/; s/^20[0-9][0-9].*/#Done./' | \ | ||||
|     "${pw_yad_new}" --center --progress --percentage=0 --title="Download $(basename $1)" --text=Starting... --auto-close --auto-kill --width=500 --height=90 | ||||
|     "${pw_yad_v12_3}" --center --progress --percentage=0 --title="Download $(basename $1)" --text=Starting... --auto-close --auto-kill --width=500 --height=90 | ||||
|     [ "${PIPESTATUS[0]}" != 0 ] && print_error "failed to download $1. Scipping." && return 1 || return 0 | ||||
| } | ||||
|  | ||||
|   | ||||
| @@ -6,20 +6,9 @@ export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/wos_client.exe" | ||||
| export LAUNCH_PARAMETERS=("/VERYSILENT") | ||||
| export PW_DLL_INSTALL="faudio dotnet48" | ||||
| export PW_VULKAN_USE=1 | ||||
| export PW_WINE_USE=GE-PROTON7-55 | ||||
| gui_proton_downloader silent "${PW_WINE_USE}" | ||||
|  | ||||
| if [ ! -d "${PORT_WINE_PATH}/data/dist/${PW_WINE_USE}" ] ; then | ||||
|     if try_download "github.com/Castro-Fidel/wine_builds/releases/download/${PW_WINE_USE}/${PW_WINE_USE}.tar.xz" \ | ||||
|     "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz" ; then | ||||
|         if unpack_tar_xz "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz" "${PORT_WINE_PATH}/data/dist/" ; then | ||||
|             try_remove_file "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz" | ||||
|             UNPACK_STATUS=0 | ||||
|         else | ||||
|             try_remove_file "${PORT_WINE_PATH}/data/tmp/${PW_WINE_USE}.tar.xz" | ||||
|             try_remove_dir "${PORT_WINE_PATH}/data/dist/${PW_WINE_USE}" | ||||
|         fi | ||||
|     fi | ||||
|     [[ "${UNPACK_STATUS}" != 0 ]] && exit 1 | ||||
| fi | ||||
| start_portwine | ||||
| if try_download "165311.selcdn.ru/wosb_installer/wos_client.exe" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|   | ||||
							
								
								
									
										18
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_XEMU
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,18 @@ | ||||
| #!/usr/bin/env bash | ||||
| # Author: chal55rus (Sergey P.) | ||||
| ######################################################################## | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/xemu-win-release.zip" | ||||
| start_portwine | ||||
| if try_download "https://github.com/xemu-project/xemu/releases/latest/download/xemu-win-release.zip" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     pw_start_progress_bar_block "${loc_gui_installing_the} xemu. ${loc_gui_please_wait} " | ||||
|     "$pw_7z" x -y "${PW_AUTOINSTALL_EXE}" -o"$WINEPREFIX/drive_c/Program Files (x86)/xemu" | ||||
|     portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/xemu/xemu.exe" | ||||
|     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
|     kill_portwine | ||||
|     pw_stop_progress_bar | ||||
|     export PORTWINE_CREATE_SHORTCUT_NAME="xemu" | ||||
|     portwine_create_shortcut | ||||
| fi | ||||
| stop_portwine | ||||
							
								
								
									
										18
									
								
								data_from_portwine/scripts/pw_autoinstall/PW_XENIA
									
									
									
									
									
										Executable file
									
								
							
							
						
						| @@ -0,0 +1,18 @@ | ||||
| #!/usr/bin/env bash | ||||
| # Author: chal55rus (Sergey P.) | ||||
| ######################################################################## | ||||
| export PW_AUTOINSTALL_EXE="${PW_USER_TEMP}/xenia_master.zip" | ||||
| start_portwine | ||||
| if try_download "https://github.com/xenia-project/release-builds-windows/releases/latest/download/xenia_master.zip" "${PW_AUTOINSTALL_EXE}" | ||||
| then | ||||
|     pw_start_progress_bar_block "${loc_gui_installing_the} Xenia. ${loc_gui_please_wait} " | ||||
|     "$pw_7z" x -y "${PW_AUTOINSTALL_EXE}" -o"$WINEPREFIX/drive_c/Program Files (x86)/xenia" | ||||
|     portwine_exe="$WINEPREFIX/drive_c/Program Files (x86)/xenia/xenia.exe" | ||||
|     try_remove_file "${PW_AUTOINSTALL_EXE}" | ||||
|     try_remove_file "${portwine_exe}.ppdb" | ||||
|     kill_portwine | ||||
|     pw_stop_progress_bar | ||||
|     export PORTWINE_CREATE_SHORTCUT_NAME="Xenia" | ||||
|     portwine_create_shortcut | ||||
| fi | ||||
| stop_portwine | ||||
| @@ -19,16 +19,18 @@ if [[ $(id -u) = 0 ]] ; then | ||||
|     zenity --error --text "Do not run this script as root!" | ||||
|     exit 1 | ||||
| fi | ||||
| if [[ "${s_install}" != "1" && ! -x "`which "zenity" 2>/dev/null`" ]] ; then | ||||
| if [[ "${s_install}" != "1" && ! -x "`command -v "zenity" 2>/dev/null`" ]] ; then | ||||
|     echo "You will need to install: zenity, and restart the port." | ||||
|     xdg-open "https://linux-gaming.ru/portproton/" > /dev/null 2>&1 & exit 0 | ||||
| fi | ||||
| . "$(dirname $(readlink -f "$0"))/functions_helper" | ||||
|  | ||||
| start_portwine () { | ||||
|     var_winedlloverride_update "${PW_MUST_WINEDLLOVERRIDES}" | ||||
|     export WINEPREFIX="${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}" | ||||
|     create_new_dir "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/" | ||||
|     try_force_link_dir "${PORT_WINE_PATH}/data/prefixes" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/" | ||||
|     create_new_dir "${WINEPREFIX}/drive_c/windows/system32/" | ||||
|     create_new_dir "${WINEPREFIX}/drive_c/windows/syswow64/" | ||||
|     try_force_link_dir "${PORT_WINE_PATH}/data/prefixes" "${WINEPREFIX}/drive_c/" | ||||
|     export WINEARCH="win64" | ||||
|     if [[ "${PW_VULKAN_USE}" == 3 ]] ; then  | ||||
|         export PW_WINE_USE="${PW_PROTON_LG_VER}" | ||||
| @@ -60,13 +62,14 @@ start_portwine () { | ||||
|  | ||||
|     pw_init_runtime | ||||
|  | ||||
|     if [[ ! -z "${PW_LOG}" && "${PW_LOG}" != 0 ]] ; then | ||||
|     if [[ "${PW_LOG}" == 1 ]] ; then | ||||
|         export WINEDEBUG="fixme-all,err+loaddll,err+dll,err+file,err+reg" | ||||
|         export DXVK_LOG_LEVEL="warn" | ||||
|         export VKD3D_DEBUG="warn" | ||||
|         export WINE_MONO_TRACE="E:System.NotImplementedException" | ||||
|         export VK_LOADER_DEBUG="warn" | ||||
|         export VKBASALT_LOG_LEVEL="warn" | ||||
|         export DXVK_NVAPI_LOG_LEVEL=warn | ||||
|     else | ||||
|         export WINEDEBUG="-all" | ||||
|         export DXVK_LOG_LEVEL="none" | ||||
| @@ -74,17 +77,15 @@ start_portwine () { | ||||
|         export VKD3D_DEBUG="none" | ||||
|         export DXVK_LOG_PATH="none" | ||||
|         export VKBASALT_LOG_LEVEL="none" | ||||
|         export DXVK_NVAPI_LOG_LEVEL=none | ||||
|     fi | ||||
|  | ||||
|     #default wine-mono override for FNA games | ||||
|     export WINE_MONO_OVERRIDES="Microsoft.Xna.Framework.*,Gac=n" | ||||
|  | ||||
|     if [[ ! -z "${PW_NO_ESYNC}" && "${PW_NO_ESYNC}" != 0 ]] ; then | ||||
|         export WINEESYNC="0" | ||||
|     else  | ||||
|         export WINEESYNC="1" | ||||
|     if [[ "${PW_NO_ESYNC}" == 1 ]] | ||||
|     then export WINEESYNC="0" | ||||
|     else export WINEESYNC="1" | ||||
|     fi | ||||
|     if [[ ! -z "${PW_NO_FSYNC}" && "${PW_NO_FSYNC}" != 0 ]] ; then | ||||
|  | ||||
|     if [[ "${PW_NO_FSYNC}" == 1 ]] ; then | ||||
|         export WINEFSYNC="0" | ||||
|         export WINEFSYNC_FUTEX2="0" | ||||
|     else | ||||
| @@ -92,18 +93,22 @@ start_portwine () { | ||||
|         export WINEFSYNC_FUTEX2="1" | ||||
|         export WINEFSYNC_SPINCOUNT=100 | ||||
|     fi | ||||
|     if [[ ! -z "${PW_FORCE_LARGE_ADDRESS_AWARE}" && "${PW_FORCE_LARGE_ADDRESS_AWARE}" != 0 ]] | ||||
|  | ||||
|     if [[ "${PW_FORCE_LARGE_ADDRESS_AWARE}" == 1 ]] | ||||
|     then export WINE_LARGE_ADDRESS_AWARE="1" | ||||
|     else export WINE_LARGE_ADDRESS_AWARE="0" | ||||
|     fi | ||||
|     if [[ ! -z "${PW_OLD_GL_STRING}" && "${PW_OLD_GL_STRING}" != 0 ]] ; then | ||||
|  | ||||
|     if [[ "${PW_OLD_GL_STRING}" == 1 ]] ; then | ||||
|         export MESA_EXTENSION_MAX_YEAR="2003" #mesa override | ||||
|         export __GL_ExtensionStringVersion="17700" #nvidia override | ||||
|     fi | ||||
|     if [[ ! -z "${PW_NO_WRITE_WATCH}" && "${PW_NO_WRITE_WATCH}" != 0 ]] ; then | ||||
|  | ||||
|     if [[ "${PW_NO_WRITE_WATCH}" == 1 ]] ; then | ||||
|         export WINE_DISABLE_WRITE_WATCH="1" | ||||
|     fi | ||||
|     if [[ ! -z "${PW_VULKAN_NO_ASYNC}" && "${PW_VULKAN_NO_ASYNC}" != 0 ]] ; then | ||||
|  | ||||
|     if [[ "${PW_VULKAN_NO_ASYNC}" == 1 ]] ; then | ||||
|         export RADV_DEBUG="llvm" | ||||
|         var_vkd3d_config_update single_queue | ||||
|     fi | ||||
| @@ -119,92 +124,87 @@ start_portwine () { | ||||
|         fi | ||||
|     } | ||||
|  | ||||
|     if [[ ! -z "${PW_USE_FAKE_DLSS}" && "${PW_USE_FAKE_DLSS}" == 1 && -d "${PW_PLUGINS_PATH}/fake_dlss/${PW_FAKE_DLSS_VER}/" ]] | ||||
|     then | ||||
|         try_force_link_file "${PW_PLUGINS_PATH}/fake_dlss/${PW_FAKE_DLSS_VER}/nvngx.dll" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/"  | ||||
|         try_force_link_file "${PW_PLUGINS_PATH}/fake_dlss/${PW_FAKE_DLSS_VER}/nvngx.ini" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/" | ||||
|         enabled_fake_nvidia_videocard 1 | ||||
|         export DXVK_NVAPIHACK=0 | ||||
|         export DXVK_ENABLE_NVAPI=1 | ||||
|         export WINE_HIDE_NVIDIA_GPU=0 | ||||
|     elif [[ ! -z "${PW_USE_NVAPI_AND_DLSS}" && "${PW_USE_NVAPI_AND_DLSS}" == 1 ]] && [[ -d "${WINEDIR}/lib/wine/nvapi/" ]] | ||||
|     then | ||||
|         if ! try_force_link_file "${WINEDIR}/lib/wine/nvapi/nvapi.dll" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/" ; then | ||||
|             try_force_link_file "${PW_PLUGINS_PATH}/nvapi/x32/nvapi.dll" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/" | ||||
|         fi | ||||
|         if ! try_force_link_file "${WINEDIR}/lib64/wine/nvapi/nvapi64.dll" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/" ; then | ||||
|             try_force_link_file "${PW_PLUGINS_PATH}/nvapi/x64/nvapi64.dll" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/"  | ||||
|         fi | ||||
|         try_remove_file "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/nvngx.ini" | ||||
|         var_winedlloverride_update "nvapi,nvapi64=n;nvml,nvcuda,nvcuvid=b" | ||||
|         if [[ ! -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/nvngx.dll" || ! -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/_nvngx.dll" ]] ; then | ||||
|             try_copy_file `find /usr/* -type f -name "nvngx.dll" 2>/dev/null | awk '{print $1}' | grep '/lib/'` "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/" | ||||
|             try_copy_file `find /usr/* -type f -name "_nvngx.dll" 2>/dev/null | awk '{print $1}' | grep '/lib/'` "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/"        | ||||
|         fi | ||||
|         # echo "Try link nvml.dll.so to prefix" | ||||
|         try_force_link_file "${PW_PLUGINS_PATH}"/nvml/lib/wine/nvml.dll.so "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/nvml.dll" | ||||
|         try_force_link_file "${PW_PLUGINS_PATH}"/nvml/lib64/wine/nvml.dll.so "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/nvml.dll" | ||||
|         export DXVK_NVAPIHACK=0 | ||||
|         export DXVK_ENABLE_NVAPI=1 | ||||
|         export WINE_HIDE_NVIDIA_GPU=0 | ||||
|         enabled_fake_nvidia_videocard 0 | ||||
|     else | ||||
|         enabled_fake_nvidia_videocard 0 | ||||
|         export DXVK_NVAPIHACK=1 | ||||
|         export DXVK_ENABLE_NVAPI=0 | ||||
|         export WINE_HIDE_NVIDIA_GPU=1 | ||||
|     if ! try_force_link_file "${WINEDIR}/lib/wine/nvapi/nvapi.dll" "${WINEPREFIX}/drive_c/windows/syswow64/" ; then | ||||
|         try_force_link_file "${PW_PLUGINS_PATH}/nvapi/x32/nvapi.dll" "${WINEPREFIX}/drive_c/windows/syswow64/" | ||||
|     fi | ||||
|     if ! try_force_link_file "${WINEDIR}/lib64/wine/nvapi/nvapi64.dll" "${WINEPREFIX}/drive_c/windows/system32/" ; then | ||||
|         try_force_link_file "${PW_PLUGINS_PATH}/nvapi/x64/nvapi64.dll" "${WINEPREFIX}/drive_c/windows/system32/"  | ||||
|     fi | ||||
|  | ||||
|     if [[ ! -z "${PW_PRIME_RENDER_OFFLOAD}" && "${PW_PRIME_RENDER_OFFLOAD}" != 0 ]] ; then | ||||
|         export __NV_PRIME_RENDER_OFFLOAD=1 | ||||
|         check_nvidia_vk_icd_file | ||||
|     try_remove_file "${WINEPREFIX}/drive_c/windows/syswow64/nvml.dll" | ||||
|     try_remove_file "${WINEPREFIX}/drive_c/windows/system32/nvml.dll" | ||||
|     try_remove_file "${WINEPREFIX}/drive_c/windows/system32/nvngx.ini" | ||||
|     try_remove_file "${WINEPREFIX}/drive_c/windows/system32/nvngx.dll" | ||||
|     try_remove_file "${WINEPREFIX}/drive_c/windows/system32/_nvngx.dll" | ||||
|     if [[ "${PW_USE_FAKE_DLSS}" == 1 ]] && [[ -d "${PW_PLUGINS_PATH}/fake_dlss/${PW_FAKE_DLSS_VER}/" ]] ; then | ||||
|         try_force_link_file "${PW_PLUGINS_PATH}/fake_dlss/${PW_FAKE_DLSS_VER}/nvngx.dll" "${WINEPREFIX}/drive_c/windows/system32/"  | ||||
|         try_force_link_file "${PW_PLUGINS_PATH}/fake_dlss/${PW_FAKE_DLSS_VER}/nvngx.ini" "${WINEPREFIX}/drive_c/windows/system32/" | ||||
|         enabled_fake_nvidia_videocard 1 | ||||
|         var_winedlloverride_update "nvapi,nvapi64,nvngx=n;_nvngx=" | ||||
|         export DXVK_ENABLE_NVAPI=1 | ||||
|         export WINE_HIDE_NVIDIA_GPU=0 | ||||
|         export VKD3D_FEATURE_LEVEL="12_2" | ||||
|         # export DXVK_NVAPI_DRIVER_VERSION= | ||||
|     elif [[ "${PW_USE_NVAPI_AND_DLSS}" == 1 ]] ; then | ||||
|         if ! try_copy_file `find /usr/* -type f -name "nvngx.dll" 2>/dev/null | awk '{print $1}' | grep '/lib/'` "${WINEPREFIX}/drive_c/windows/system32/" | ||||
|         then try_copy_file "${PW_PLUGINS_PATH}/nvngx/nvngx.dll" "${WINEPREFIX}/drive_c/windows/system32/" | ||||
|         fi | ||||
|         if ! try_copy_file `find /usr/* -type f -name "_nvngx.dll" 2>/dev/null | awk '{print $1}' | grep '/lib/'` "${WINEPREFIX}/drive_c/windows/system32/"        | ||||
|         then try_copy_file "${PW_PLUGINS_PATH}/nvngx/_nvngx.dll" "${WINEPREFIX}/drive_c/windows/system32/" | ||||
|         fi  | ||||
|         enabled_fake_nvidia_videocard 0 | ||||
|         export DXVK_ENABLE_NVAPI=1 | ||||
|         export WINE_HIDE_NVIDIA_GPU=0 | ||||
|         export VKD3D_FEATURE_LEVEL="12_2" | ||||
|         # export DXVK_NVAPI_DRIVER_VERSION= | ||||
|         var_winedlloverride_update "nvngx,_nvngx,nvapi,nvapi64=n" | ||||
|     else | ||||
|         enabled_fake_nvidia_videocard 0 | ||||
|         export DXVK_ENABLE_NVAPI=0 | ||||
|         var_winedlloverride_update "nvngx,_nvngx=" | ||||
|     fi | ||||
|     if [[ ! -z "${PW_HEAP_DELAY_FREE}" && "${PW_HEAP_DELAY_FREE}" != 0 ]] | ||||
|  | ||||
|     grep '"renderer"=' "${WINEPREFIX}/user.reg" &>/dev/null | ||||
|     if [[ "$?" == 0 ]] ; then | ||||
|         sed -i /'"renderer"='/d "${WINEPREFIX}/user.reg" &>/dev/null | ||||
|         sed -i /'renderer='/d "${WINEPREFIX}/winetricks.log" &>/dev/null | ||||
|     fi | ||||
|  | ||||
|     if [[ ! -z "${optirun_on}" && "${optirun_on}" != "" ]] ; then | ||||
|         export PW_PRIME_RENDER_OFFLOAD=1 | ||||
|         print_info "force PW_PRIME_RENDER_OFFLOAD=1" | ||||
|     fi | ||||
|  | ||||
|     if [[ "${PW_PRIME_RENDER_OFFLOAD}" == 1 ]] ; then | ||||
|         export __NV_PRIME_RENDER_OFFLOAD=1 | ||||
|         export __GLX_VENDOR_LIBRARY_NAME=nvidia | ||||
|     fi | ||||
|  | ||||
|     if [[ "${PW_HEAP_DELAY_FREE}" == 1 ]] | ||||
|     then export WINE_HEAP_DELAY_FREE="1" | ||||
|     else export WINE_HEAP_DELAY_FREE="0" | ||||
|     fi | ||||
|     if [[ ! -z "${PW_WINE_ALLOW_XIM}" && "${PW_WINE_ALLOW_XIM}" != 0 ]] | ||||
|  | ||||
|     if [[ "${PW_WINE_ALLOW_XIM}" == 1 ]] | ||||
|     then export WINE_ALLOW_XIM="1" | ||||
|     else export WINE_ALLOW_XIM="0" | ||||
|     fi | ||||
|     if [[ ! -z "${PW_FIX_VIDEO_IN_GAME}" && "${PW_FIX_VIDEO_IN_GAME}" != 0 ]] | ||||
|  | ||||
|     if [[ "${PW_FIX_VIDEO_IN_GAME}" == 1 ]] | ||||
|     then export WINE_DO_NOT_CREATE_DXGI_DEVICE_MANAGER="1" | ||||
|     else export WINE_DO_NOT_CREATE_DXGI_DEVICE_MANAGER="0" | ||||
|     fi | ||||
|      | ||||
|     [[ ! -z "${PW_MANGOHUD_USER_CONF}" && "${PW_MANGOHUD_USER_CONF}" != 0 ]] && unset MANGOHUD_CONFIG | ||||
|     if [[ ! -z "${PW_USE_DXR11}" && "${PW_USE_DXR11}" != 0 ]] ; then  | ||||
|         var_vkd3d_config_update dxr11 | ||||
|         var_radv_perftest_config_update rt,gpl | ||||
|     elif [[ ! -z "${PW_USE_DXR10}" && "${PW_USE_DXR10}" != 0 ]] ; then  | ||||
|         var_vkd3d_config_update dxr | ||||
|         var_radv_perftest_config_update rt,gpl | ||||
|     fi | ||||
|     export optirun_on="" | ||||
|     export check_optimus_manager= | ||||
|     export PW_NVIDIA="$(lspci | grep NVIDIA)" | ||||
|     if [ -x "`which optimus-manager 2>/dev/null`" ]; then | ||||
|         export check_optimus_manager=`optimus-manager --status | grep Current | cut -f 2 -d':' | sed -e 's/^[[:space:]]*//'` | ||||
|     fi | ||||
|     if [[ ! -z "${PW_NVIDIA}" ]] && [[ "${check_optimus_manager}" != "intel" ]] && [[ "${DRI_PRIME}" != 1 ]] ; then | ||||
|         if [ "${check_optimus_manager}" = "nvidia" ]; then | ||||
|             check_nvidia_vk_icd_file | ||||
|         elif [ -x "`which primusrun 2>/dev/null`" ]; then | ||||
|             export optirun_on="primusrun" | ||||
|             check_nvidia_vk_icd_file | ||||
|         elif [ -x "`which optirun 2>/dev/null`" ]; then | ||||
|             export optirun_on="optirun -b primus" | ||||
|             check_nvidia_vk_icd_file | ||||
|         elif [ -x "`which prime-run 2>/dev/null`" ]; then | ||||
|             export optirun_on="prime-run" | ||||
|             check_nvidia_vk_icd_file | ||||
|         elif [[ -x "`which nvidia-settings 2>/dev/null`" ]] ; then  | ||||
|             export __GLX_VENDOR_LIBRARY_NAME=nvidia | ||||
|             check_nvidia_vk_icd_file | ||||
|         fi | ||||
|     else | ||||
|         export DRI_PRIME=1 | ||||
|     [[ "${PW_MANGOHUD_USER_CONF}" == 1 ]] && unset MANGOHUD_CONFIG | ||||
|  | ||||
|     if [[ "${PW_USE_DXR11}" == 1 ]] || [[ "${PW_USE_DXR10}" == 1 ]] || [[ "${PW_USE_RAY_TRACING}" == 1 ]]; then | ||||
|         var_vkd3d_config_update dxr,dxr11 | ||||
|         var_radv_perftest_config_update rt | ||||
|         export VKD3D_FEATURE_LEVEL="12_2" | ||||
|         export WINE_HIDE_NVIDIA_GPU=0 | ||||
|         export DXVK_ENABLE_NVAPI=1 | ||||
|     fi | ||||
|  | ||||
|     case "$PW_FORCE_USE_VSYNC" in  # 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT | ||||
|         "0") | ||||
|         unset vblank_mode | ||||
| @@ -218,17 +218,21 @@ start_portwine () { | ||||
|         killall xneur | ||||
|         export int_xneur=1 | ||||
|     fi | ||||
|     if [[ ! -z "${PW_XKBD_RU_HACK}" && "${PW_XKBD_RU_HACK}" == 1 ]] ; then | ||||
|     if [[ "${PW_XKBD_RU_HACK}" == 1 ]] ; then | ||||
|         export PW_XKBD="$(setxkbmap -query | grep -w ru | awk '{print($2)}')" | ||||
|         if [ ! -z ${PW_XKBD} ]; then | ||||
|             setxkbmap us,ru | ||||
|         fi | ||||
|     fi | ||||
|     if [[ -x "`which "gamemoderun" 2>/dev/null`" ]] && [[ "$PW_USE_GAMEMODE" = "1" ]] ; then | ||||
|     if [[ -x "`command -v "gamemoderun" 2>/dev/null`" ]] && [[ "$PW_USE_GAMEMODE" = "1" ]] ; then | ||||
|         export GAMEMODERUN=1 | ||||
|         PW_GAMEMODERUN_SLR="gamemoderun" | ||||
|         # if [[ ! -z "${PW_LD_PRELOAD}" ]] | ||||
|         # then export PW_LD_PRELOAD="${PW_LD_PRELOAD}:${MANGOHUD_LIB_NAME}" | ||||
|         # else export PW_LD_PRELOAD="${MANGOHUD_LIB_NAME}" | ||||
|         # fi | ||||
|         systemctl enable --now --user gamemoded &>/dev/null | ||||
|         echo "Gamemod will be launched." | ||||
|         print_info "Gamemod will be launched." | ||||
|     else | ||||
|         export GAMEMODERUN=0 | ||||
|         echo "Gamemod is not installed or disabled in vars script or db file: PW_USE_GAMEMODE=$PW_USE_GAMEMODE" | ||||
| @@ -236,33 +240,45 @@ start_portwine () { | ||||
|     pw_other_fixes | ||||
|  | ||||
|     check_dirs_and_files_in_pfx () { | ||||
|         create_new_dir "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}" | ||||
|         create_new_dir "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c" | ||||
|         create_new_dir "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/dosdevices" | ||||
|         create_new_dir "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/" | ||||
|         create_new_dir "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/" | ||||
|         [ ! -d "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/dosdevices/c:" ] && try_force_link_dir "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/dosdevices/c:" | ||||
|         [ ! -d "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/dosdevices/z:" ] && try_force_link_dir "/" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/dosdevices/z:" | ||||
|         create_new_dir "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/Fonts/" | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"LiberationSans-Regular.ttf "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/Fonts/"arial.ttf | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"LiberationSans-Bold.ttf "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/Fonts/"arialbd.ttf | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"LiberationSerif-Regular.ttf "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/Fonts/"times.ttf | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"LiberationMono-Regular.ttf "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/Fonts/"cour.ttf | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"LiberationMono-Bold.ttf "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/Fonts/"courbd.ttf | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"msyh.ttf "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/Fonts/"msyh.ttf | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"malgun.ttf "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/Fonts/"malgun.ttf | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"micross.ttf "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/Fonts/"micross.ttf | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"nirmala.ttf "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/Fonts/"nirmala.ttf | ||||
|         create_new_dir "${WINEPREFIX}" | ||||
|         create_new_dir "${WINEPREFIX}/drive_c" | ||||
|         create_new_dir "${WINEPREFIX}/dosdevices" | ||||
|         create_new_dir "${WINEPREFIX}/drive_c/windows/syswow64/" | ||||
|         create_new_dir "${WINEPREFIX}/drive_c/windows/system32/" | ||||
|         [ ! -d "${WINEPREFIX}/dosdevices/c:" ] && try_force_link_dir "${WINEPREFIX}/drive_c/" "${WINEPREFIX}/dosdevices/c:" | ||||
|         [ ! -d "${WINEPREFIX}/dosdevices/z:" ] && try_force_link_dir "/" "${WINEPREFIX}/dosdevices/z:" | ||||
|         create_new_dir "${WINEPREFIX}/drive_c/windows/Fonts/" | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"LiberationSans-Regular.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"arial.ttf | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"LiberationSans-Bold.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"arialbd.ttf | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"LiberationSerif-Regular.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"times.ttf | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"LiberationMono-Regular.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"cour.ttf | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"LiberationMono-Bold.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"courbd.ttf | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"msyh.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"msyh.ttf | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"malgun.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"malgun.ttf | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"micross.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"micross.ttf | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"nirmala.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"nirmala.ttf | ||||
|  | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"simsun.ttc "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/Fonts/"simsun.ttc | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"msgothic.ttc "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/Fonts/"msgothic.ttc | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"simsun.ttc "${WINEPREFIX}/drive_c/windows/Fonts/"simsun.ttc | ||||
|         try_force_link_file "${WINEDIR}/share/fonts/"msgothic.ttc "${WINEPREFIX}/drive_c/windows/Fonts/"msgothic.ttc | ||||
|          | ||||
|         try_force_link_file "${WINEDIR}/share/wine/fonts/"tahoma.ttf "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/Fonts/"tahoma.ttf | ||||
|         try_force_link_file "${WINEDIR}/share/wine/fonts/"tahoma.ttf "${WINEPREFIX}/drive_c/windows/Fonts/"tahoma.ttf | ||||
|     } | ||||
|  | ||||
|     PROGPFX_URL="github.com/Castro-Fidel/PortWINE/releases/download/progpfx${PROGPFX_VER}/progpfx${PROGPFX_VER}.tar.xz" | ||||
|     if [[ "${PW_PREFIX_NAME}" == "PROGRAMS" && ! -f "${WINEPREFIX}"/.progpfx ]] ; then | ||||
|         print_info "Download and install PROGRAMS pfx..." | ||||
|         if try_download "${PROGPFX_URL}" "${PORT_WINE_PATH}/data/tmp/progpfx.tar.xz" ; then | ||||
|             unpack_tar_xz "${PORT_WINE_PATH}/data/tmp/progpfx.tar.xz" "${PORT_WINE_PATH}/data/prefixes/" | ||||
|             try_remove_file "${PORT_WINE_PATH}/data/tmp/progpfx.tar.xz" | ||||
|         else | ||||
|             try_remove_file "${PORT_WINE_PATH}/data/tmp/progpfx.tar.xz" | ||||
|             zenity_error_download && exit 1 | ||||
|         fi | ||||
|     fi | ||||
|          | ||||
|     DOTPFX_URL="github.com/Castro-Fidel/PortWINE/releases/download/dotpfx${DOTPFX_VER}/dotpfx${DOTPFX_VER}.tar.xz" | ||||
|     if [[ "${update_loc}" == "RUS" && "${PW_PREFIX_NAME}" == "DOTNET" && ! -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/.dotnet48 ]] ; then | ||||
|         print_info "Download and install DOTNET..." | ||||
|     if [[ "${PW_PREFIX_NAME}" == "DOTNET" && ! -f "${WINEPREFIX}"/.dotnet48 ]] ; then | ||||
|         print_info "Download and install DOTNET pfx..." | ||||
|         if try_download "${DOTPFX_URL}" "${PORT_WINE_PATH}/data/tmp/dotpfx.tar.xz" ; then | ||||
|             unpack_tar_xz "${PORT_WINE_PATH}/data/tmp/dotpfx.tar.xz" "${PORT_WINE_PATH}/data/prefixes/" | ||||
|             try_remove_file "${PORT_WINE_PATH}/data/tmp/dotpfx.tar.xz" | ||||
| @@ -274,88 +290,95 @@ start_portwine () { | ||||
|      | ||||
|     pw_update_pfx_cover_gui | ||||
|  | ||||
|     if [[ ! -d "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}" || ! -d "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/drive_c/windows || \ | ||||
|     ! -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/userdef.reg || ! -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/system.reg || \ | ||||
|     ! -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/user.reg ]] | ||||
|     if [[ ! -d "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}" \ | ||||
|     || ! -d "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/drive_c/windows \ | ||||
|     || ! -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/userdef.reg \ | ||||
|     || ! -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/system.reg \ | ||||
|     || ! -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}"/user.reg ]] | ||||
|     then | ||||
|         pw_clear_pfx | ||||
|         check_dirs_and_files_in_pfx | ||||
|         if [[ -f "${PW_WINELIB}/default_pfx.tar.xz" ]] ; then | ||||
|         if [[ -f "${PW_WINELIB}/default_pfx.tar.xz" ]] && [[ "${DISABLE_CP_DEFPFX}" != 1 ]] ; then | ||||
|             unpack_tar_xz "${PW_WINELIB}/default_pfx.tar.xz" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/" 2>/dev/null | ||||
|         fi | ||||
|         ${pw_runtime} env LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" "${WINELOADER}" wineboot -u &>>"${PORT_WINE_TMP_PATH}/update_pfx_log" | ||||
|         wait_wineserver && | ||||
|         echo "${PW_WINE_USE}" > "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/.wine_ver" | ||||
|     elif [[ -z "`cat "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/.wine_ver" | grep ${PW_WINE_USE}`" || ! -d "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/dosdevices" ]] ; then  | ||||
|     elif [[ ! -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/.wine_ver" ]] \ | ||||
|         || [[ -z "`cat "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/.wine_ver" | grep ${PW_WINE_USE}`" ]] \ | ||||
|         || [[ ! -d "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/dosdevices" ]] ; then  | ||||
|         check_dirs_and_files_in_pfx | ||||
|         ${pw_runtime} env LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" "${WINELOADER}" wineboot -i &>>"${PORT_WINE_TMP_PATH}/update_pfx_log" | ||||
|         wait_wineserver && | ||||
|         echo "${PW_WINE_USE}" > "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/.wine_ver" | ||||
|     fi | ||||
|     [ ! -d "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/dosdevices/c:" ] && try_force_link_dir "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/dosdevices/c:" | ||||
|     [ ! -d "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/dosdevices/c:" ] && try_force_link_dir "${WINEPREFIX}/drive_c/" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/dosdevices/c:" | ||||
|     [ ! -d "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/dosdevices/z:" ] && try_force_link_dir "/" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/dosdevices/z:" | ||||
|     create_new_dir "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/users/steamuser" | ||||
|     if [ ! -d "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/users/${USER}" ]; then | ||||
| 	    try_force_link_dir "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/users/steamuser" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/users/${USER}" | ||||
|     create_new_dir "${WINEPREFIX}/drive_c/users/steamuser" | ||||
|     if [ ! -d "${WINEPREFIX}/drive_c/users/${USER}" ]; then | ||||
| 	    try_force_link_dir "${WINEPREFIX}/drive_c/users/steamuser" "${WINEPREFIX}/drive_c/users/${USER}" | ||||
|     fi | ||||
|     create_new_dir "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/users/Public/Documents/Steam" | ||||
|     create_new_dir "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/users/steamuser/Documents/Steam" | ||||
|     if [ ! -d "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/users/steamuser/My Documents" ] | ||||
|     then try_force_link_dir "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/users/steamuser/Documents" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/users/steamuser/My Documents" | ||||
|     create_new_dir "${WINEPREFIX}/drive_c/users/Public/Documents/Steam" | ||||
|     create_new_dir "${WINEPREFIX}/drive_c/users/steamuser/Documents/Steam" | ||||
|     if [ ! -d "${WINEPREFIX}/drive_c/users/steamuser/My Documents" ] | ||||
|     then try_force_link_dir "${WINEPREFIX}/drive_c/users/steamuser/Documents" "${WINEPREFIX}/drive_c/users/steamuser/My Documents" | ||||
|     fi | ||||
|     create_new_dir "${WINEPREFIX}/drive_c/users/steamuser/AppData/Roaming" | ||||
|     if [ ! -d "${WINEPREFIX}/drive_c/users/steamuser/Application Data" ] | ||||
|     then try_force_link_dir "${WINEPREFIX}/drive_c/users/steamuser/AppData/Roaming" "${WINEPREFIX}/drive_c/users/steamuser/Application Data" | ||||
|     fi | ||||
|     create_new_dir "${WINEPREFIX}/drive_c/users/steamuser/AppData/Local" | ||||
|     create_new_dir "${WINEPREFIX}/drive_c/users/steamuser/Local Settings" | ||||
|     if [ ! -d "${WINEPREFIX}/drive_c/users/steamuser/Local Settings/Application Data" ] | ||||
|     then try_force_link_dir "${WINEPREFIX}/drive_c/users/steamuser/AppData/Local" "${WINEPREFIX}/drive_c/users/steamuser/Local Settings/Application Data" | ||||
|     fi | ||||
|     #enabled BattleEye_Runtime and EasyAntiCheat_Runtime | ||||
|     export PROTON_BATTLEYE_RUNTIME="${PW_PLUGINS_PATH}/BattlEye_Runtime" | ||||
|     export PROTON_EAC_RUNTIME="${PW_PLUGINS_PATH}/EasyAntiCheat_Runtime" | ||||
|     var_winedlloverride_update "beclient,beclient_x64=b,n" | ||||
|     #try link d3d extras libs | ||||
|     if  [[ -d "${PW_PLUGINS_PATH}/d3d_extras" ]] | ||||
|     then PATH_TO_D3DEXTRAS="${PW_PLUGINS_PATH}/d3d_extras" | ||||
|     else PATH_TO_D3DEXTRAS="${PW_WINELIB}/d3d_extras" | ||||
|     if [[ "${PW_USE_EAC_AND_BE}" == 1 ]] ; then | ||||
|         export PROTON_BATTLEYE_RUNTIME="${PW_PLUGINS_PATH}/BattlEye_Runtime" | ||||
|         export PROTON_EAC_RUNTIME="${PW_PLUGINS_PATH}/EasyAntiCheat_Runtime" | ||||
|         var_winedlloverride_update "beclient,beclient_x64=b,n" | ||||
|     else | ||||
|         unset PROTON_BATTLEYE_RUNTIME PROTON_EAC_RUNTIME | ||||
|     fi | ||||
|     for d3d_extras_from_plugins in d3dcompiler_33 d3dcompiler_34 d3dcompiler_35 d3dcompiler_36 d3dcompiler_37 \ | ||||
|     d3dcompiler_38 d3dcompiler_39 d3dcompiler_40 d3dcompiler_41 d3dcompiler_42 d3dcompiler_43 d3dcompiler_46 \ | ||||
|     d3dcompiler_47 d3dx10_33 d3dx10_34 d3dx10_35 d3dx10_36 d3dx10_37 d3dx10_38 d3dx10_39 d3dx10_40 d3dx10_41 \ | ||||
|     d3dx10_42 d3dx10_43 d3dx10 d3dx11_42 d3dx11_43 d3dx9_24 d3dx9_25 d3dx9_26 d3dx9_27 d3dx9_28 d3dx9_29 d3dx9_30 \ | ||||
|     d3dx9_31 d3dx9_32 d3dx9_33 d3dx9_34 d3dx9_35 d3dx9_36 d3dx9_37 d3dx9_38 d3dx9_39 d3dx9_40 d3dx9_41 d3dx9_42 d3dx9_43 | ||||
|     do | ||||
|         if [[ "${PW_USE_D3D_EXTRAS}" == 1 ]] ; then | ||||
|             try_force_link_file "${PATH_TO_D3DEXTRAS}/x64/${d3d_extras_from_plugins}.dll" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/" | ||||
|             try_force_link_file "${PATH_TO_D3DEXTRAS}/x32/${d3d_extras_from_plugins}.dll" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/" | ||||
|             var_winedlloverride_update "${d3d_extras_from_plugins}=n,b" | ||||
|         else | ||||
|             if ! try_force_link_file "${WINEDIR}"/lib/wine/fakedlls/${d3d_extras_from_plugins}.dll "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/" | ||||
|             then try_force_link_file "${WINEDIR}"/lib/wine/i386-windows/${d3d_extras_from_plugins}.dll "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/" | ||||
|             fi | ||||
|             if ! try_force_link_file "${WINEDIR}"/lib64/wine/fakedlls/${d3d_extras_from_plugins}.dll "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/" | ||||
|             then try_force_link_file "${WINEDIR}"/lib64/wine/x86_64-windows/${d3d_extras_from_plugins}.dll "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/" | ||||
|             fi | ||||
|         fi | ||||
|         if [[ -z "`grep "${d3d_extras_from_plugins}" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log"`" ]] ; then | ||||
|             echo "${d3d_extras_from_plugins}" >> "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" | ||||
|         fi | ||||
|     done | ||||
|     if [[ -z "`grep d3dx9 "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log"`" ]] ; then | ||||
|         echo "d3dx9" >> "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" | ||||
|     fi | ||||
|     var_winedlloverride_update "steam_api,steam_api64,steamclient,steamclient64=n;dotnetfx35.exe,dotnetfx35setup.exe=b;lsteamclient,winemenubuilder=d" | ||||
|  | ||||
|     # export TOTAL_VRAM=`"${PW_WINELIB}/runtime/files/bin/glxinfo" -B | grep Total | awk -F: '{print $2}' | awk '{print $1}'` | ||||
|     # echo "TOTAL_VRAM=${TOTAL_VRAM}" | ||||
|  | ||||
|     echo "Try link wine DXGI by default..." | ||||
|     if ! try_force_link_file "${WINEDIR}"/lib/wine/fakedlls/dxgi.dll "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/dxgi.dll" | ||||
|     then try_force_link_file "${WINEDIR}"/lib/wine/i386-windows/dxgi.dll "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/dxgi.dll" | ||||
|     fi | ||||
|     if ! try_force_link_file "${WINEDIR}"/lib64/wine/fakedlls/dxgi.dll "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/dxgi.dll" | ||||
|     then try_force_link_file "${WINEDIR}"/lib64/wine/x86_64-windows/dxgi.dll "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/dxgi.dll" | ||||
|     fi | ||||
|     echo "Try link wine d3d filese by default..." | ||||
|     for wine_build_dll in d3d12core d3d12 d3d11 d3d10 d3d10core d3d10_1 d3d9 dxgi ; do | ||||
|         if ! try_force_link_file "${WINEDIR}/lib/wine/${wine_build_dll}.dll" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/${wine_build_dll}.dll" | ||||
|         then try_force_link_file "${WINEDIR}/lib/wine/i386-windows/${wine_build_dll}.dll" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/${wine_build_dll}.dll" | ||||
|     if [[ "${PW_USE_D3D_EXTRAS}" == 1 ]] ; then | ||||
|         if [[ -z "`grep d3dx9 "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log"`" ]] ; then | ||||
|             echo "d3dx9" >> "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" | ||||
|         fi | ||||
|         if ! try_force_link_file "${WINEDIR}/lib64/wine/${wine_build_dll}.dll" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/${wine_build_dll}.dll" | ||||
|         then try_force_link_file "${WINEDIR}/lib64/wine/x86_64-windows/${wine_build_dll}.dll" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/${wine_build_dll}.dll" | ||||
|         if  [[ -d "${PW_PLUGINS_PATH}/d3d_extras" ]] | ||||
|         then PATH_TO_D3DEXTRAS="${PW_PLUGINS_PATH}/d3d_extras" | ||||
|         else PATH_TO_D3DEXTRAS="${PW_WINELIB}/d3d_extras" | ||||
|         fi | ||||
|         #try link d3d extras libs | ||||
|         for d3d_extras_from_plugins in d3dcompiler_33 d3dcompiler_34 d3dcompiler_35 d3dcompiler_36 d3dcompiler_37 \ | ||||
|         d3dcompiler_38 d3dcompiler_39 d3dcompiler_40 d3dcompiler_41 d3dcompiler_42 d3dcompiler_43 d3dcompiler_46 \ | ||||
|         d3dcompiler_47 d3dx10_33 d3dx10_34 d3dx10_35 d3dx10_36 d3dx10_37 d3dx10_38 d3dx10_39 d3dx10_40 d3dx10_41 \ | ||||
|         d3dx10_42 d3dx10_43 d3dx10 d3dx11_42 d3dx11_43 d3dx9_24 d3dx9_25 d3dx9_26 d3dx9_27 d3dx9_28 d3dx9_29 d3dx9_30 \ | ||||
|         d3dx9_31 d3dx9_32 d3dx9_33 d3dx9_34 d3dx9_35 d3dx9_36 d3dx9_37 d3dx9_38 d3dx9_39 d3dx9_40 d3dx9_41 d3dx9_42 d3dx9_43 | ||||
|         do | ||||
|             try_force_link_file "${PATH_TO_D3DEXTRAS}/x64/${d3d_extras_from_plugins}.dll" "${WINEPREFIX}/drive_c/windows/system32/" | ||||
|             try_force_link_file "${PATH_TO_D3DEXTRAS}/x32/${d3d_extras_from_plugins}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/" | ||||
|             var_winedlloverride_update "${d3d_extras_from_plugins}=n" | ||||
|             if [[ -z "`grep "${d3d_extras_from_plugins}" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log"`" ]] ; then | ||||
|                 echo "${d3d_extras_from_plugins}" >> "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" | ||||
|             fi | ||||
|         done | ||||
|     fi | ||||
|     print_info "Try link wine DXGI by default..." | ||||
|     if ! try_force_link_file "${WINEDIR}"/lib/wine/fakedlls/dxgi.dll "${WINEPREFIX}/drive_c/windows/syswow64/dxgi.dll" | ||||
|     then try_force_link_file "${WINEDIR}"/lib/wine/i386-windows/dxgi.dll "${WINEPREFIX}/drive_c/windows/syswow64/dxgi.dll" | ||||
|     fi | ||||
|     if ! try_force_link_file "${WINEDIR}"/lib64/wine/fakedlls/dxgi.dll "${WINEPREFIX}/drive_c/windows/system32/dxgi.dll" | ||||
|     then try_force_link_file "${WINEDIR}"/lib64/wine/x86_64-windows/dxgi.dll "${WINEPREFIX}/drive_c/windows/system32/dxgi.dll" | ||||
|     fi | ||||
|     print_info "Try link wine d3d filese by default..." | ||||
|     for wine_build_dll in d3d12core d3d12 d3d11 d3d10 d3d10core d3d10_1 d3d9 d3d8 dxgi ; do | ||||
|         if ! try_force_link_file "${WINEDIR}/lib/wine/${wine_build_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/${wine_build_dll}.dll" | ||||
|         then try_force_link_file "${WINEDIR}/lib/wine/i386-windows/${wine_build_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/${wine_build_dll}.dll" | ||||
|         fi | ||||
|         if ! try_force_link_file "${WINEDIR}/lib64/wine/${wine_build_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/${wine_build_dll}.dll" | ||||
|         then try_force_link_file "${WINEDIR}/lib64/wine/x86_64-windows/${wine_build_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/${wine_build_dll}.dll" | ||||
|         fi | ||||
|     done | ||||
|  | ||||
| @@ -364,16 +387,16 @@ start_portwine () { | ||||
|     PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/opengl" | ||||
|      | ||||
|     if [[ "${PW_VULKAN_USE}" == "0" ]] ; then | ||||
|         echo "Use OpenGL" | ||||
|         print_info "Use OpenGL" | ||||
|         export GL_YIELD="NOTHING" | ||||
|         export mesa_glthread=true | ||||
|         var_winedlloverride_update "d3d11,d3d10,d3d10core,d3d10_1,d3d9,dxgi=b;d3d12,d3d12core=" | ||||
|         var_winedlloverride_update "d3d11,d3d10,d3d10core,d3d10_1,d3d9,wined3d9,dxgi=b;d3d12,d3d12core=" | ||||
|     elif [[ "${PW_VULKAN_USE}" == "3" ]] ; then | ||||
|         echo "Use GALLIUM-NINE (Native DX9 on MESA drivers)" | ||||
|         print_info "Use GALLIUM-NINE (Native DX9 on MESA drivers)" | ||||
|         export PW_GALLIUM_NINE_VER="0.8" | ||||
|         export PW_GALLIUM_NINE_PATH="${PW_PLUGINS_PATH}/gallium_nine_v.${PW_GALLIUM_NINE_VER}" | ||||
|         try_force_link_file "${PW_GALLIUM_NINE_PATH}/lib32/d3d9-nine.dll.so" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/d3d9.dll" | ||||
|         try_force_link_file "${PW_GALLIUM_NINE_PATH}/lib64/d3d9-nine.dll.so" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/d3d9.dll" | ||||
|         try_force_link_file "${PW_GALLIUM_NINE_PATH}/lib32/d3d9-nine.dll.so" "${WINEPREFIX}/drive_c/windows/syswow64/d3d9.dll" | ||||
|         try_force_link_file "${PW_GALLIUM_NINE_PATH}/lib64/d3d9-nine.dll.so" "${WINEPREFIX}/drive_c/windows/system32/d3d9.dll" | ||||
|         var_winedlloverride_update "d3d9=n;wined3d=b;dxvk_config,vulkan-1,winevulkan=" | ||||
|         unset FIND_D3D_MODULE D3D_MODULE_PATH | ||||
|         FIND_D3D_MODULE=`dirname $(find /usr/ -maxdepth 4 -type f -name "d3dadapter9.so.*") 2>/dev/null`  | ||||
| @@ -398,62 +421,70 @@ start_portwine () { | ||||
|         export ENABLE_VKBASALT=0 | ||||
|         export PW_MANGOHUD=0 | ||||
|         export WINE_FULLSCREEN_FSR=0 | ||||
|     elif [[ "${PW_VULKAN_USE}" == "4" ]] ; then | ||||
|         print_info "Use DAMAVAND (DirectX to wined3d vulkan)" | ||||
|         export WINE_D3D_CONFIG='renderer=vulkan' | ||||
|     else | ||||
|         echo "Use VKD3D-PROTON and DXVK (DX 9-12 to vulkan)" | ||||
|         print_info "Use VKD3D-PROTON, DXVK and D8VK (DirectX to vulkan)" | ||||
|         if [[ "${PW_USE_WINE_DXGI}" == 1 ]] ; then  | ||||
|             export CP_DXVK_FILES="d3d11 d3d10core d3d9 dxvk_config openvr_api_dxvk"   | ||||
|             var_winedlloverride_update dxgi=b | ||||
|         elif [[ "${USE_ALL_DXVK_DLLS}" == 1 ]] ; then  | ||||
|             export CP_DXVK_FILES="d3d11 d3d10core d3d10_1 d3d10 d3d9 dxgi dxvk_config openvr_api_dxvk"  | ||||
|         else | ||||
|             export CP_DXVK_FILES="d3d11 d3d10core d3d9 dxgi dxvk_config openvr_api_dxvk"  | ||||
|         fi | ||||
|  | ||||
|         if [[ "${PW_VULKAN_USE}" == "1" ]] ; then | ||||
|             PATH_TO_DXVK_FILES="${PW_VULKAN_DIR}/dxvk-${DXVK_STABLE_VER}" | ||||
|             PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_STABLE_VER}" | ||||
|             echo "DXVK v.${DXVK_STABLE_VER} in use" | ||||
|             echo "VKD3D-PROTON v.${VKD3D_STABLE_VER} in use" | ||||
|             print_info "DXVK v.${DXVK_STABLE_VER} in use" | ||||
|             print_info "VKD3D-PROTON v.${VKD3D_STABLE_VER} in use" | ||||
|         elif [[ "${PW_VULKAN_USE}" == "2" ]] ; then | ||||
|             PATH_TO_DXVK_FILES="${PW_VULKAN_DIR}/dxvk-${DXVK_GIT_VER}" | ||||
|             PATH_TO_VKD3D_FILES="${PW_VULKAN_DIR}/vkd3d-proton-${VKD3D_GIT_VER}" | ||||
|             echo "DXVK v.${DXVK_GIT_VER} in use" | ||||
|             echo "VKD3D-PROTON v.${VKD3D_GIT_VER} in use" | ||||
|             print_info "DXVK v.${DXVK_GIT_VER} in use" | ||||
|             print_info "VKD3D-PROTON v.${VKD3D_GIT_VER} in use" | ||||
|         fi | ||||
|         PATH_TO_D8VK_FILES="${PW_VULKAN_DIR}/d8vk-${D8VK_VER}" | ||||
|         print_info "D8VK v.${D8VK_VER} in use" | ||||
|  | ||||
|         echo "Try link native DXVK files..." | ||||
|         print_info "Try link native DXVK files..." | ||||
|         for wine_dxvk_dll in ${CP_DXVK_FILES} ; do | ||||
|             try_force_link_file "${PATH_TO_DXVK_FILES}/x32/${wine_dxvk_dll}.dll" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/${wine_dxvk_dll}.dll" | ||||
|             try_force_link_file "${PATH_TO_DXVK_FILES}/x64/${wine_dxvk_dll}.dll" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/${wine_dxvk_dll}.dll" | ||||
|             try_force_link_file "${PATH_TO_DXVK_FILES}/x32/${wine_dxvk_dll}.dll" "${WINEPREFIX}/drive_c/windows/syswow64/${wine_dxvk_dll}.dll" | ||||
|             try_force_link_file "${PATH_TO_DXVK_FILES}/x64/${wine_dxvk_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/${wine_dxvk_dll}.dll" | ||||
|             [[ "$?" == 0 ]] && var_winedlloverride_update "${wine_dxvk_dll}=n" | ||||
|         done | ||||
|  | ||||
|         echo "Try link native VKD3D files..." | ||||
|         for wine_vkd3d_dll in d3d12 d3d12core libvkd3d-shader-1 # libvkd3d-proton-utils-3 | ||||
|         do | ||||
|             try_force_link_file "${PATH_TO_VKD3D_FILES}/x86/${wine_vkd3d_dll}.dll" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/${wine_vkd3d_dll}.dll" | ||||
|             try_force_link_file "${PATH_TO_VKD3D_FILES}/x64/${wine_vkd3d_dll}.dll" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/${wine_vkd3d_dll}.dll" | ||||
|         print_info "Try link native VKD3D files..." | ||||
|         for wine_vkd3d_dll in d3d12 d3d12core libvkd3d-shader-1 libvkd3d-proton-utils-3 libvkd3d-1 ; do | ||||
|             if [[ -f "${PATH_TO_VKD3D_FILES}/x64/${wine_vkd3d_dll}.dll" ]] ; then | ||||
|                 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" | ||||
|             else | ||||
|                 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 | ||||
|         done | ||||
|  | ||||
|         print_info "Try link native D8VK file..." | ||||
|         try_force_link_file "${PATH_TO_D8VK_FILES}/x32/d3d8.dll" "${WINEPREFIX}/drive_c/windows/syswow64/d3d8.dll" | ||||
|         var_winedlloverride_update d3d8=n | ||||
|     fi | ||||
|       | ||||
|     if [[ "${PW_DX12_DISABLE}" == 1 ]]   | ||||
|     then var_winedlloverride_update "d3d12,d3d12core=" | ||||
|     else var_winedlloverride_update "d3d12,d3d12core=n" | ||||
|     then var_winedlloverride_update "d3d12,d3d12core,libvkd3d-1=" | ||||
|     else var_winedlloverride_update "d3d12,d3d12core,libvkd3d-1=n" | ||||
|     fi | ||||
|  | ||||
|     if [[ ! -d "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/vrclient/bin" ]] ; then | ||||
|         create_new_dir "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/vrclient/bin" | ||||
|         if ! try_force_link_file "${WINEDIR}"/lib/wine/fakedlls/vrclient.dll "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/vrclient/bin/vrclient.dll" | ||||
|         then try_force_link_file "${WINEDIR}"/lib/wine/i386-windows/vrclient.dll "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/vrclient/bin/vrclient.dll" | ||||
|     if [[ ! -d "${WINEPREFIX}/drive_c/vrclient/bin" ]] ; then | ||||
|         create_new_dir "${WINEPREFIX}/drive_c/vrclient/bin" | ||||
|         if ! try_force_link_file "${WINEDIR}"/lib/wine/fakedlls/vrclient.dll "${WINEPREFIX}/drive_c/vrclient/bin/vrclient.dll" | ||||
|         then try_force_link_file "${WINEDIR}"/lib/wine/i386-windows/vrclient.dll "${WINEPREFIX}/drive_c/vrclient/bin/vrclient.dll" | ||||
|         fi | ||||
|         if ! try_force_link_file "${WINEDIR}"/lib64/wine/fakedlls/vrclient_x64.dll "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/vrclient/bin/vrclient_x64.dll" | ||||
|         then try_force_link_file "${WINEDIR}"/lib64/wine/x86_64-windows/vrclient_x64.dll "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/vrclient/bin/vrclient_x64.dll" | ||||
|         if ! try_force_link_file "${WINEDIR}"/lib64/wine/fakedlls/vrclient_x64.dll "${WINEPREFIX}/drive_c/vrclient/bin/vrclient_x64.dll" | ||||
|         then try_force_link_file "${WINEDIR}"/lib64/wine/x86_64-windows/vrclient_x64.dll "${WINEPREFIX}/drive_c/vrclient/bin/vrclient_x64.dll" | ||||
|         fi | ||||
|     fi | ||||
|  | ||||
|     try_remove_dir "${PORT_WINE_TMP_PATH}/mesa_shader_cache" | ||||
|     try_remove_dir "${PORT_WINE_TMP_PATH}/vkd3d_cache" | ||||
|     try_remove_dir "${PORT_WINE_TMP_PATH}/dxvk_cache" | ||||
|     try_remove_dir "${PORT_WINE_TMP_PATH}/gl_shader_cache" | ||||
|   | ||||
|     if [[ "${PW_USE_SHADER_CACHE}" == 1 ]] ; then | ||||
|         create_new_dir "${PATH_TO_DXVK_FILES}/gl_shader_cache" | ||||
| @@ -482,12 +513,22 @@ start_portwine () { | ||||
|         unset WINE_FULLSCREEN_FAKE_CURRENT_RES WINE_FULLSCREEN_FSR_STRENGTH WINE_FULLSCREEN_INTEGER_SCALING | ||||
|     fi | ||||
|  | ||||
|     for try_cp_dll_from_wine in "ntdll.dll" "vulkan-1.dll" ; do | ||||
|         if ! try_copy_file "${WINEDIR}"/lib/wine/fakedlls/${try_cp_dll_from_wine} "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/${try_cp_dll_from_wine}" | ||||
|         then try_copy_file "${WINEDIR}"/lib/wine/i386-windows/${try_cp_dll_from_wine} "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/syswow64/${try_cp_dll_from_wine}" | ||||
|     if [[ "${PW_WINE_CPU_TOPOLOGY}" != "disabled" ]] ; then | ||||
|         export WINE_CPU_TOPOLOGY="${PW_WINE_CPU_TOPOLOGY}" | ||||
|     else | ||||
|         unset WINE_CPU_TOPOLOGY | ||||
|     fi | ||||
|  | ||||
|     for try_cp_dll_from_wine in "ntdll.dll" "vulkan-1.dll" "winevulkan.dll" "amd_ags_x64.dll" "ir50_32.dll" ; do | ||||
|         if try_copy_file "${WINEDIR}/lib/wine/i386-windows/${try_cp_dll_from_wine}" "${WINEPREFIX}/drive_c/windows/syswow64/${try_cp_dll_from_wine}"  | ||||
|         then print_info "Try copy $try_cp_dll_from_wine to syswow64... OK." | ||||
|         elif ! try_copy_file "${WINEDIR}/lib/wine/fakedlls/${try_cp_dll_from_wine}" "${WINEPREFIX}/drive_c/windows/syswow64/${try_cp_dll_from_wine}" | ||||
|         then try_remove_file "${WINEPREFIX}/drive_c/windows/syswow64/${try_cp_dll_from_wine}" | ||||
|         fi | ||||
|         if ! try_copy_file "${WINEDIR}"/lib64/wine/fakedlls/${try_cp_dll_from_wine} "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/${try_cp_dll_from_wine}" | ||||
|         then try_copy_file "${WINEDIR}"/lib64/wine/x86_64-windows/${try_cp_dll_from_wine} "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c/windows/system32/${try_cp_dll_from_wine}" | ||||
|         if try_copy_file "${WINEDIR}/lib64/wine/x86_64-windows/${try_cp_dll_from_wine}" "${WINEPREFIX}/drive_c/windows/system32/${try_cp_dll_from_wine}" | ||||
|         then print_info "Try copy $try_cp_dll_from_wine to system32... OK." | ||||
|         elif ! try_copy_file "${WINEDIR}/lib64/wine/fakedlls/${try_cp_dll_from_wine}" "${WINEPREFIX}/drive_c/windows/system32/${try_cp_dll_from_wine}" | ||||
|         then try_remove_file "${WINEPREFIX}/drive_c/windows/system32/${try_cp_dll_from_wine}" | ||||
|         fi | ||||
|     done | ||||
|  | ||||
| @@ -495,6 +536,7 @@ start_portwine () { | ||||
|     if [[ ! -z "${PW_MUST_HAVE_DLL}" ]] | ||||
|     then export PW_DLL_INSTALL="`echo "${PW_MUST_HAVE_DLL} ${PW_DLL_INSTALL}" | awk '{ for(i=1;i<=NF;i++){a[$i]++} }END{ for(i in a){printf("%s ",i)} }' `" | ||||
|     fi | ||||
|  | ||||
|     if [[ ! -z "${PW_DLL_INSTALL}" ]] ; then | ||||
|         export PW_DLL_NEED_INSTALL="" | ||||
|         export USE_WT_FROM_DB=0 | ||||
| @@ -510,7 +552,7 @@ start_portwine () { | ||||
|                 sed -i '/vcrun2015/d' "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" | ||||
|                 sed -i '/vcrun2017/d' "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" | ||||
|             fi | ||||
|             grep "${need_install_dll_to_pfx}" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" | ||||
|             grep "${need_install_dll_to_pfx}" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/winetricks.log" &>/dev/null | ||||
|             if [[ "$?" == "1" ]] ; then | ||||
|                 if [[ -z "${PW_DLL_NEED_INSTALL}" ]] | ||||
|                 then export PW_DLL_NEED_INSTALL="${need_install_dll_to_pfx}" | ||||
| @@ -530,7 +572,8 @@ start_portwine () { | ||||
|             kill_portwine | ||||
|         fi | ||||
|     fi | ||||
|     if [[ -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg" ]] && [[ -z `cat "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg" | grep "Windows $PW_WINDOWS_VER"` ]] ; then | ||||
|  | ||||
|     if [[ -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg" ]] && [[ -z `grep "Windows $PW_WINDOWS_VER" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg"` ]] ; then | ||||
|         if [[ ! -z "${PW_WINDOWS_VER}" && `echo "$PW_WINDOWS_VER" | sed 's/.*/\L&/'` == "xp" ]] ; then | ||||
|             export PW_WINDOWS_VER="xp64" | ||||
|         fi | ||||
| @@ -540,20 +583,22 @@ start_portwine () { | ||||
|         kill_portwine | ||||
|         echo "Set to win${PW_WINDOWS_VER}" | ||||
|     fi | ||||
|  | ||||
|     if [[ "${portwine_exe}" == *-Shipping.exe ]] ; then  | ||||
|         echo "Disable EAC" | ||||
|         [[ -z "${LAUNCH_PARAMETERS}" ]] && export LAUNCH_PARAMETERS+=" -eac-nop-loaded " | ||||
|     fi | ||||
|  | ||||
|     sleep 1 | ||||
|     pw_stop_progress_bar && | ||||
|     pw_tray_icon && | ||||
|  | ||||
|     if [[ "${PW_CHECK_AUTOINSTAL}" != "1" ]] ; then | ||||
|         pw_start_progress_bar_cover "${PW_GUI_ICON_PATH}/covers/pw_loading_cover.gif" | ||||
|     fi | ||||
|     if [[ "${PW_PREFIX_NAME}" == "DOTNET" ]] && [[ "${PW_VULKAN_USE}" == "1" || "${PW_VULKAN_USE}" == "2" ]] ; then | ||||
|         var_winedlloverride_update "libglesv2=" | ||||
|     fi | ||||
|  | ||||
|     add_in_start_portwine | ||||
|  | ||||
|     if [[ -f "${PATH_TO_GAME}/dxvk.conf" ]] ; then | ||||
|         export DXVK_CONFIG_FILE="${PATH_TO_GAME}/dxvk.conf" | ||||
|     fi | ||||
| @@ -561,7 +606,7 @@ start_portwine () { | ||||
|  | ||||
| pw_run () { | ||||
|     unset GDK_BACKEND | ||||
|     if [[ ! -z "$portwine_exe" ]] ; then | ||||
|     if [[ -n "${PATH_TO_GAME}" ]] ; then | ||||
|         cd "${PATH_TO_GAME}" | ||||
|     else | ||||
|         cd "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/drive_c" | ||||
| @@ -570,12 +615,14 @@ pw_run () { | ||||
|     pw_vkbasalt_check | ||||
|     PW_LOG_TO_FILE="${PORT_WINE_PATH}/${portname}.log" | ||||
|     print_var "WINEDIR" "WINEPREFIX" "WINEDLLOVERRIDES" "PATH_TO_GAME" "PW_WINE_USE" "PW_VULKAN_USE" "VKD3D_CONFIG" \ | ||||
|     "PW_LD_LIBRARY_PATH" "PATH" "WINEESYNC" "WINEFSYNC" "WINEFSYNC_FUTEX2" "WINEDLLPATH" | ||||
|     "PW_LD_LIBRARY_PATH" "PATH" "WINEESYNC" "WINEFSYNC" "WINEFSYNC_FUTEX2" "WINEDLLPATH" "WINE_CPU_TOPOLOGY" | ||||
|     if [[ "${PW_LOG}" == 1 ]] ; then | ||||
|         echo "WINEDLLOVERRIDES=${WINEDLLOVERRIDES}" >> "${PW_LOG_TO_FILE}" | ||||
|         echo "------------------------------------" >> "${PW_LOG_TO_FILE}" | ||||
|         echo "Log WINE:" >> "${PW_LOG_TO_FILE}" | ||||
|         ${optirun_on} ${PW_GAMEMODERUN_SLR} ${pw_runtime} \ | ||||
|         echo "" | ||||
|         print_debug "Log from RUNTIME and WINE:" | ||||
|         env ${optirun_on} ${PW_GAMEMODERUN_SLR} ${pw_runtime} \ | ||||
|         env ${PW_MANGOHUD_SLR} \ | ||||
|         PATH="${PATH}" \ | ||||
|         LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" \ | ||||
| @@ -588,7 +635,9 @@ pw_run () { | ||||
|             export PW_ADD_TO_ARGS_IN_RUNTIME="--xterm" | ||||
|             pw_init_runtime | ||||
|         fi | ||||
|         ${optirun_on} ${PW_GAMEMODERUN_SLR} ${pw_runtime} \ | ||||
|         echo "" | ||||
|         print_debug "Log from RUNTIME and WINE:" | ||||
|         env ${optirun_on} ${PW_GAMEMODERUN_SLR} ${pw_runtime} \ | ||||
|         env ${PW_MANGOHUD_SLR} \ | ||||
|         PATH="${PATH}" \ | ||||
|         LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" \ | ||||
| @@ -617,7 +666,7 @@ fi | ||||
| unset MANGOHUD MANGOHUD_DLSYM PW_NO_ESYNC PW_NO_FSYNC PW_VULKAN_USE WINEDLLOVERRIDES PW_NO_WRITE_WATCH PW_YAD_SET PW_ICON_FOR_YAD | ||||
| unset PW_CHECK_AUTOINSTAL PW_VKBASALT_EFFECTS PW_VKBASALT_FFX_CAS PORTWINE_DB PORTWINE_DB_FILE PW_DISABLED_CREATE_DB | ||||
| unset CHK_SYMLINK_FILE MESA_GL_VERSION_OVERRIDE PATH_TO_GAME PW_START_DEBUG PORTPROTON_NAME PORTWINE_CREATE_SHORTCUT_NAME | ||||
| unset PW_PREFIX_NAME WINEPREFIX VULKAN_MOD PW_WINE_VER PW_ADD_TO_ARGS_IN_RUNTIME PW_GAMEMODERUN_SLR AMD_VULKAN_ICD  | ||||
| unset PW_PREFIX_NAME WINEPREFIX VULKAN_MOD PW_WINE_VER PW_ADD_TO_ARGS_IN_RUNTIME PW_GAMEMODERUN_SLR AMD_VULKAN_ICD PW_WINE_CPU_TOPOLOGY | ||||
| unset PW_NAME_D_NAME PW_NAME_D_ICON PW_NAME_D_EXEC PW_EXEC_FROM_DESKTOP PW_ALL_DF PW_GENERATE_BUTTONS PW_NAME_D_ICON PW_NAME_D_ICON_48 | ||||
|  | ||||
| export portname=PortProton | ||||
| @@ -641,8 +690,9 @@ if [[ -d "${PORT_WINE_PATH}/data/dist" ]] ; then | ||||
|     IFS="$orig_IFS" | ||||
| fi | ||||
|  | ||||
| create_new_dir "${PORT_WINE_PATH}/data/prefixes" | ||||
| create_new_dir "${PORT_WINE_PATH}/data/prefixes/DEFAULT" | ||||
| create_new_dir "${PORT_WINE_PATH}/data/prefixes/DOTNET" | ||||
| create_new_dir "${PORT_WINE_PATH}/data/prefixes/PROGRAMS" | ||||
| try_force_link_dir "${PORT_WINE_PATH}/data/prefixes" "${PORT_WINE_PATH}" | ||||
|  | ||||
| orig_IFS="$IFS" | ||||
|   | ||||
| @@ -53,7 +53,11 @@ if [ "${PW_SILENT_INSTALL}" = "1" ] ; then | ||||
| 				ln -s "${PW_OLD_PATH}/PortProton" "${XDG_DATA_HOME}/PortWINE" | ||||
| 			fi | ||||
| 		fi | ||||
| 		ln -s "${XDG_DATA_HOME}/PortWINE" "${HOME}/" | ||||
| 		if [ ! -L "${HOME}/PortWINE" ]; then | ||||
| 		    ln -s "${XDG_DATA_HOME}/PortWINE" "${HOME}/" | ||||
| 		else | ||||
| 		    echo "Symbolic link already exists." | ||||
| 		fi | ||||
| 		echo "Restarting PP after installing..." | ||||
| 		/usr/bin/env bash -c "${XDG_DATA_HOME}/PortWINE/PortProton/data/scripts/start.sh" $@ &  | ||||
| 		exit 0 | ||||
| @@ -62,6 +66,6 @@ if [ "${PW_SILENT_INSTALL}" = "1" ] ; then | ||||
| 	fi | ||||
| else | ||||
| 	`zenity --info --title "${inst_set_top}" --text "${inst_succ}" --no-wrap ` > /dev/null 2>&1 | ||||
| 	xdg-open "https://linux-gaming.ru/portproton/" > /dev/null 2>&1 & exit 0 | ||||
| 	 xdg-open "https://linux-gaming.ru/portproton/" > /dev/null 2>&1 & exit 0 | ||||
| fi | ||||
| unset INSTALLING_PORT | ||||
| unset INSTALLING_PORT | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| #!/usr/bin/env bash | ||||
| # Author: linux-gaming.ru | ||||
| # clear | ||||
|  | ||||
| export NO_AT_BRIDGE=1 | ||||
| export pw_full_command_line=("$0" $*) | ||||
| if [ -f "$1" ]; then | ||||
| @@ -8,7 +8,7 @@ if [ -f "$1" ]; then | ||||
| fi | ||||
| . "$(dirname $(readlink -f "$0"))/runlib" | ||||
| kill_portwine | ||||
| killall -15 yad_new 2>/dev/null | ||||
| killall -15 yad_v12_3 2>/dev/null | ||||
| kill -TERM `pgrep -a yad | grep ${portname} | head -n 1 | awk '{print $1}'` 2>/dev/null | ||||
|  | ||||
| if [[ -f "/usr/bin/portproton" ]] && [[ -f "${HOME}/.local/share/applications/PortProton.desktop" ]] ; then | ||||
| @@ -25,8 +25,8 @@ if [[ -f "${PORT_WINE_TMP_PATH}/tmp_main_gui_size" ]] && [[ -n "$(cat ${PORT_WIN | ||||
|     export PW_MAIN_SIZE_W="$(cat ${PORT_WINE_TMP_PATH}/tmp_main_gui_size | awk '{print $1}')" | ||||
|     export PW_MAIN_SIZE_H="$(cat ${PORT_WINE_TMP_PATH}/tmp_main_gui_size | awk '{print $2}')" | ||||
| else | ||||
|     export PW_MAIN_SIZE_W="1000" | ||||
|     export PW_MAIN_SIZE_H="260" | ||||
|     export PW_MAIN_SIZE_W="1100" | ||||
|     export PW_MAIN_SIZE_H="300" | ||||
| fi     | ||||
|  | ||||
| if [[ -n $(basename "${portwine_exe}" | grep .ppack) ]] ; then | ||||
| @@ -123,7 +123,7 @@ portwine_start_debug () { | ||||
|     echo "$PORT_WINE_PATH" >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     echo "----------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     echo "Operating system" >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     lsb_release -d | sed s/Description/ОС/g >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     cat /etc/os-release | grep -oP 'PRETTY_NAME="\K[^"]+' >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     echo "--------------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     echo "Desktop environment:" >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     echo "Desktop session: ${DESKTOP_SESSION}" >> "${PORT_WINE_PATH}/${portname}.log" | ||||
| @@ -142,20 +142,20 @@ portwine_start_debug () { | ||||
|     echo "Graphic cards and drivers:" >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     echo 'lspci -k | grep -EA3 VGA|3D|Display:' >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     echo $(lspci -k | grep -EA3 'VGA|3D|Display') >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     [[ `which glxinfo` ]] && glxinfo -B >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     [[ `command -v glxinfo` ]] && glxinfo -B >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     echo " " >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     echo "inxi -G:" >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     "${PW_WINELIB}/portable/bin/inxi" -G >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     echo "----------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     echo "Vulkan info device name:" >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     [[ `which vulkaninfo` ]] && vulkaninfo | grep deviceName >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     [[ `command -v vulkaninfo` ]] && vulkaninfo | grep deviceName >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     "${PW_WINELIB}/portable/bin/vkcube" --c 50 | ||||
|     if [ $? -eq 0 ]; then | ||||
|         echo "Vulkan cube test passed successfully" >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     else | ||||
|         echo "Vkcube test completed with error" >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|     fi | ||||
|     if [ ! -x "$(which gamemoderun 2>/dev/null)" ] | ||||
|     if [ ! -x "$(command -v gamemoderun 2>/dev/null)" ] | ||||
|     then | ||||
|         echo "---------------------------------------------" >> "${PORT_WINE_PATH}/${portname}.log" | ||||
|         echo "!!!gamemod not found!!!"  >> "${PORT_WINE_PATH}/${portname}.log" | ||||
| @@ -188,7 +188,7 @@ portwine_start_debug () { | ||||
|     sleep 3 | ||||
|     pw_stop_progress_bar_cover | ||||
|     unset PW_TIMER | ||||
|     while read -r line || [[ -n $(pgrep -a yad | grep "yad_new --text-info --tail --button="STOP":0 --title="DEBUG"" | awk '{print $1}') ]] ; do | ||||
|     while read -r line || [[ -n $(pgrep -a yad | grep "yad_v12_3 --text-info --tail --button="STOP":0 --title="DEBUG"" | awk '{print $1}') ]] ; do | ||||
|             sleep 0.005 | ||||
|             if [[ -n "${line}" ]] && [[ -z "$(echo "${line}" | grep -i "kerberos")" ]] \ | ||||
|                                     && [[ -z "$(echo "${line}" | grep -i "ntlm")" ]] | ||||
| @@ -199,8 +199,8 @@ portwine_start_debug () { | ||||
|                 sleep 3 | ||||
|                 PW_TIMER=1 | ||||
|             fi | ||||
|     done < "${PORT_WINE_PATH}/${portname}.log" | "${pw_yad_new}" --text-info --tail --button="STOP":0 --title="DEBUG" \ | ||||
|     --skip-taskbar --center --width=800 --height=400 --text "${port_debug}" && | ||||
|     done < "${PORT_WINE_PATH}/${portname}.log" | "${pw_yad_v12_3}" --text-info --tail --button="STOP":0 --title="DEBUG" \ | ||||
|     --skip-taskbar --width=800 --height=400 --text "${port_debug}" 2>/dev/null && | ||||
|     kill_portwine | ||||
| #    sleep 1 && zenity --info --title "DEBUG" --text "${port_debug}" --no-wrap &> /dev/null && kill_portwine | ||||
|     sed -i '/.fx$/d' "${PORT_WINE_PATH}/${portname}.log" | ||||
| @@ -210,8 +210,8 @@ portwine_start_debug () { | ||||
|     sed -i '/Uploading is disabled/d' "${PORT_WINE_PATH}/${portname}.log" | ||||
|     deb_text=$(cat "${PORT_WINE_PATH}/${portname}.log"  | awk '! a[$0]++')  | ||||
|     echo "$deb_text" > "${PORT_WINE_PATH}/${portname}.log" | ||||
|     "$pw_yad" --title="${portname}.log" --borders=7 --no-buttons --text-align=center \ | ||||
|     --text-info --show-uri --wrap --center --width=1200 --height=550  --uri-color=red \ | ||||
|     "$pw_yad" --title="${portname}.log" --borders=3 --no-buttons --text-align=center \ | ||||
|     --text-info --show-uri --wrap --width=1200 --height=550  --uri-color=red \ | ||||
|     --filename="${PORT_WINE_PATH}/${portname}.log" | ||||
|     stop_portwine | ||||
| } | ||||
| @@ -290,20 +290,20 @@ pw_prefix_manager () { | ||||
|         pw_stop_progress_bar | ||||
|  | ||||
|         KEY_EDIT_MANAGER_GUI=$RANDOM | ||||
|         "${pw_yad_new}" --plug=$KEY_EDIT_MANAGER_GUI --tabnum=1 --list --checklist \ | ||||
|         "${pw_yad_v12_3}" --plug=$KEY_EDIT_MANAGER_GUI --tabnum=1 --list --checklist \ | ||||
|         --text="Select components to install in prefix: <b>\"${PW_PREFIX_NAME}\"</b>, using wine: <b>\"${PW_WINE_USE}\"</b>" \ | ||||
|         --column=set --column=dll --column=info < "${PORT_WINE_TMP_PATH}/dll_list_tmp" 1>> "${PORT_WINE_TMP_PATH}/to_winetricks" & | ||||
|         --column=set --column=dll --column=info < "${PORT_WINE_TMP_PATH}/dll_list_tmp" 1>> "${PORT_WINE_TMP_PATH}/to_winetricks" 2>/dev/null & | ||||
|  | ||||
|         "${pw_yad_new}" --plug=$KEY_EDIT_MANAGER_GUI --tabnum=2 --list --checklist \ | ||||
|         "${pw_yad_v12_3}" --plug=$KEY_EDIT_MANAGER_GUI --tabnum=2 --list --checklist \ | ||||
|         --text="Select fonts to install in prefix: <b>\"${PW_PREFIX_NAME}\"</b>, using wine: <b>\"${PW_WINE_USE}\"</b>" \ | ||||
|         --column=set --column=dll --column=info < "${PORT_WINE_TMP_PATH}/fonts_list_tmp" 1>> "${PORT_WINE_TMP_PATH}/to_winetricks" & | ||||
|         --column=set --column=dll --column=info < "${PORT_WINE_TMP_PATH}/fonts_list_tmp" 1>> "${PORT_WINE_TMP_PATH}/to_winetricks" 2>/dev/null & | ||||
|  | ||||
|         "${pw_yad_new}" --plug=$KEY_EDIT_MANAGER_GUI --tabnum=3 --list --checklist \ | ||||
|         "${pw_yad_v12_3}" --plug=$KEY_EDIT_MANAGER_GUI --tabnum=3 --list --checklist \ | ||||
|         --text="Change config for prefix: <b>\"${PW_PREFIX_NAME}\"</b>" \ | ||||
|         --column=set --column=dll --column=info < "${PORT_WINE_TMP_PATH}/settings_list_tmp" 1>> "${PORT_WINE_TMP_PATH}/to_winetricks" & | ||||
|         --column=set --column=dll --column=info < "${PORT_WINE_TMP_PATH}/settings_list_tmp" 1>> "${PORT_WINE_TMP_PATH}/to_winetricks" 2>/dev/null & | ||||
|  | ||||
|         "${pw_yad_new}" --key=$KEY_EDIT_MANAGER_GUI --notebook --borders=5 --width=700 --height=600 --center \ | ||||
|         --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "PREFIX MANAGER..." --tab-pos=bottom --tab="DLL" --tab="FONTS" --tab="SETTINGS" | ||||
|         "${pw_yad_v12_3}" --key=$KEY_EDIT_MANAGER_GUI --notebook --borders=3 --width=900 --height=800 \ | ||||
|         --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "PREFIX MANAGER..." --tab-pos=bottom --tab="DLL" --tab="FONTS" --tab="SETTINGS" 2>/dev/null | ||||
|         YAD_STATUS="$?" | ||||
|         if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then | ||||
|             stop_portwine | ||||
| @@ -343,7 +343,7 @@ pw_winetricks () { | ||||
|     pw_stop_progress_bar | ||||
|     echo "WINETRICKS..." > "${PORT_WINE_TMP_PATH}/update_pfx_log" | ||||
|     unset PW_TIMER | ||||
|     while read -r line || [[ -n $(pgrep -a yad | grep "yad_new --text-info --tail --no-buttons --title="WINETRICKS"" | awk '{print $1}') ]] ; do | ||||
|     while read -r line || [[ -n $(pgrep -a yad | grep "yad_v12_3 --text-info --tail --no-buttons --title="WINETRICKS"" | awk '{print $1}') ]] ; do | ||||
|             sleep 0.005 | ||||
|             if [[ -n "${line}" ]] && [[ -z "$(echo "${line}" | grep -i "gstreamer")" ]] \ | ||||
|                                     && [[ -z "$(echo "${line}" | grep -i "kerberos")" ]] \ | ||||
| @@ -355,11 +355,11 @@ pw_winetricks () { | ||||
|                 sleep 3 | ||||
|                 PW_TIMER=1 | ||||
|             fi | ||||
|     done < "${PORT_WINE_TMP_PATH}/update_pfx_log" | "${pw_yad_new}" --text-info --tail --no-buttons --title="WINETRICKS" \ | ||||
|     --auto-close --skip-taskbar --width=$PW_GIF_SIZE_X --height=$PW_GIF_SIZE_Y & | ||||
|     done < "${PORT_WINE_TMP_PATH}/update_pfx_log" | "${pw_yad_v12_3}" --text-info --tail --no-buttons --title="WINETRICKS" \ | ||||
|     --auto-close --skip-taskbar --width=$PW_GIF_SIZE_X --height=$PW_GIF_SIZE_Y 2>/dev/null & | ||||
|     "${PORT_WINE_TMP_PATH}/winetricks" -q -r -f &>>"${PORT_WINE_TMP_PATH}/update_pfx_log" | ||||
|     try_remove_file "${PORT_WINE_TMP_PATH}/update_pfx_log" | ||||
|     kill -s SIGTERM "$(pgrep -a yad_new | grep "title=WINETRICKS" | awk '{print $1}')" > /dev/null 2>&1     | ||||
|     kill -s SIGTERM "$(pgrep -a yad_v12_3 | grep "title=WINETRICKS" | awk '{print $1}')" > /dev/null 2>&1     | ||||
|     stop_portwine | ||||
| } | ||||
|  | ||||
| @@ -368,13 +368,20 @@ pw_start_cont_xterm () { | ||||
|     unset PW_SANDBOX_HOME_PATH | ||||
|     # export PW_ADD_TO_ARGS_IN_RUNTIME="--xterm" | ||||
|     pw_init_runtime | ||||
|     ${pw_runtime} xterm | ||||
|     ${optirun_on} ${PW_GAMEMODERUN_SLR} ${pw_runtime} \ | ||||
|     env ${PW_MANGOHUD_SLR} \ | ||||
|     PATH="${PATH}" \ | ||||
|     LD_LIBRARY_PATH="${PW_LD_LIBRARY_PATH}" \ | ||||
|     LD_PRELOAD="${PW_LD_PRELOAD}" \ | ||||
|     VK_LAYER_PATH="${PW_VK_LAYER_PATH}" \ | ||||
|     VK_INSTANCE_LAYERS="${PW_VK_INSTANCE_LAYERS}" \ | ||||
|     xterm | ||||
| } | ||||
|  | ||||
| pw_create_prefix_backup () { | ||||
|     cd "$HOME" | ||||
|     PW_PREFIX_TO_BACKUP=$("${pw_yad_new}" --file --directory --borders=5 --width=650 --height=500 --auto-close --center \ | ||||
|     --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "BACKUP PREFIX TO...") | ||||
|     PW_PREFIX_TO_BACKUP=$("${pw_yad_v12_3}" --file --directory --borders=3 --width=650 --height=500 --auto-close \ | ||||
|     --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "BACKUP PREFIX TO..." 2>/dev/null ) | ||||
|     YAD_STATUS="$?" | ||||
|     if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then exit 0 ; fi | ||||
|     if [[ -n "$(grep "/${PW_PREFIX_NAME}/" "${PORT_WINE_PATH}"/*.desktop )" ]] ; then | ||||
| @@ -411,12 +418,12 @@ pw_create_prefix_backup () { | ||||
|  | ||||
| pw_edit_db () { | ||||
|     pw_gui_for_edit_db \ | ||||
|     PW_MANGOHUD PW_MANGOHUD_x32 PW_MANGOHUD_USER_CONF ENABLE_VKBASALT PW_NO_ESYNC PW_NO_FSYNC PW_USE_DXR10 PW_USE_DXR11 \ | ||||
|     PW_MANGOHUD PW_MANGOHUD_x32 PW_MANGOHUD_USER_CONF ENABLE_VKBASALT PW_NO_ESYNC PW_NO_FSYNC PW_USE_RAY_TRACING \ | ||||
|     PW_USE_NVAPI_AND_DLSS PW_USE_FAKE_DLSS PW_WINE_FULLSCREEN_FSR PW_HIDE_NVIDIA_GPU PW_VIRTUAL_DESKTOP PW_USE_TERMINAL \ | ||||
|     PW_GUI_DISABLED_CS PW_USE_GAMEMODE PW_DX12_DISABLE PW_PRIME_RENDER_OFFLOAD PW_USE_D3D_EXTRAS PW_FIX_VIDEO_IN_GAME \ | ||||
|     PW_USE_GSTREAMER PW_FORCE_LARGE_ADDRESS_AWARE PW_USE_SHADER_CACHE PW_USE_WINE_DXGI | ||||
|     PW_USE_GSTREAMER PW_FORCE_LARGE_ADDRESS_AWARE PW_USE_SHADER_CACHE PW_USE_WINE_DXGI PW_USE_EAC_AND_BE | ||||
|     if [ "$?" == 0 ] ; then | ||||
|         echo "Restarting PP after update ppdb file..." | ||||
|         print_info "Restarting PP after update ppdb file..." | ||||
|         /usr/bin/env bash -c ${pw_full_command_line[*]} & | ||||
|         exit 0 | ||||
|     fi | ||||
| @@ -425,13 +432,14 @@ pw_edit_db () { | ||||
|  | ||||
| pw_autoinstall_from_db () { | ||||
|     export PW_USER_TEMP="${PORT_WINE_TMP_PATH}" | ||||
|     export PW_FORCE_LARGE_ADDRESS_AWARE=0 | ||||
|     export PW_FORCE_LARGE_ADDRESS_AWARE=1 | ||||
|     export PW_USE_GAMEMODE=0 | ||||
|     export PW_CHECK_AUTOINSTAL=1 | ||||
|     export PW_GUI_DISABLED_CS=1 | ||||
|     export PW_WINEDBG_DISABLE=1 | ||||
|     export PW_NO_WRITE_WATCH=0 | ||||
|     export PW_VULKAN_USE=0 | ||||
|     export PW_USE_EAC_AND_BE=0 | ||||
|     export PW_NO_FSYNC=1 | ||||
|     export PW_NO_ESYNC=1 | ||||
|     unset PORTWINE_CREATE_SHORTCUT_NAME | ||||
| @@ -449,13 +457,6 @@ export -f gui_credits | ||||
|  | ||||
| ###MAIN### | ||||
|  | ||||
| # HOTFIX WGC TO LGC | ||||
| if [[ ! -z "$(echo ${1} | grep 'wgc_api.exe')" ]] && [[ ! -f "${1}" ]] ; then | ||||
|     export PW_YAD_SET=PW_LGC | ||||
|     pw_autoinstall_from_db  | ||||
|     exit 0 | ||||
| fi | ||||
|  | ||||
| # HOTFIX CALIBRE | ||||
| if [[ ! -z "$(echo ${1} | grep '/Caliber/')" ]] ; then | ||||
|     export PW_WINE_USE=PROTON_STEAM_6.3-8 | ||||
| @@ -562,7 +563,7 @@ if [ -n "${portwine_exe}" ]; then | ||||
|         else | ||||
|             PW_SHORTCUT="${loc_gui_delete_shortcut}!$PW_GUI_ICON_PATH/separator.png!${loc_delete_shortcut}:98" | ||||
|         fi | ||||
|         OUTPUT_START=$("${pw_yad}" --text-align=center --text "$PW_COMMENT_DB" --wrap-width=150 --borders=7 --form --center  \ | ||||
|         OUTPUT_START=$("${pw_yad}" --text-align=center --text "$PW_COMMENT_DB" --borders=3 --form \ | ||||
|         --title "${portname}-${install_ver} (${scripts_install_ver})" --image "${PW_ICON_FOR_YAD}" --separator=";" --keep-icon-size \ | ||||
|         --window-icon="$PW_GUI_ICON_PATH/port_proton.png" \ | ||||
|         --field="3D API  : :CB" "${PW_DEFAULT_VULKAN_USE}" \ | ||||
| @@ -573,7 +574,7 @@ if [ -n "${portwine_exe}" ]; then | ||||
|         --button="${loc_gui_edit_db_start}"!"$PW_GUI_ICON_PATH/separator.png"!"${loc_edit_db} ${PORTWINE_DB}":118 \ | ||||
|         --button="${PW_SHORTCUT}" \ | ||||
|         --button="${loc_gui_debug}"!"$PW_GUI_ICON_PATH/separator.png"!"${loc_debug}":102 \ | ||||
|         --button="${loc_gui_launch}"!"$PW_GUI_ICON_PATH/separator.png"!"${loc_launch}":106 ) | ||||
|         --button="${loc_gui_launch}"!"$PW_GUI_ICON_PATH/separator.png"!"${loc_launch}":106 2>/dev/null) | ||||
|         export PW_YAD_SET="$?" | ||||
|         if [[ "$PW_YAD_SET" == "1" || "$PW_YAD_SET" == "252" ]] ; then exit 0 ; fi | ||||
|         export VULKAN_MOD=$(echo "${OUTPUT_START}" | grep \;\; | awk -F";" '{print $1}') | ||||
| @@ -590,7 +591,7 @@ if [ -n "${portwine_exe}" ]; then | ||||
| else | ||||
|     button_click () { | ||||
|         [[ -n "$1" ]] && echo "$1" > "${PORT_WINE_TMP_PATH}/tmp_yad_form" | ||||
|         if [[ -n $(pidof -s yad) ]] || [[ -n $(pidof -s yad_new) ]] ; then | ||||
|         if [[ -n $(pidof -s yad) ]] || [[ -n $(pidof -s yad_v12_3) ]] ; then | ||||
|             kill -s SIGUSR1 $(pgrep -a yad | grep "\-\-key=${KEY} \-\-notebook" | awk '{print $1}') > /dev/null 2>&1 | ||||
|         fi | ||||
|     } | ||||
| @@ -598,12 +599,12 @@ else | ||||
|  | ||||
|     run_desktop_b_click () { | ||||
|         [[ -n "$1" ]] && echo "$1" > "${PORT_WINE_TMP_PATH}/tmp_yad_form" | ||||
|         if [[ -n $(pidof -s yad) ]] || [[ -n $(pidof -s yad_new) ]] ; then | ||||
|         if [[ -n $(pidof -s yad) ]] || [[ -n $(pidof -s yad_v12_3) ]] ; then | ||||
|             kill -s SIGUSR1 $(pgrep -a yad | grep "\-\-key=${KEY} \-\-notebook" | awk '{print $1}') > /dev/null 2>&1 | ||||
|         fi | ||||
|         PW_EXEC_FROM_DESKTOP="$(cat "${PORT_WINE_PATH}/${PW_YAD_SET//¬/" "}" | grep Exec | head -n 1 | awk -F"=env " '{print $2}')" | ||||
|  | ||||
|         echo "Restarting PP after choose desktop file..." | ||||
|         print_info "Restarting PP after choose desktop file..." | ||||
|         # stop_portwine | ||||
|         /usr/bin/env bash -c "${PW_EXEC_FROM_DESKTOP}" & | ||||
|         exit 0  | ||||
| @@ -613,7 +614,7 @@ else | ||||
|     gui_clear_pfx () { | ||||
|         if gui_question "${port_clear_pfx}" ; then | ||||
|             pw_clear_pfx | ||||
|             echo "Restarting PP after clearing prefix..." | ||||
|             print_info "Restarting PP after clearing prefix..." | ||||
|             /usr/bin/env bash -c ${pw_full_command_line[*]} & | ||||
|             exit 0 | ||||
|         fi | ||||
| @@ -634,14 +635,14 @@ else | ||||
|  | ||||
|     gui_pw_update () { | ||||
|         try_remove_file "${PORT_WINE_TMP_PATH}/scripts_update_notifier" | ||||
|         echo "Restarting PP for check update..." | ||||
|         print_info "Restarting PP for check update..." | ||||
|         /usr/bin/env bash -c ${pw_full_command_line[*]} & | ||||
|         exit 0 | ||||
|     } | ||||
|  | ||||
|     change_loc () { | ||||
|         try_remove_file "${PORT_WINE_TMP_PATH}/PortProton_loc" | ||||
|         echo "Restarting PP for change language..." | ||||
|         try_remove_file "${PORT_WINE_TMP_PATH}/${portname}_loc" | ||||
|         print_info "Restarting PP for change language..." | ||||
|         /usr/bin/env bash -c ${pw_full_command_line[*]} & | ||||
|         exit 0 | ||||
|     } | ||||
| @@ -659,13 +660,13 @@ else | ||||
|  | ||||
|     gui_open_scripts_from_backup () { | ||||
|         cd "${PORT_WINE_TMP_PATH}/scripts_backup/" | ||||
|         PW_SCRIPT_FROM_BACKUP=$("${pw_yad_new}" --file --borders=5 --width=650 --height=500 --auto-close --center \ | ||||
|         --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "SCRIPTS FROM BACKUP" --file-filter="backup_scripts|scripts_v*.tar.gz") | ||||
|         PW_SCRIPT_FROM_BACKUP=$("${pw_yad_v12_3}" --file --borders=3 --width=650 --height=500 --auto-close \ | ||||
|         --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "SCRIPTS FROM BACKUP" --file-filter="backup_scripts|scripts_v*.tar.gz" 2>/dev/null ) | ||||
|         YAD_STATUS="$?" | ||||
|         if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then exit 0 ; fi | ||||
|         unpack_tar_gz "$PW_SCRIPT_FROM_BACKUP" "${PORT_WINE_PATH}/data/" | ||||
|         echo "0" > "${PORT_WINE_TMP_PATH}/scripts_update_notifier" | ||||
|         echo "Restarting PP after backup..." | ||||
|         print_info "Restarting PP after backup..." | ||||
|         /usr/bin/env bash -c ${pw_full_command_line[*]} & | ||||
|         exit 0 | ||||
|     } | ||||
| @@ -684,17 +685,17 @@ else | ||||
|     for PW_DESKTOP_FILES in ${PW_ALL_DF} ; do | ||||
|         PW_NAME_D_ICON="$(cat "${PORT_WINE_PATH}/${PW_DESKTOP_FILES}" | grep Icon | awk -F= '{print $2}')" | ||||
|         PW_NAME_D_ICON_48="${PW_NAME_D_ICON//".png"/"_48.png"}" | ||||
|         if [[ ! -f "${PW_NAME_D_ICON_48}" ]]  && [[ -f "${PW_NAME_D_ICON}" ]] && [[ -x "`which "convert" 2>/dev/null`" ]] ; then | ||||
|         if [[ ! -f "${PW_NAME_D_ICON_48}" ]]  && [[ -f "${PW_NAME_D_ICON}" ]] && [[ -x "`command -v "convert" 2>/dev/null`" ]] ; then | ||||
|             convert "${PW_NAME_D_ICON}" -resize 48x48 "${PW_NAME_D_ICON_48}"  | ||||
|         fi | ||||
|         PW_GENERATE_BUTTONS+="--field=   ${PW_DESKTOP_FILES//".desktop"/""}!${PW_NAME_D_ICON_48}!:FBTN%@bash -c \"run_desktop_b_click "${PW_DESKTOP_FILES//" "/¬}"\"%" | ||||
|     done | ||||
|     IFS="$orig_IFS" | ||||
|     old_IFS=$IFS && IFS="%" | ||||
|     "${pw_yad_new}" --plug=$KEY --tabnum=${PW_GUI_SORT_TABS[4]} --form --columns=3 --align-buttons --keep-icon-size --scroll --separator=" " ${PW_GENERATE_BUTTONS} & | ||||
|     "${pw_yad_v12_3}" --plug=$KEY --tabnum=${PW_GUI_SORT_TABS[4]} --form --columns=3 --align-buttons --keep-icon-size --scroll --separator=" " ${PW_GENERATE_BUTTONS} 2>/dev/null & | ||||
|     IFS="$orig_IFS" | ||||
|  | ||||
|     "${pw_yad_new}" --plug=${KEY} --tabnum=${PW_GUI_SORT_TABS[3]} --form --columns=3 --align-buttons --keep-icon-size --separator=";" \ | ||||
|     "${pw_yad_v12_3}" --plug=${KEY} --tabnum=${PW_GUI_SORT_TABS[3]} --form --columns=3 --align-buttons --keep-icon-size --separator=";" \ | ||||
|     --field="   $loc_gui_pw_reinstall_pp"!"$PW_GUI_ICON_PATH/separator.png"!"":"FBTN" '@bash -c "button_click gui_pw_reinstall_pp"' \ | ||||
|     --field="   $loc_gui_rm_pp"!"$PW_GUI_ICON_PATH/separator.png"!"":"FBTN" '@bash -c "button_click gui_rm_portproton"' \ | ||||
|     --field="   $loc_gui_upd_pp"!"$PW_GUI_ICON_PATH/separator.png"!"":"FBTN" '@bash -c "button_click gui_pw_update"' \ | ||||
| @@ -703,9 +704,9 @@ else | ||||
|     --field="   $loc_gui_edit_usc"!"$PW_GUI_ICON_PATH/separator.png"!"":"FBTN" '@bash -c "button_click gui_open_user_conf"' \ | ||||
|     --field="   $loc_gui_scripts_fb"!"$PW_GUI_ICON_PATH/separator.png"!"":"FBTN" '@bash -c "button_click gui_open_scripts_from_backup"' \ | ||||
|     --field="   Xterm"!"$PW_GUI_ICON_PATH/separator.png"!"":"FBTN" '@bash -c "button_click pw_start_cont_xterm"' \ | ||||
|     --field="   $loc_gui_credits"!"$PW_GUI_ICON_PATH/separator.png"!"":"FBTN" '@bash -c "button_click gui_credits"' & | ||||
|     --field="   $loc_gui_credits"!"$PW_GUI_ICON_PATH/separator.png"!"":"FBTN" '@bash -c "button_click gui_credits"'  2>/dev/null & | ||||
|  | ||||
|     "${pw_yad_new}" --plug=${KEY} --tabnum=${PW_GUI_SORT_TABS[2]} --form --columns=3 --align-buttons --keep-icon-size --separator=";" \ | ||||
|     "${pw_yad_v12_3}" --plug=${KEY} --tabnum=${PW_GUI_SORT_TABS[2]} --form --columns=3 --align-buttons --keep-icon-size --separator=";" \ | ||||
|     --field="  3D API  : :CB" "${loc_gui_vulkan_stable}!${loc_gui_vulkan_git}!${loc_gui_open_gl}!${loc_gui_gallium_nine}" \ | ||||
|     --field="  PREFIX  : :CBE" "${PW_ADD_PREFIXES_TO_GUI}" \ | ||||
|     --field="  WINE    : :CB" "${PW_DEFAULT_WINE_USE}" \ | ||||
| @@ -717,9 +718,9 @@ else | ||||
|     --field='   WINETRICKS'!"$PW_GUI_ICON_PATH/separator.png"!"${loc_winetricks}":"FBTN" '@bash -c "button_click WINETRICKS"' \ | ||||
|     --field="   WINE UNINSTALLER"!"$PW_GUI_ICON_PATH/separator.png"!"":"FBTN" '@bash -c "button_click gui_wine_uninstaller"' \ | ||||
|     --field="   CLEAR PREFIX"!"$PW_GUI_ICON_PATH/separator.png"!"":"FBTN" '@bash -c "button_click gui_clear_pfx"' \ | ||||
|     --field="   CREATE PFX BACKUP"!"$PW_GUI_ICON_PATH/separator.png"!"":"FBTN" '@bash -c "button_click pw_create_prefix_backup"' &> "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan" & | ||||
|     --field="   CREATE PFX BACKUP"!"$PW_GUI_ICON_PATH/separator.png"!"":"FBTN" '@bash -c "button_click pw_create_prefix_backup"' 2>/dev/null 1> "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan" & | ||||
|  | ||||
|     "${pw_yad_new}" --plug=$KEY --tabnum=${PW_GUI_SORT_TABS[1]} --form --columns=3 --align-buttons --keep-icon-size --scroll  \ | ||||
|     "${pw_yad_v12_3}" --plug=$KEY --tabnum=${PW_GUI_SORT_TABS[1]} --form --columns=3 --align-buttons --keep-icon-size --scroll  \ | ||||
|     --field="   Dolphin 5.0"!"$PW_GUI_ICON_PATH/dolphin.png"!"":"FBTN" '@bash -c "button_click PW_DOLPHIN"' \ | ||||
|     --field="   MAME"!"$PW_GUI_ICON_PATH/mame.png"!"":"FBTN" '@bash -c "button_click PW_MAME"' \ | ||||
|     --field="   ScummVM"!"$PW_GUI_ICON_PATH/scummvm.png"!"":"FBTN" '@bash -c "button_click PW_SCUMMVM"' \ | ||||
| @@ -731,44 +732,54 @@ else | ||||
|     --field="   ePSXe"!"$PW_GUI_ICON_PATH/epsxe.png"!"":"FBTN" '@bash -c "button_click PW_EPSXE"' \ | ||||
|     --field="   Project64"!"$PW_GUI_ICON_PATH/project64.png"!"":"FBTN" '@bash -c "button_click PW_PROJECT64"' \ | ||||
|     --field="   VBA-M"!"$PW_GUI_ICON_PATH/vba-m.png"!"":"FBTN" '@bash -c "button_click PW_VBA-M"' \ | ||||
|     --field="   Yabause"!"$PW_GUI_ICON_PATH/yabause.png"!"":"FBTN" '@bash -c "button_click PW_YABAUSE"' & | ||||
|     --field="   Yabause"!"$PW_GUI_ICON_PATH/yabause.png"!"":"FBTN" '@bash -c "button_click PW_YABAUSE"' \ | ||||
|     --field="   Xenia"!"$PW_GUI_ICON_PATH/xenia.png"!"":"FBTN" '@bash -c "button_click PW_XENIA"' \ | ||||
|     --field="   FCEUX"!"$PW_GUI_ICON_PATH/fceux.png"!"":"FBTN" '@bash -c "button_click PW_FCEUX"' \ | ||||
|     --field="   xemu"!"$PW_GUI_ICON_PATH/xemu.png"!"":"FBTN" '@bash -c "button_click PW_XEMU"' \ | ||||
|     --field="   Demul"!"$PW_GUI_ICON_PATH/demul.png"!"":"FBTN" '@bash -c "button_click PW_DEMUL"' \ | ||||
|     --field="   Rpcs3"!"$PW_GUI_ICON_PATH/rpcs3.png"!"":"FBTN" '@bash -c "button_click PW_RPCS3"' 2>/dev/null & | ||||
|  | ||||
|     "${pw_yad_new}" --plug=$KEY --tabnum=${PW_GUI_SORT_TABS[0]} --form --columns=3 --align-buttons --keep-icon-size --scroll \ | ||||
|     "${pw_yad_v12_3}" --plug=$KEY --tabnum=${PW_GUI_SORT_TABS[0]} --form --columns=3 --align-buttons --keep-icon-size --scroll \ | ||||
|     --field="   Lesta Game Center"!"$PW_GUI_ICON_PATH/lgc.png"!"":"FBTN" '@bash -c "button_click PW_LGC"' \ | ||||
|     --field="   Wargaming Game Center"!"$PW_GUI_ICON_PATH/wgc.png"!"":"FBTN" '@bash -c "button_click PW_WGC"' \ | ||||
|     --field="   vkPlay Games Center"!"$PW_GUI_ICON_PATH/mygames.png"!"":"FBTN" '@bash -c "button_click PW_VKPLAY"' \ | ||||
|     --field="   Battle.net Launcher"!"$PW_GUI_ICON_PATH/battle_net.png"!"":"FBTN" '@bash -c "button_click PW_BATTLE_NET"' \ | ||||
|     --field="   Epic Games Launcher"!"$PW_GUI_ICON_PATH/epicgames.png"!"":"FBTN" '@bash -c "button_click PW_EPIC"' \ | ||||
|     --field="   GoG Galaxy Launcher"!"$PW_GUI_ICON_PATH/gog.png"!"":"FBTN" '@bash -c "button_click PW_GOG"' \ | ||||
|     --field="   Ubisoft Game Launcher"!"$PW_GUI_ICON_PATH/ubc.png"!"":"FBTN" '@bash -c "button_click PW_UBC"' \ | ||||
|     --field="   EVE Online Launcher"!"$PW_GUI_ICON_PATH/eve.png"!"":"FBTN" '@bash -c "button_click PW_EVE"' \ | ||||
|     --field="   EA App"!"$PW_GUI_ICON_PATH/eaapp.png"!"":"FBTN" '@bash -c "button_click PW_EAAPP"' \ | ||||
|     --field="   Rockstar Games Launcher"!"$PW_GUI_ICON_PATH/Rockstar.png"!"":"FBTN" '@bash -c "button_click PW_ROCKSTAR"' \ | ||||
|     --field="   Ankama Launcher"!"$PW_GUI_ICON_PATH/ankama.png"!"":"FBTN" '@bash -c "button_click PW_ANKAMA"' \ | ||||
|     --field="   OSU"!"$PW_GUI_ICON_PATH/osu.png"!"":"FBTN" '@bash -c "button_click PW_OSU"' \ | ||||
|     --field="   League of Legends"!"$PW_GUI_ICON_PATH/lol.png"!"":"FBTN" '@bash -c "button_click PW_LOL"' \ | ||||
|     --field="   Gameforge Client"!"$PW_GUI_ICON_PATH/gameforge.png"!"":"FBTN" '@bash -c "button_click  PW_GAMEFORGE"' \ | ||||
|     --field="   World of Sea Battle (BETA)"!"$PW_GUI_ICON_PATH/wosb.png"!"":"FBTN" '@bash -c "button_click PW_WOSB"' \ | ||||
|     --field="   CALIBER"!"$PW_GUI_ICON_PATH/caliber.png"!"":"FBTN" '@bash -c "button_click PW_CALIBER"' \ | ||||
|     --field="   FULQRUM GAMES"!"$PW_GUI_ICON_PATH/fulqrumgames.png"!"":"FBTN" '@bash -c "button_click PW_FULQRUM_GAMES"' \ | ||||
|     --field="   Plarium Play"!"$PW_GUI_ICON_PATH/plariumplay.png"!"":"FBTN" '@bash -c "button_click PW_PLARIUM_PLAY"' \ | ||||
|     --field="   ITCH.IO"!"$PW_GUI_ICON_PATH/itch.png"!"":"FBTN" '@bash -c "button_click PW_ITCH"' \ | ||||
|     --field="   Steam (unstable)"!"$PW_GUI_ICON_PATH/steam.png"!"":"FBTN" '@bash -c "button_click PW_STEAM"' \ | ||||
|     --field="   Crossout"!"$PW_GUI_ICON_PATH/crossout.png"!"":"FBTN" '@bash -c "button_click PW_CROSSOUT"' \ | ||||
|     --field="   Indiegala Client"!"$PW_GUI_ICON_PATH/igclient.png"!"":"FBTN" '@bash -c "button_click PW_IGCLIENT"' \ | ||||
|     --field="   Warframe"!"$PW_GUI_ICON_PATH/warframe.png"!"":"FBTN" '@bash -c "button_click PW_WARFRAME"' \ | ||||
|     --field="   Panzar"!"$PW_GUI_ICON_PATH/panzar.png"!"":"FBTN" '@bash -c "button_click PW_PANZAR"' \ | ||||
|     --field="   STALCRAFT"!"$PW_GUI_ICON_PATH/stalcraft.png"!"":"FBTN" '@bash -c "button_click PW_STALCRAFT"' \ | ||||
|     --field="   ROBLOX"!"$PW_GUI_ICON_PATH/roblox.png"!"":"FBTN" '@bash -c "button_click PW_ROBLOX"' \ | ||||
|     --field="   Path of Exile"!"$PW_GUI_ICON_PATH/poe.png"!"":"FBTN" '@bash -c "button_click PW_POE"' & | ||||
|  | ||||
|     --field="   CONTRACT WARS"!"$PW_GUI_ICON_PATH/cwc.png"!"":"FBTN" '@bash -c "button_click PW_CWC"' \ | ||||
|     --field="   Stalker Online"!"$PW_GUI_ICON_PATH/so.png"!"":"FBTN" '@bash -c "button_click PW_SO"' \ | ||||
|     --field="   Metal War Online"!"$PW_GUI_ICON_PATH/mwo.png"!"":"FBTN" '@bash -c "button_click PW_MWO"' \ | ||||
|     --field="   Ankama Launcher"!"$PW_GUI_ICON_PATH/ankama.png"!"":"FBTN" '@bash -c "button_click PW_ANKAMA"' \ | ||||
|     --field="   Indiegala Client"!"$PW_GUI_ICON_PATH/igclient.png"!"":"FBTN" '@bash -c "button_click PW_IGCLIENT"' \ | ||||
|     --field="   Plarium Play"!"$PW_GUI_ICON_PATH/plariumplay.png"!"":"FBTN" '@bash -c "button_click PW_PLARIUM_PLAY"' \ | ||||
|     --field="   Wargaming Game Center"!"$PW_GUI_ICON_PATH/wgc.png"!"":"FBTN" '@bash -c "button_click PW_WGC"' \ | ||||
|     --field="   OSU"!"$PW_GUI_ICON_PATH/osu.png"!"":"FBTN" '@bash -c "button_click PW_OSU"' \ | ||||
|     --field="   ITCH.IO"!"$PW_GUI_ICON_PATH/itch.png"!"":"FBTN" '@bash -c "button_click PW_ITCH"' \ | ||||
|     --field="   Steam (unstable)"!"$PW_GUI_ICON_PATH/steam.png"!"":"FBTN" '@bash -c "button_click PW_STEAM"' \ | ||||
|     --field="   Path of Exile"!"$PW_GUI_ICON_PATH/poe.png"!"":"FBTN" '@bash -c "button_click PW_POE"' \ | ||||
|     --field="   Guild Wars 2"!"$PW_GUI_ICON_PATH/gw2.png"!"":"FBTN" '@bash -c "button_click PW_GUILD_WARS_2"' \ | ||||
|     --field="   Genshin Impact"!"$PW_GUI_ICON_PATH/genshinimpact.png"!"":"FBTN" '@bash -c "button_click PW_GENSHIN_IMPACT"' \ | ||||
|     --field="   Battle Of Space Raiders"!"$PW_GUI_ICON_PATH/bsr.png"!"":"FBTN" '@bash -c "button_click PW_BSR"' 2>/dev/null  & | ||||
|      | ||||
|     # --field="   Electronic Arts App"!"$PW_GUI_ICON_PATH/eaapp.png"!"":"FBTN" '@bash -c "button_click PW_EAAPP"'  | ||||
|     # --field="   Secret World Legends (ENG)"!"$PW_GUI_ICON_PATH/swl.png"!"":"FBTN" '@bash -c "button_click PW_SWL"' | ||||
|     # --field="   Guild Wars 2"!"$PW_GUI_ICON_PATH/gw2.png"!"":"FBTN" '@bash -c "button_click PW_GUILD_WARS_2"' | ||||
|     #  | ||||
|     # --field="   Bethesda.net Launcher"!"$PW_GUI_ICON_PATH/bethesda.png"!"":"FBTN" '@bash -c "button_click PW_BETHESDA"' | ||||
|     # --field="   ROBLOX"!"$PW_GUI_ICON_PATH/roblox.png"!"":"FBTN" '@bash -c "button_click PW_ROBLOX"' | ||||
|  | ||||
|     if  [[ `which wmctrl` ]] &>/dev/null ; then | ||||
|     if  [[ `command -v wmctrl` ]] &>/dev/null ; then | ||||
|         sleep 2 | ||||
|         while [[ $(pgrep -a yad_new | head -n 1 | awk '{print $1}' 2>/dev/null) ]] ; do | ||||
|         while [[ $(pgrep -a yad_v12_3 | head -n 1 | awk '{print $1}' 2>/dev/null) ]] ; do | ||||
|             sleep 2 | ||||
|             PW_MAIN_GUI_SIZE_TMP="$(wmctrl -lG | grep PortProton-1.0 | awk '{print $5" "$6}' 2>/dev/null)" | ||||
|             if [[ -n "${PW_MAIN_GUI_SIZE_TMP}" ]] ; then | ||||
| @@ -778,24 +789,24 @@ else | ||||
|     fi & | ||||
|  | ||||
|     if [[ -z "${PW_ALL_DF}" ]] ; then | ||||
|         "${pw_yad_new}" --key=$KEY --notebook --borders=5 --width="${PW_MAIN_SIZE_W}" --height="${PW_MAIN_SIZE_H}" --no-buttons --auto-close --center \ | ||||
|         "${pw_yad_v12_3}" --key=$KEY --notebook --borders=3 --width="${PW_MAIN_SIZE_W}" --height="${PW_MAIN_SIZE_H}" --no-buttons --auto-close \ | ||||
|         --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "${portname}-${install_ver} (${scripts_install_ver})" \ | ||||
|         --tab-pos=bottom --keep-icon-size \ | ||||
|         --tab="$loc_mg_autoinstall"!"$PW_GUI_ICON_PATH/separator.png"!"" \ | ||||
|         --tab="$loc_mg_emulators"!"$PW_GUI_ICON_PATH/separator.png"!"" \ | ||||
|         --tab="$loc_mg_wine_settings"!"$PW_GUI_ICON_PATH/separator.png"!"" \ | ||||
|         --tab="$loc_mg_portproton_settings"!"$PW_GUI_ICON_PATH/separator.png"!"" \ | ||||
|         --tab="$loc_mg_installed"!"$PW_GUI_ICON_PATH/separator.png"!"" | ||||
|         --tab="$loc_mg_installed"!"$PW_GUI_ICON_PATH/separator.png"!"" 2>/dev/null | ||||
|         YAD_STATUS="$?" | ||||
|     else | ||||
|         "${pw_yad_new}" --key=$KEY --notebook --borders=5 --width="${PW_MAIN_SIZE_W}" --height="${PW_MAIN_SIZE_H}" --no-buttons --auto-close --center \ | ||||
|         "${pw_yad_v12_3}" --key=$KEY --notebook --borders=3 --width="${PW_MAIN_SIZE_W}" --height="${PW_MAIN_SIZE_H}" --no-buttons --auto-close \ | ||||
|         --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "${portname}-${install_ver} (${scripts_install_ver})" \ | ||||
|         --tab-pos=bottom --keep-icon-size \ | ||||
|         --tab="$loc_mg_installed"!"$PW_GUI_ICON_PATH/separator.png"!"" \ | ||||
|         --tab="$loc_mg_autoinstall"!"$PW_GUI_ICON_PATH/separator.png"!"" \ | ||||
|         --tab="$loc_mg_emulators"!"$PW_GUI_ICON_PATH/separator.png"!"" \ | ||||
|         --tab="$loc_mg_wine_settings"!"$PW_GUI_ICON_PATH/separator.png"!"" \ | ||||
|         --tab="$loc_mg_portproton_settings"!"$PW_GUI_ICON_PATH/separator.png"!"" | ||||
|         --tab="$loc_mg_portproton_settings"!"$PW_GUI_ICON_PATH/separator.png"!"" 2>/dev/null | ||||
|         YAD_STATUS="$?" | ||||
|     fi | ||||
|  | ||||
| @@ -842,7 +853,7 @@ if [[ -z "${PW_DISABLED_CREATE_DB}" ]] ; then | ||||
|     edit_db_from_gui PW_VULKAN_USE PW_WINE_USE PW_PREFIX_NAME  | ||||
| fi | ||||
|  | ||||
| case "$PW_YAD_SET" in | ||||
| [ -n "$PW_YAD_SET" ] && case "$PW_YAD_SET" in | ||||
|     98) portwine_delete_shortcut ;; | ||||
|     100) portwine_create_shortcut ;; | ||||
|     DEBUG|102) portwine_start_debug ;; | ||||
|   | ||||
| @@ -1,13 +1,9 @@ | ||||
| #!/usr/bin/env bash | ||||
| #Author: Castro-Fidel (linux-gaming.ru) | ||||
| #SCRIPTS_NEXT_VERSION=2176 | ||||
| #SCRIPTS_NEXT_VERSION=2215 | ||||
| ######################################################################## | ||||
| export PW_MANGOHUD=0 | ||||
| export MANGOHUD_CONFIG=cpu_stats,cpu_temp,cpu_mhz,cpu_color=2e97cb,cpu_text=CPU,gpu_stats,gpu_temp,gpu_core_clock,gpu_mem_clock,vulkan_driver,gpu_name,gpu_color=2e9762,gpu_text=GPU,vram,vram_color=ad64c1,ram,ram_color=c26693,io_color=a491d3,frame_timing=1,frametime_color=00ff00,time,arch,wine,wine_color=eb5b5b,engine_color=eb5b5b,background_alpha=0.2,font_size=24,background_color=020202,text_color=ffffff,toggle_hud=Shift_R+F12,resolution,vkbasalt | ||||
| #export DXVK_HUD=compiler | ||||
| #export GALLIUM_HUD=fps | ||||
| #export ENABLE_VKBASALT=1 | ||||
| #export PW_VIRTUAL_DESKTOP=1 | ||||
| #export PW_XKBD_RU_HACK=1 | ||||
| export PW_RT_MOUNT_RO=("") | ||||
| export PW_RT_MOUNT_RW=("/media" "/mnt" "/run/media/${USER}" "${PORT_WINE_PATH}") | ||||
| @@ -20,43 +16,56 @@ export PW_USE_TERMINAL="0" | ||||
| export PW_WINEDBG_DISABLE="1" | ||||
| export PW_WINDOWS_VER="10" | ||||
| export WINEARCH="win64" | ||||
| export PW_LIBS_VER="_v41" | ||||
| export PW_LIBS_VER="_v43" | ||||
| export GDK_BACKEND="x11" | ||||
| export PW_USE_GSTREAMER="1" | ||||
| export PW_USE_D3D_EXTRAS="1" | ||||
| export PW_PREFIX_NAME="DEFAULT" | ||||
| export WINE_WIN_START="start /i /b /wait /high /unix" | ||||
| export WINE_WIN_START="start /wait /high /unix" | ||||
| export WINE_ALLOW_XIM="0" | ||||
| export PW_USE_SHADER_CACHE="1" | ||||
| export PW_WINE_CPU_TOPOLOGY="disabled" | ||||
| export STAGING_SHARED_MEMORY="1" | ||||
| export PROTON_DISABLE_LSTEAMCLIENT="0" | ||||
| export PW_FORCE_LARGE_ADDRESS_AWARE="1" | ||||
| export PW_MANGOHUD_x32="0" | ||||
| export PW_USE_EAC_AND_BE="1" | ||||
| ###GTK_CONFIG### | ||||
| # export GTK_DATA_PREFIX= | ||||
| # export GTK_THEME="Adwaita:dark" | ||||
| ###DEFAULT_WINE### | ||||
| export PW_WINE_USE="PROTON_LG" | ||||
| export PW_PLUGINS_VER="_v10" | ||||
| export PW_FAKE_DLSS_VER="091122" | ||||
| export PW_PLUGINS_VER="_v12" | ||||
| export PW_FAKE_DLSS_VER="230506" | ||||
| ###WINE_PROTON_LG### | ||||
| export PW_LG_VER="7-53" | ||||
| export PW_LG_VER="8-11" | ||||
| export PW_PROTON_LG_VER="PROTON_LG_${PW_LG_VER}" | ||||
| ###WINE_PROTON_GE### | ||||
| export PW_GE_VER="7-53" | ||||
| export PW_GE_VER="8-3" | ||||
| export PW_PROTON_GE_VER="PROTON_GE_${PW_GE_VER}" | ||||
| export PW_WINE_FULLSCREEN_FSR="1" | ||||
| ###DXVK_AND_VKD3D### | ||||
| export VKD3D_FEATURE_LEVEL="12_0" | ||||
| # export VKD3D_LIMIT_TESS_FACTORS="16" | ||||
| export D8VK_VER="1.0" | ||||
| export DXVK_STABLE_VER="1.10.3-28" | ||||
| export DXVK_GIT_VER="2.1-48" | ||||
| export DXVK_GIT_VER="2.2-137" | ||||
| export VKD3D_STABLE_VER="1.1-2602" | ||||
| export VKD3D_GIT_VER="1.1-3325" | ||||
| export VKD3D_GIT_VER="1.1-3516" | ||||
| ###PREFIX_VERSION### | ||||
| export DOTPFX_VER="48v1" | ||||
| export DEFPFX_VER="v1" | ||||
| export PROGPFX_VER="v1" | ||||
| export PW_MUST_WINEDLLOVERRIDES="steam_api,steam_api64,steamclient,steamclient64=n;dotnetfx35.exe,dotnetfx35setup.exe=b,winemenubuilder.exe=" | ||||
| ################################################################# | ||||
| export optirun_on="" | ||||
| export DXVK_CONFIG_FILE="${PORT_WINE_PATH}/data/dxvk.conf" | ||||
| ################################################################# | ||||
| pw_install_dll_in_prefix () | ||||
| { | ||||
|     case $PW_PREFIX_NAME in | ||||
|         DEFAULT) export PW_MUST_HAVE_DLL="physx mfc42 vcrun2022" ;; | ||||
|          DOTNET) export PW_MUST_HAVE_DLL="physx mfc42 vcrun2022 faudio dotnet48" ;; | ||||
|         DEFAULT) export PW_MUST_HAVE_DLL="d3dx9 d3dcompiler_43 physx mfc42 vcrun2022" ;; | ||||
|          DOTNET) export PW_MUST_HAVE_DLL="physx mfc42 vcrun2019 faudio dotnet48" ;; | ||||
|               *) export PW_MUST_HAVE_DLL="" ;; | ||||
|     esac | ||||
| } | ||||
| @@ -70,26 +79,9 @@ add_in_stop_portwine () | ||||
| { | ||||
|     echo " " | ||||
| } | ||||
| export -f add_in_stop_portwine | ||||
| ######################################################################## | ||||
| pw_other_fixes ()  | ||||
| { | ||||
|     if [[ -f "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg" ]] ; then | ||||
|     #fix after installation Origin, for disabled OriginWebHelperService by default | ||||
|         if [[ ! -z `cat "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg" | grep -wm 1 "Origin.exe" | awk '{print $1}'` ]] ; then | ||||
|             sysreg_norig=$(((`cat -n "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg" | grep OriginWebHelperService | awk '{print $1}'` + 3))) | ||||
|             sed -i "${sysreg_norig}s/dword:0000000[1-2]/dword:00000003/" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg" | ||||
|         fi | ||||
|         #fix after installation PnkBstr*, for disabled PnkBstr* by default | ||||
|         if [[ ! -z `cat "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg" | grep -wm 1 "PnkBstrA.exe" | awk '{print $1}'` ]] ; then | ||||
|             sysreg_norig=$(((`cat -n "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg" | grep "PnkBstrA.exe" | awk '{print $1}'` + 3))) | ||||
|             sed -i "${sysreg_norig}s/dword:0000000[1-2]/dword:00000003/" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg" | ||||
|             if [[ ! -z `cat "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg" | grep -wm 1 "PnkBstrB.exe" | awk '{print $1}'` ]] ; then | ||||
|                 sysreg_norig=$(((`cat -n "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg" | grep "PnkBstrB.exe" | awk '{print $1}'` + 3))) | ||||
|                 sed -i "${sysreg_norig}s/dword:0000000[1-2]/dword:00000003/" "${PORT_WINE_PATH}/data/prefixes/${PW_PREFIX_NAME}/system.reg" | ||||
|             fi | ||||
|         fi | ||||
|     fi | ||||
|     echo "" | ||||
| } | ||||
|  | ||||
| # export VKD3D_FEATURE_LEVEL=12_0 | ||||
| # export WINE_DISABLE_VULKAN_OPWR=1 | ||||
|   | ||||
| @@ -14,9 +14,10 @@ zenity_error () { | ||||
| export -f zenity_error | ||||
|  | ||||
| zenity_error_download () { | ||||
|     `zenity --error --title "$loc_gui_error" --text "$loc_gui_error_download" --no-wrap ` | ||||
|     `zenity --question --title "$loc_gui_error" --text "$loc_gui_error_download\n" --no-wrap --ok-label="Repeat" --cancel-label="Exit" ` | ||||
|     if [[ "$?" != 0 ]] ; then | ||||
|         stop_portwine | ||||
|         exit 1 | ||||
|     else | ||||
|         return 0 | ||||
|     fi | ||||
| @@ -49,7 +50,7 @@ pw_update_pfx_cover_gui () { | ||||
|     PW_GIF_SIZE_Y=`file "${PW_GIF_FILE}" | awk '{print $9 + 80}'` | ||||
|     echo "UPDATE PREFIX..." > "${PORT_WINE_TMP_PATH}/update_pfx_log" | ||||
|     unset PW_TIMER | ||||
|     while read -r line || [[ ! -z `pgrep -a yad | grep "yad_new --notebook --key="$PW_KEY_PROGRESS_BAR"" | awk '{print $1}'` ]] ; do | ||||
|     while read -r line || [[ ! -z `pgrep -a yad | grep "yad_v12_3 --notebook --key="$PW_KEY_PROGRESS_BAR"" | awk '{print $1}'` ]] ; do | ||||
|             sleep 0.005 | ||||
|             if [[ ! -z "${line}" ]] && [[ -z "`echo "${line}" | grep -i "gstreamer"`" ]] \ | ||||
|                                     && [[ -z "`echo "${line}" | grep -i "kerberos"`" ]] \ | ||||
| @@ -61,11 +62,11 @@ pw_update_pfx_cover_gui () { | ||||
|                 sleep 3 | ||||
|                 PW_TIMER=1 | ||||
|             fi | ||||
|     done < "${PORT_WINE_TMP_PATH}/update_pfx_log" | "${pw_yad_new}" --plug=$PW_KEY_PROGRESS_BAR --tabnum="2" --text-info --tail & | ||||
|     "${pw_yad_new}" --plug=$PW_KEY_PROGRESS_BAR --tabnum="1" --picture --filename="${PW_GIF_FILE}" --image-on-top & | ||||
|     done < "${PORT_WINE_TMP_PATH}/update_pfx_log" | "${pw_yad_v12_3}" --plug=$PW_KEY_PROGRESS_BAR --tabnum="2" --text-info --tail  2>/dev/null & | ||||
|     "${pw_yad_v12_3}" --plug=$PW_KEY_PROGRESS_BAR --tabnum="1" --picture --filename="${PW_GIF_FILE}" --image-on-top 2>/dev/null & | ||||
|  | ||||
|     "${pw_yad_new}" --notebook --key="$PW_KEY_PROGRESS_BAR" --tab=LOGO --tab=TERMINAL --no-buttons --undecorated \ | ||||
|     --center --auto-close --skip-taskbar --width=$PW_GIF_SIZE_X --height=$PW_GIF_SIZE_Y --tab-pos=bottom & | ||||
|     "${pw_yad_v12_3}" --notebook --key="$PW_KEY_PROGRESS_BAR" --tab=LOGO --tab=TERMINAL --no-buttons --undecorated \ | ||||
|     --center --auto-close --skip-taskbar --width=$PW_GIF_SIZE_X --height=$PW_GIF_SIZE_Y --tab-pos=bottom 2>/dev/null & | ||||
|     export PW_YAD_PID_PFX_COVER_UI="$!" | ||||
|     return 0 | ||||
| } | ||||
| @@ -101,15 +102,15 @@ pw_stop_progress_bar_cover () { | ||||
| export -f pw_stop_progress_bar_cover | ||||
|  | ||||
| open_changelog () { | ||||
|     "${pw_yad}" --title="$loc_gui_changelog" --borders=10 --no-buttons --text-align=center \ | ||||
|     --text-info --show-uri --wrap --center --width=1200 --height=550 --uri-color=red \ | ||||
|     "${pw_yad}" --title="$loc_gui_changelog" --borders=3 --no-buttons --text-align=center \ | ||||
|     --text-info --show-uri --wrap --width=1200 --height=700 --uri-color=red \ | ||||
|     --filename="${PORT_WINE_PATH}/data/${PW_CHANGELOG_FILE}" | ||||
| } | ||||
| export -f open_changelog | ||||
|  | ||||
| pw_tray_icon () { | ||||
|     if [ ! -z "`pgrep -a yad_new | grep "\-\-notification" | awk '{print $1}'`" ] ; then | ||||
|         kill -s SIGUSR1 "`pgrep -a yad_new | grep "\-\-notification" | awk '{print $1}'`" | ||||
|     if [ ! -z "`pgrep -a yad_v12_3 | grep "\-\-notification" | awk '{print $1}'`" ] ; then | ||||
|         kill -s SIGUSR1 "`pgrep -a yad_v12_3 | grep "\-\-notification" | awk '{print $1}'`" | ||||
|     fi | ||||
|  | ||||
|     tray_icon_click () { | ||||
| @@ -133,7 +134,7 @@ pw_tray_icon () { | ||||
|     } | ||||
|     export -f tray_icon_click_exit | ||||
|  | ||||
|     "${pw_yad_new}" --notification --no-middle \ | ||||
|     "${pw_yad_v12_3}" --notification --no-middle \ | ||||
|     --window-icon="$PW_GUI_ICON_PATH/port_proton.png" \ | ||||
|     --image="$PW_GUI_ICON_PATH/port_proton.png" \ | ||||
|     --command="bash -c tray_icon_click" \ | ||||
| @@ -142,19 +143,34 @@ pw_tray_icon () { | ||||
|   ${loc_tray_winefile}!bash -c pw_tray_winefile!"$PW_GUI_ICON_PATH/port_winefile.png"|| \ | ||||
|   ${loc_tray_tascmng}!bash -c pw_tray_taskmgr!"$PW_GUI_ICON_PATH/port_winefile.png"|| \ | ||||
|   ${loc_tray_cangelog}!bash -c open_changelog!"$PW_GUI_ICON_PATH/port_changelog.png"|| \ | ||||
|   ${loc_tray_force_exit}    !bash -c tray_icon_click_exit!"$PW_GUI_ICON_PATH/port_exit.png"||" &  | ||||
|   ${loc_tray_force_exit}    !bash -c tray_icon_click_exit!"$PW_GUI_ICON_PATH/port_exit.png"||" 2>/dev/null &  | ||||
|  | ||||
|     return 0 | ||||
| } | ||||
|    | ||||
| pw_gui_for_edit_db () { | ||||
|     KEY_EDIT_DB_GUI=$RANDOM | ||||
|     if [[ -n "`echo "${MANGOHUD_CONFIG}" | grep "fps_limit"`" ]] ; then | ||||
|         FPS_LIMIT_VAR="`echo ${MANGOHUD_CONFIG} | sed 's/.*fps_limit=//g' | awk -F, '{print $1}'`" | ||||
|     if echo "${MANGOHUD_CONFIG}" | grep "fps_limit" ; then | ||||
|         FPS_LIMIT_VAR="$(echo ${MANGOHUD_CONFIG} | sed 's/.*fps_limit=//' | awk -F, '{print $1}')" | ||||
|     else | ||||
|         FPS_LIMIT_VAR=0 | ||||
|         FPS_LIMIT_VAR="disabled" | ||||
|     fi | ||||
|     echo "FPS_LIMIT_VAR=$FPS_LIMIT_VAR" | ||||
|  | ||||
|     if [[ -n "${PW_WINE_CPU_TOPOLOGY}" ]] && [[ "${PW_WINE_CPU_TOPOLOGY}" != "disabled" ]] ; then | ||||
|         CPU_LIMIT_VAR="`echo ${PW_WINE_CPU_TOPOLOGY%%:*}`" | ||||
|     else | ||||
|         CPU_LIMIT_VAR="disabled" | ||||
|     fi | ||||
|  | ||||
|     GET_REFRASH_RATE="30!45!60!75!120!144!165!240" | ||||
|  | ||||
|     logical_cores=$(grep -c "^processor" /proc/cpuinfo) | ||||
|     if [[ "${logical_cores}" -le "4" ]] ; then | ||||
|         GET_LOGICAL_CORE="1!$(seq -s! 1 $((${logical_cores} - 1)))" | ||||
|     else | ||||
|         GET_LOGICAL_CORE="1!2!$(seq -s! 4 4 $((${logical_cores} - 1)))" | ||||
|     fi | ||||
|  | ||||
|     unset ADD_CHK_BOX_EDIT_DB | ||||
|     edit_db_field_add () { | ||||
|         for int_to_boole in $@ ; do | ||||
| @@ -170,8 +186,8 @@ pw_gui_for_edit_db () { | ||||
|     edit_db_field_add $@ | ||||
|     old_IFS=$IFS | ||||
|     IFS="%"  | ||||
|     "${pw_yad_new}" --plug=$KEY_EDIT_DB_GUI --tabnum="1" --form --separator=" " --columns=4 ${ADD_CHK_BOX_EDIT_DB} \ | ||||
|     1> "${PORT_WINE_TMP_PATH}/tmp_output_yad_edit_db" &  | ||||
|     "${pw_yad_v12_3}" --plug=$KEY_EDIT_DB_GUI --tabnum="1" --form --separator=" " --columns=4 ${ADD_CHK_BOX_EDIT_DB} \ | ||||
|     1> "${PORT_WINE_TMP_PATH}/tmp_output_yad_edit_db" 2>/dev/null &  | ||||
|     IFS=$old_IFS | ||||
|  | ||||
|     case ${PW_WINDOWS_VER} in | ||||
| @@ -179,21 +195,21 @@ pw_gui_for_edit_db () { | ||||
|         "XP") ADD_WINVER_EDIT_DB="XP!7!10" ;; | ||||
|            *) ADD_WINVER_EDIT_DB="10!7!XP" ;; | ||||
|     esac | ||||
|     "${pw_yad_new}" --plug=$KEY_EDIT_DB_GUI --tabnum="2" --form --separator="%" --columns=1 \ | ||||
|     "${pw_yad_v12_3}" --plug=$KEY_EDIT_DB_GUI --tabnum="2" --form --separator="%" --columns=1 \ | ||||
|     --field="${loc_gui_ver_windows}!${loc_gui_ver_windows_help} :CB" "${ADD_WINVER_EDIT_DB}" \ | ||||
|     --field="${loc_gui_aut_winetricks}!${loc_gui_aut_winetricks_help} :CBE" "${PW_DLL_INSTALL}!vcrun2019 corefonts lucida" \ | ||||
|     --field="${loc_gui_winedllover}!${loc_gui_winedllover_help} :CBE" "${WINEDLLOVERRIDES}!libglesv2=!d3dx9_36,d3dx9_42=n,b;mfc120=b,n" \ | ||||
|     --field=":LBL" "" \ | ||||
|     --field="${loc_gui_arg_exe}!${loc_gui_arg_exe_help} :CBE" "\\${LAUNCH_PARAMETERS[@]}!-dx11 -skipintro 1" \ | ||||
|     --field=":LBL" "" \ | ||||
|     --field="${loc_gui_mango_fps}!${loc_gui_mango_fps_help} :SCL" ${FPS_LIMIT_VAR} 2>/dev/null 1> "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" &  | ||||
|  | ||||
|     "${pw_yad_new}" --paned --key="$KEY_EDIT_DB_GUI" --title "EDIT_DB" --text-align=center --height="550" \ | ||||
|     --text "${loc_gui_edit_db} <b>${PORTWINE_DB}</b>\n ${loc_gui_edit_db_help}" --separator=" " --borders=10 --center \ | ||||
|     --field="${loc_gui_cpu_limit}!${loc_gui_cpu_limit_help} :CB" "${CPU_LIMIT_VAR}!disabled!${GET_LOGICAL_CORE}" \ | ||||
|     --field="${loc_gui_mango_fps}!${loc_gui_mango_fps_help} :CB" "${FPS_LIMIT_VAR}!disabled!${GET_REFRASH_RATE}"  2>/dev/null 1> "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" 2>/dev/null & | ||||
|     "${pw_yad_v12_3}" --paned --key="$KEY_EDIT_DB_GUI" --title "EDIT_DB" --text-align=center --height="650" \ | ||||
|     --text "${loc_gui_edit_db} <b>${PORTWINE_DB}</b>\n ${loc_gui_edit_db_help}" --separator=" " --borders=3 \ | ||||
|     --window-icon="$PW_GUI_ICON_PATH/port_proton.png" \ | ||||
|     --button="${loc_gui_cancel}"!!"${loc_gui_cancel_help}":1 \ | ||||
|     --button="${loc_gui_open_db}"!!"${loc_gui_open_db_help}":150 \ | ||||
|     --button="${loc_gui_save_changes}"!!"${loc_gui_save_changes_help}":0 | ||||
|     --button="${loc_gui_save_changes}"!!"${loc_gui_save_changes_help}":0 2>/dev/null | ||||
|     YAD_STATUS="$?" | ||||
|     case "$YAD_STATUS" in  | ||||
|           1) /usr/bin/env bash -c ${pw_full_command_line[*]} & exit 0 ;; | ||||
| @@ -217,14 +233,25 @@ pw_gui_for_edit_db () { | ||||
|     PW_DLL_INSTALL=`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $2}'` | ||||
|     WINEDLLOVERRIDES=`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $3}'` | ||||
|     LAUNCH_PARAMETERS=`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $5}'` | ||||
|     FPS_LIMIT="`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $7}'`" | ||||
|     CPU_LIMIT="`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $7}'`" | ||||
|     FPS_LIMIT="`cat "${PORT_WINE_TMP_PATH}/tmp_output_yad_fps_limit" | awk -F"%" '{print $8}'`" | ||||
|  | ||||
|     if [ "${FPS_LIMIT}" != 0 ] ; then | ||||
|     if [[ "${FPS_LIMIT}" != "disabled" ]] && [[ "${FPS_LIMIT_VAR}" != "disabled" ]] ; then | ||||
|         export MANGOHUD_CONFIG="$(echo ${MANGOHUD_CONFIG} | sed "s/fps_limit=${FPS_LIMIT_VAR}/fps_limit=${FPS_LIMIT}/")" | ||||
|         export PW_MANGOHUD=1 | ||||
|     elif [[ "${FPS_LIMIT}" != "disabled" ]] && [[ "${FPS_LIMIT_VAR}" == "disabled" ]] ; then | ||||
|         export MANGOHUD_CONFIG=${MANGOHUD_CONFIG},fps_limit=${FPS_LIMIT} | ||||
|         export PW_MANGOHUD=1 | ||||
|     elif [[ "${FPS_LIMIT}" == "disabled" ]] && [[ "${FPS_LIMIT_VAR}" != "disabled" ]] ; then | ||||
|         export MANGOHUD_CONFIG="$(echo ${MANGOHUD_CONFIG} | sed "s/,fps_limit=${FPS_LIMIT_VAR}//")" | ||||
|     fi | ||||
|     if [[ "${CPU_LIMIT}" != "disabled" ]] ; then | ||||
|         export PW_WINE_CPU_TOPOLOGY="${CPU_LIMIT}:$(seq -s, 0 $((${CPU_LIMIT} - 1)))" | ||||
|     else | ||||
|         export PW_WINE_CPU_TOPOLOGY="disabled" | ||||
|     fi | ||||
|     echo "pw_gui_for_edit_db PORTWINE_DB_FILE=$PORTWINE_DB_FILE" | ||||
|     edit_db_from_gui $@ MANGOHUD_CONFIG LAUNCH_PARAMETERS PW_WINDOWS_VER PW_DLL_INSTALL WINEDLLOVERRIDES | ||||
|     edit_db_from_gui $@ MANGOHUD_CONFIG LAUNCH_PARAMETERS PW_WINDOWS_VER PW_DLL_INSTALL WINEDLLOVERRIDES PW_WINE_CPU_TOPOLOGY | ||||
|     return 0 | ||||
| } | ||||
|  | ||||
| @@ -294,22 +321,24 @@ gui_proton_downloader () { | ||||
|         #GUI | ||||
|         export KEY_WINE=$RANDOM | ||||
|         try_remove_file "${PORT_WINE_TMP_PATH}/tmp_proton_pw_set" | ||||
|         try_remove_file "${PORT_WINE_TMP_PATH}/tmp_kron4ek_set" | ||||
|         try_remove_file "${PORT_WINE_TMP_PATH}/tmp_proton_set" | ||||
|         try_remove_file "${PORT_WINE_TMP_PATH}/tmp_ge_custom_set" | ||||
|         try_remove_file "${PORT_WINE_TMP_PATH}/tmp_installed_wine_set" | ||||
|  | ||||
|         `"${pw_yad}" --plug=$KEY_WINE --tabnum=1 --list --separator="" --listen \ | ||||
|         --column "$loc_gui_set_new_wine" < "${PORT_WINE_TMP_PATH}/tmp_proton_pw_git" 1> "${PORT_WINE_TMP_PATH}/tmp_proton_pw_set"` & | ||||
|         --column "$loc_gui_set_new_wine" < "${PORT_WINE_TMP_PATH}/tmp_proton_pw_git" 1> "${PORT_WINE_TMP_PATH}/tmp_proton_pw_set" 2>/dev/null` & | ||||
|         `"${pw_yad}" --plug=$KEY_WINE --tabnum=2 --list --separator="" --listen \ | ||||
|         --column "$loc_gui_set_new_wine" < "${PORT_WINE_TMP_PATH}/tmp_wine_kron4ek_git" 1> "${PORT_WINE_TMP_PATH}/tmp_kron4ek_set"` & | ||||
|         --column "$loc_gui_set_new_wine" < "${PORT_WINE_TMP_PATH}/tmp_wine_kron4ek_git" 1> "${PORT_WINE_TMP_PATH}/tmp_kron4ek_set" 2>/dev/null` & | ||||
|         `"${pw_yad}" --plug=$KEY_WINE --tabnum=3 --list --separator="" --listen \ | ||||
|         --column "$loc_gui_set_new_wine" < "${PORT_WINE_TMP_PATH}/tmp_proton_ge_git" 1> "${PORT_WINE_TMP_PATH}/tmp_proton_set"` & | ||||
|         --column "$loc_gui_set_new_wine" < "${PORT_WINE_TMP_PATH}/tmp_proton_ge_git" 1> "${PORT_WINE_TMP_PATH}/tmp_proton_set" 2>/dev/null` & | ||||
|         `"${pw_yad}" --plug=$KEY_WINE --tabnum=4 --list --separator="" --listen \ | ||||
|         --column "$loc_gui_set_new_wine" < "${PORT_WINE_TMP_PATH}/tmp_wine_ge_custom_git" 1> "${PORT_WINE_TMP_PATH}/tmp_ge_custom_set"` & | ||||
|         --column "$loc_gui_set_new_wine" < "${PORT_WINE_TMP_PATH}/tmp_wine_ge_custom_git" 1> "${PORT_WINE_TMP_PATH}/tmp_ge_custom_set" 2>/dev/null` & | ||||
|         `"${pw_yad}" --plug=$KEY_WINE --tabnum=5 --list --separator="" --listen \ | ||||
|         --column "$loc_gui_del_wine" < "${PORT_WINE_TMP_PATH}/tmp_installed_wine" 1> "${PORT_WINE_TMP_PATH}/tmp_installed_wine_set"` & | ||||
|         `"${pw_yad}" --key=$KEY_WINE --notebook --width=500 --height=600 --text-align=center --center \ | ||||
|         --column "$loc_gui_del_wine" < "${PORT_WINE_TMP_PATH}/tmp_installed_wine" 1> "${PORT_WINE_TMP_PATH}/tmp_installed_wine_set" 2>/dev/null` & | ||||
|         `"${pw_yad}" --key=$KEY_WINE --notebook --width=500 --height=600 --text-align=center \ | ||||
|         --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "WINE MANAGER" --separator="" \ | ||||
|         --tab-pos=top --tab="PROTON-LG" --tab="WINE-KRON4EK"  --tab="PROTON-GE" --tab="WINE-GE-CUSTOM" --tab="$loc_gui_installed_wine"` | ||||
|         --tab-pos=top --tab="PROTON-LG" --tab="WINE-KRON4EK"  --tab="PROTON-GE" --tab="WINE-GE-CUSTOM" --tab="$loc_gui_installed_wine" 2>/dev/null` | ||||
|         YAD_WINE_STATUS="$?" | ||||
|         if [[ "$YAD_WINE_STATUS" == "1" || "$YAD_WINE_STATUS" == "252" ]] ; then | ||||
|             /usr/bin/env bash -c ${pw_full_command_line[*]} & | ||||
| @@ -326,13 +355,16 @@ gui_proton_downloader () { | ||||
|             export VERSION_WINE_GIT="`cat "${PORT_WINE_TMP_PATH}/tmp_ge_custom_set"`" | ||||
|         elif [ ! -z `cat "${PORT_WINE_TMP_PATH}/tmp_installed_wine_set" | awk '{print $1}'` ] ; then | ||||
|             export VERSION_INSTALLED_WINE="`cat "${PORT_WINE_TMP_PATH}/tmp_installed_wine_set"`" | ||||
|         else | ||||
|             print_info "Nothing to do." | ||||
|             /usr/bin/env bash -c ${pw_full_command_line[*]} & | ||||
|             exit 0 | ||||
|         fi | ||||
|  | ||||
|         try_remove_file "${PORT_WINE_TMP_PATH}/tmp_proton_ge_git" | ||||
|         try_remove_file "${PORT_WINE_TMP_PATH}/tmp_proton_pw_git" | ||||
|         try_remove_file "${PORT_WINE_TMP_PATH}/tmp_wine_kron4ek_git" | ||||
|         try_remove_file "${PORT_WINE_TMP_PATH}/tmp_proton_set" | ||||
|         try_remove_file "${PORT_WINE_TMP_PATH}/tmp_ge_custom_set" | ||||
|         try_remove_file "${PORT_WINE_TMP_PATH}/tmp_proton_ge_git" | ||||
|         try_remove_file "${PORT_WINE_TMP_PATH}/tmp_wine_ge_custom_git" | ||||
|         try_remove_file "${PORT_WINE_TMP_PATH}/tmp_installed_wine" | ||||
|  | ||||
|     elif [[ "$1" == "silent" ]] && [[ -n "$2" ]] ; then | ||||
| @@ -340,8 +372,9 @@ gui_proton_downloader () { | ||||
|     fi | ||||
|  | ||||
|     for GIVE_WINE_URL in ${PROTON_GE_GIT[@]} ${PROTON_PW_GIT[@]} ${WINE_KRON4EK[@]} ${WINE_GE_CUSTOM[@]} ; do | ||||
|         if [ ! -z `echo ${GIVE_WINE_URL} | grep -i "$VERSION_WINE_GIT"` ] ; then | ||||
|         if [ ! -z `echo ${GIVE_WINE_URL} | grep -i "${VERSION_WINE_GIT}"` ] ; then | ||||
|             export URL_VERSION_PROTON_GIT="${GIVE_WINE_URL}" | ||||
|             break | ||||
|         fi | ||||
|     done | ||||
| 	 | ||||
| @@ -404,20 +437,20 @@ gui_vkBasalt () { | ||||
|     fi | ||||
|     export old_IFS=$IFS | ||||
|     export IFS="%"  | ||||
|     "${pw_yad_new}" --plug=$KEY_FX_GUI --tabnum="1" --form --columns=5 --separator=" " \ | ||||
|     "${pw_yad_v12_3}" --plug=$KEY_FX_GUI --tabnum="1" --form --columns=5 --separator=" " \ | ||||
|     --text-align=center --text="$loc_gui_vkbasalt_top" \ | ||||
|     ${ADD_GUI_FX} 1> "${PORT_WINE_TMP_PATH}/tmp_yad_basalt_set" & | ||||
|     ${ADD_GUI_FX} 1> "${PORT_WINE_TMP_PATH}/tmp_yad_basalt_set" 2>/dev/null & | ||||
|     export IFS="${old_IFS}"  | ||||
|  | ||||
|     "${pw_yad_new}" --plug=$KEY_FX_GUI --tabnum="2" --separator=" " --form \ | ||||
|     "${pw_yad_v12_3}" --plug=$KEY_FX_GUI --tabnum="2" --separator=" " --form \ | ||||
|     --field="AMD FidelityFX - Contrast Adaptive Sharpening"!"$loc_gui_ffx_cas":SCL "${VKBASALT_FFX_CAS_GUI}" \ | ||||
|     1> "${PORT_WINE_TMP_PATH}/tmp_yad_cas_set" & | ||||
|     1> "${PORT_WINE_TMP_PATH}/tmp_yad_cas_set" 2>/dev/null & | ||||
|  | ||||
|     "${pw_yad_new}" --paned --key="$KEY_FX_GUI" --height="500" --title="vkBasalt" --center --borders=10 \ | ||||
|     "${pw_yad_v12_3}" --paned --key="$KEY_FX_GUI" --height="650" --title="vkBasalt" --center --borders=3 \ | ||||
|     --separator=" " --window-icon="$PW_GUI_ICON_PATH/port_proton.png" \ | ||||
|     --button="$loc_gui_cancel"!!"$loc_gui_cancel_help":1 \ | ||||
|     --button="$loc_gui_disabled_vkbas"!!"$loc_gui_disabled_vkbas_help":180 \ | ||||
|     --button="$loc_gui_save_changes"!!"$loc_gui_save_changes_help":182 | ||||
|     --button="$loc_gui_save_changes"!!"$loc_gui_save_changes_help":182 2>/dev/null | ||||
|     YAD_VKBASALT_STATUS="$?" | ||||
|     case "${YAD_VKBASALT_STATUS}" in | ||||
|         1|252) | ||||
| @@ -456,38 +489,49 @@ gui_vkBasalt () { | ||||
| portwine_create_shortcut () { | ||||
|     pw_create_gui_png | ||||
|     name_desktop="${PORTPROTON_NAME}" | ||||
|     try_remove_file "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|     echo "[Desktop Entry]" > "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|     echo "Name=${PORTPROTON_NAME}" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|     if [ -z "${PW_CHECK_AUTOINSTAL}" ] | ||||
|     then echo "Exec=env "\"${PORT_SCRIPTS_PATH}/start.sh\" \"${portwine_exe}\" "" \ | ||||
|     >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|     else echo "Exec=env "\"${PORT_SCRIPTS_PATH}/start.sh\" \"${portwine_exe}\" "" \ | ||||
|     >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|     fi | ||||
|     echo "Type=Application" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|     echo "Categories=Game" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|     echo "StartupNotify=true" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|     echo "Path="${PORT_SCRIPTS_PATH}/"" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|     echo "Icon="${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png"" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|     chmod u+x "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|     "${pw_yad}" --title="${inst_set}." --form --center --borders=5 \ | ||||
|     OUTPUT=$("${pw_yad}" --title="${inst_set}." --form --borders=3 \ | ||||
|     --window-icon "$PW_GUI_ICON_PATH/port_proton.png" \ | ||||
|     --image "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" \ | ||||
|     --field="\n    <b>${name_desktop}.desktop</b>:LBL" "" \ | ||||
|     --field="\n    ${ss_done}:LBL" "" \ | ||||
|     --button="$loc_gui_no":1 \ | ||||
|     --button="$loc_gui_yes":0  | ||||
|     --field="${sc_info}":LBL "" \ | ||||
|     --field="${sc_name}:" "${name_desktop}" \ | ||||
|     --field="${sc_menu_desktop}":CHK "TRUE" \ | ||||
|     --button="$loc_gui_create_shortcut":0) | ||||
|     if [ $? -eq "0" ]; then | ||||
|         try_remove_file "${HOME}/.local/share/applications/${name_desktop}.desktop" | ||||
|         cp -f "${PORT_WINE_PATH}/${name_desktop}.desktop" "${HOME}/.local/share/applications/" | ||||
|         if [[ -d "${HOME}/Desktop" ]] ; then | ||||
|             cp -f "${PORT_WINE_PATH}/${name_desktop}.desktop" "${HOME}/Desktop/" | ||||
|         elif [[ -d "${HOME}/Рабочий стол" ]] ; then | ||||
|             cp -f "${PORT_WINE_PATH}/${name_desktop}.desktop" "${HOME}/Рабочий стол/" | ||||
|         name_desktop=$(echo "$OUTPUT" | awk -F'|' '{ print $2 }') | ||||
|         create_menu_desktop_shortcut=$(echo "$OUTPUT" | awk -F'|' '{ print $3 }') | ||||
|  | ||||
|         try_remove_file "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|          | ||||
|         mv -f "${PORT_WINE_PATH}/data/img/${PORTPROTON_NAME}.png" "${PORT_WINE_PATH}/data/img/${name_desktop}.png" | ||||
|  | ||||
|         echo "[Desktop Entry]" > "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|         echo "Name=${name_desktop}" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|         if [ -z "${PW_CHECK_AUTOINSTAL}" ] | ||||
|         then echo "Exec=env "\"${PORT_SCRIPTS_PATH}/start.sh\" \"${portwine_exe}\" "" \ | ||||
|         >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|         else echo "Exec=env "\"${PORT_SCRIPTS_PATH}/start.sh\" \"${portwine_exe}\" "" \ | ||||
|         >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|         fi | ||||
|         echo "Type=Application" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|         echo "Categories=Game" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|         echo "StartupNotify=true" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|         echo "Path="${PORT_SCRIPTS_PATH}/"" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|         echo "Icon="${PORT_WINE_PATH}/data/img/${name_desktop}.png"" >> "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|         chmod u+x "${PORT_WINE_PATH}/${name_desktop}.desktop" | ||||
|  | ||||
|         if [[ "${create_menu_desktop_shortcut}" == "TRUE" ]]; then | ||||
|             try_remove_file "${HOME}/.local/share/applications/${name_desktop}.desktop" | ||||
|             cp -f "${PORT_WINE_PATH}/${name_desktop}.desktop" "${HOME}/.local/share/applications/" | ||||
|             if [[ -d "${HOME}/Desktop" ]] ; then | ||||
|                 cp -f "${PORT_WINE_PATH}/${name_desktop}.desktop" "${HOME}/Desktop/" | ||||
|             elif [[ -d "${HOME}/Рабочий стол" ]] ; then | ||||
|                 cp -f "${PORT_WINE_PATH}/${name_desktop}.desktop" "${HOME}/Рабочий стол/" | ||||
|             fi | ||||
|         fi | ||||
|  | ||||
|  | ||||
|         [[ "$1" != silent ]] && xdg-open "${PORT_WINE_PATH}" 2>1 >/dev/null & | ||||
|     fi | ||||
|     [[ "$1" != silent ]] && xdg-open "${PORT_WINE_PATH}" 2>1 >/dev/null & | ||||
| } | ||||
|  | ||||
| portwine_delete_shortcut () { | ||||
|   | ||||
| @@ -1,5 +1,6 @@ | ||||
| reshadeTexturePath = /run/pressure-vessel/pv-from-host/reshade/textures | ||||
| reshadeIncludePath = /run/pressure-vessel/pv-from-host/reshade | ||||
|  | ||||
| FilmGrain2 = /run/pressure-vessel/pv-from-host/reshade/shaders/FilmGrain2.fx | ||||
| Curves = /run/pressure-vessel/pv-from-host/reshade/shaders/Curves.fx | ||||
| FakeHDR = /run/pressure-vessel/pv-from-host/reshade/shaders/FakeHDR.fx | ||||
|   | ||||