Commit Graph
229 Commits
Author SHA1 Message Date
Andrew Eikum b5646c4072 proton: Work around prefixes broken by unofficial builds
Some unofficial builds running closer to upstream created a Documents ->
My Documents symlink. We would then create a My Documents -> Documents
symlink, resulting in infinite recursion. Detect this scenario and fix
it before merging user directories.
2021-08-19 10:47:48 -05:00
Liam Middlebrook 0afcb19416 proton: Copy DLLs provided by the NVIDIA driver into prefix
The upcoming NVIDIA 470 driver series will introduce a DLL (nvngx.dll)
for the support of NVIDIA DLSS in Proton. This change adds logic for
discovering the location of DLL files provided by the NVIDIA driver, and
copies them to C:\Windows\System32\

Reviewed-by: Adam Moss <amoss@nvidia.com>
2021-08-17 10:11:32 -05:00
Liam Middlebrook 1630811474 dxvk-nvapi: Add to Proton
Add https://github.com/jp7677/dxvk-nvapi as a submodule. dxvk-nvapi will
not be copied into Proton prefixes by default, but instead will be
controlled via the environment variable PROTON_ENABLE_NVAPI. This is
done to avoid any potential adverse effects of the nvapi DLL existing
in cases where an application may require a function that is not
implemented by dxvk-nvapi.

This new functionality can be enabled by setting the following environment
variable to a value of `1`:
    `PROTON_ENABLE_NVAPI`

This functionality is needed in order to support DLSS within Proton.

Reviewed-by: Adam Moss <amoss@nvidia.com>
2021-08-17 10:11:32 -05:00
Andrew Eikum e82e98b1ff proton: Migrate old user paths to new paths
CW-Bug-Id: 18905
2021-08-17 10:11:32 -05:00
Giovanni Mascellani 9eb14500c2 Add and install Noto Sans Arabic.
This is useful to work around an issue with Arabic font rendering in
Cyberpunk 2077 installer, first reported at
https://github.com/ValveSoftware/Proton/issues/4450#issuecomment-882996582.

CW-Bug-Id: #19125
2021-08-12 10:54:20 -05:00
Giovanni Mascellani 0683ff8926 Build a fake Malgun Gothic font. 2021-08-12 10:54:20 -05:00
Giovanni Mascellani cf9d10ef68 Build a fake MS Gothic font. 2021-08-12 10:54:19 -05:00
Giovanni Mascellani dfa5bf8c18 Build a fake SimSun font. 2021-08-12 10:54:19 -05:00
Giovanni Mascellani 920377546d Prepare for compiling different SourceHanSans fonts.
This and the following commits provide some CJK fonts which the
Rockstar installer can use as fallback.

CW-Bug-Id: #18969
2021-08-12 10:54:19 -05:00
Andrew Eikum 7ff77df377 proton: More easily enable always-on logging 2021-08-12 08:53:50 -05:00
Jacek Caban 5bc6cdaa8e proton: Add support for PROTON_REMOTE_DEBUG_CMD to allow integration with remote debugger.
CW-Bug-Id: 16785
2021-08-12 08:53:50 -05:00
Zebediah Figura 8475bf39bc proton: Always check if the prefix config changed.
In particular, make sure that we update builtin dlls for the first process that runs.
2021-06-21 08:31:01 -05:00
Andrew Eikum 353e1b00c6 proton: Use DXVK's DXGI by default 2021-06-21 08:31:01 -05:00
Shawn M. Chapla 1916502152 proton: Remove winebrowser shell DDE registry keys
CW-Bug-Id: #18527
2021-06-17 15:10:20 -05:00
Andrew Eikum 607618b3df proton: Add PROTON_CRASH_REPORT_DIR runtime config
CW-Bug-Id: #18944
2021-06-17 15:10:17 -05:00
Renaud Lepage 139ad89ed3 proton: Assume STEAM_COMPAT_CLIENT_INSTALL_PATH is always set 2021-05-27 13:43:12 -05:00
Arkadiusz Hiler d2d52bd68a proton: Open the log file in append mode.
Opening file in append mode sets the offset to the end of the file prior
to each write. This allows user to append tags/notes to the log file
just before interesting events, e.g.:

    local $ ssh ivyl@test
    test  $ echo "!!! FOCUS CHANGE" >> ~/steam-XYZ.log

The log file is deleted just before we open it anyway, so there won't be
any leftover content from previous session.
2021-05-27 18:06:34 +03:00
Jacek Caban f632b693bd proton: Add runinprefix verb for running a program in a running session
CW-Bug-Id: 16785
2021-05-13 10:07:29 -05:00
Paul Gofman 8ddd3c36a1 proton: Link tahoma.ttf to Windows/Fonts.
CW-Bug-Id: 18862
2021-04-27 13:40:50 -05:00
Paul Gofman e1885f8496 Add replacement font for Courier Bold.
CW-Bug-Id: 18862
2021-04-27 13:40:40 -05:00
Arkadiusz Hiler 575d9bc1f9 Don't install amd_ags_x64 into prefix
The DLL ships with the games and having the built-in version in
system32/syswow64 has unexpected consequences.

If the game is launched from a subdirectory, but the DLL is in current
working directory, the built-in takes precedence as CWD has lower search
priority than system directories (with the default SafeDllSearchMode).

By not installing amd_ags_x64.dll in system32/syswow64 the built-in is
still picked up correctly from lib/ when necessary.

There's an accompanying patch for wine that makes sure wineboot won't
install the dll, but since we construct our default_pfx in a special way
we also need to make sure that files won't get copied/linked there.

To make prefix updates smooth this change also removes any stale
amd_ags_x64.dlls that may have been installed by previous version of
Proton.

CW-Bug-Id: 18804
2021-04-27 11:11:14 -05:00
Andrew Eikum 937607d1e5 proton: Log important variables set by the system and user_settings 2021-04-27 09:20:11 -05:00
Andrew Eikum c9540c2166 proton: Add PROTON_HEAP_DELAY_FREE runtime config option 2021-03-31 14:08:10 -05:00
Andrew Eikum 0e4675f4d2 proton: Add PROTON_NO_XIM runtime config option 2021-03-31 14:08:10 -05:00
Andrew Eikum 8398ebded4 update wine to 6.3 2021-03-31 14:08:09 -05:00