Zhiyi Zhang
33b0da5fb1
proton: Do use builtin steam.exe for Locoland.
...
Locoland(352130) executable name happens to be steam.exe.
CW-Bug-Id: #21737
2023-06-05 17:55:10 +03:00
Arkadiusz Hiler
e82bed8475
proton: Remove stale ir50_32.dll that can be left by experimental.
...
When switching back to 8.0 from Experimental it will point to a .dll in
the Experimental install directory. It's incompatible with 8.0 due to
experimental-only winegstreamer changes and causes delayed symbol
imports to fail.
CW-Bug-Id: #22205
2023-04-28 12:19:30 +03:00
Arkadiusz Hiler
5ac739906d
proton: Optionally copy d3d12core for vkd3d-proton.
...
In anticipation of a pull-request being merged that moves things around
and introduces d3d12core.dll.
This should be made non-optional once the vkd3d-proton changes land.
Link: https://github.com/HansKristian-Work/vkd3d-proton/pull/1458
2023-04-27 17:51:45 +03:00
Andrew Eikum
576a839c18
Don't ship filenames with colons in them
...
CW-Bug-Id: #22054
2023-04-18 17:04:27 +03:00
Adam Moss
e171c46460
proton: Set enablenvapi for Red Dead 2 / Online.
...
Link: https://github.com/ValveSoftware/Proton/pull/6227
2023-03-08 17:35:54 +02:00
Arkadiusz Hiler
e34482a580
proton: Disable hidenvgpu if nvapi is enabled.
...
Link: https://github.com/ValveSoftware/Proton/pull/6227
2023-03-08 17:35:54 +02:00
Adam Moss
6b4dce48bc
proton: Enable dxvknvapi on a bunch of (DLSS) titles.
...
Link: https://github.com/ValveSoftware/Proton/pull/6120
Link: https://github.com/ValveSoftware/Proton/pull/6227
(squashed a bunch of commits)
2023-03-08 17:35:54 +02:00
Giovanni Mascellani
85ed53c1d8
fonts: Provide an alternative fake Arial font.
...
The fake Arial already distributed with Python is based on Liberation fonts.
It is metrically compatible with the original Arial, but it doesn't support
all its glyphs (specifically, it misses Arabic).
The new one is based on Noto fonts. It support all the Arial glyphs
(I think), but it is not metrically compatible. It is enabled based
on SteamGameId when glyph coverage is considered more important than
metric compatibility.
So far it is enabled for FIFA 21 and FIFA 22.
CW-Bug-Id: #20302
2023-02-14 16:07:44 +02:00
Giovanni Mascellani
77fd6c3b2d
proton: Install all available fonts to the prefix.
...
This requires commit "loader: Install all fonts provided by Proton in the
registry." in Wine, otherwise font support will be broken.
2023-02-14 16:07:44 +02:00
Giovanni Mascellani
4378ee718a
fonts: Install Liberation fonts using their fake name.
...
For homogeneity with the other fake fonts. That's mostly cosmetic.
2023-02-14 16:07:44 +02:00
Rémi Bernon
08a5f1cd56
proton: Trace language related environment variables.
...
CW-Bug-Id: #21346
2023-02-14 16:07:44 +02:00
Giovanni Mascellani
84012c12aa
Do not use the vkd3d version emebededd in Wine, but rebuild from its submodule.
2023-02-14 16:07:44 +02:00
Arkadiusz Hiler
1489a6a8d5
proton: Bump prefix version.
2023-02-14 16:07:43 +02:00
Paul Gofman
89a2dac0b2
proton: Enable gamedrive compat option for Creativerse.
...
CW-Bug-Id: #21729
2023-02-14 16:07:43 +02:00
Paul Gofman
f693c48a4c
proton: Enable gamedrive compat option for As Dusk Fails.
...
CW-Bug-Id: #21485
2023-02-14 16:07:43 +02:00
Simon McVittie
4db08dc766
proton: Don't crash if sys.stderr is not usable
...
If a Steam user runs Steam from a terminal, puts it in the background
and then exits from that terminal, or if they restart their desktop
session from a terminal (as in ValveSoftware/Proton#6277 ) and then exit
from that terminal, then we can inherit a stdout and/or stderr file
descriptor pointing to an invalid file descriptor. Writing to such a
file descriptor fails with EIO. Similarly, we could get write errors
as a result of OS state, such as ENOSPC if we are writing to a disk
that is full, or EPIPE if a stream to a logging framework such as the
systemd journal has been shut down.
In sufficiently pathological situations, the file descriptor could even
become invalid while the `proton` script is running, so even checking
for validity on startup would not be enough to prevent this.
The ability to log to stderr is important but not functionally critical,
and it's not like there is anything we can usefully do about a write
failure here (or even anywhere we can usefully put a warning message),
so just ignore write errors. This is similar to the behaviour of the
`logging` framework in the Python standard library (which writes to
`stderr` if a user-defined handler fails, but takes no other action)
and also similar to the approach taken to solve
ValveSoftware/steam-for-linux#8069 .
Signed-off-by: Simon McVittie <smcv@collabora.com>
Link: https://github.com/ValveSoftware/Proton/pull/6341
2023-02-14 16:07:43 +02:00
Anna Lasky
dd32534265
proton: Remove games that need shared resources from MFDXGI hack
...
This comments out all of the games that do not need the MFDXGI hack on
the experimental branch because the experimental branch has support for
shared resources.
2023-02-14 16:07:43 +02:00
Anna Lasky
f9b51bc244
proton: Remove LOST EMBER from MFDXGI hack
...
CW-Bug-ID: #21097
2023-02-14 16:07:43 +02:00
Anna Lasky
5328d61f5a
proton: Reorganize games in MFDXGI hack and add missing titles
...
This separates out the games that only need shared resources in order to
play video correctly without the MFDXGI hack. El Hijo (853050) and
Labyrinth City: Pierre the Maze Detective (1421790) were also added.
2023-02-14 16:07:43 +02:00
Giovanni Mascellani
9ae252db4f
Ensure vkd3d-proton is used for D3D12 unless wined3d is explicitly requested.
2022-10-14 18:21:56 +03:00
Paul Gofman
be25891a0c
proton: Enable WINE_HEAP_DELAY_FREE for Call of Duty: Black Ops II Zombies and Multiplayer.
...
CW-Bug-Id: #21106
2022-10-14 18:21:56 +03:00
Paul Gofman
8d2e85be8c
proton: Disable forced LAA for Sword and Fairy 4.
...
CW-Bug-Id: #21180
2022-10-14 18:21:56 +03:00
Arkadiusz Hiler
5720dd3e9c
proton: Add PROTON_NO_STEAM_FFMPEG to ignore ffmpeg that ships with Steam.
...
CW-Bug-Id: #20923
2022-08-10 19:29:30 +03:00
Paul Gofman
7e27da4bc2
proton: Add Warframe to OPWR disablement list.
...
CW-Bug-Id: #20944
The game's launcher starts hitting unimplemented d3dcompiler
bits with OPWR supported.
2022-08-10 19:29:30 +03:00
Paul Gofman
7d4ca96ae1
proton: Add WINE_DISABLE_VULKAN_OPWR hack appid list.
...
CW-Bug-Id: #20680
2022-08-10 19:29:30 +03:00
Paul Gofman
242d655a0f
proton: Add dotnetfx35setup.exe builtin override.
...
CW-Bug-Id: #20733
2022-08-10 19:29:30 +03:00
Simon McVittie
79c9b6a15d
proton: Allow forwarding commands into the Proton environment
...
Recent versions of the Steam Runtime include an IPC server/client pair
which can be used to run commands inside the container environment
(or any other special execution environment), analogous to sshd/ssh or
flatpak-portal/flatpak-spawn. The server runs inside the Steam Runtime
container and accepts commands over D-Bus; the client runs on the host
system, asks the server to run a command, and forwards its stdin, stdout
and stderr back to the host.
https://gitlab.steamos.cloud/steamrt/steamlinuxruntime/-/merge_requests/72
adds support for injecting commands into the SteamLinuxRuntime_soldier
compatibility tool (and any later version, such as sniper). However,
Steam compatibility tools are stackable: in particular, Proton runs in a
soldier container (or presumably sniper in future). If we are debugging
a Proton game, then ideally we will want to inject commands into Proton's
execution environment rather than soldier's, so that they run with the
correct environment variables etc. to communicate with a running Proton
session. In particular, it's important that the `WINEPREFIX` is correct.
The steam-runtime-launcher-interface-0 program implements the
interface for compatibility tools to use to decide where, if anywhere,
to launch the command server.
This commit does not alter the scripts produced by
PROTON_DUMP_DEBUG_COMMANDS. To run those scripts' commands in the
container environment, pass their filenames to
steam-runtime-launch-client.
Signed-off-by: Simon McVittie <smcv@collabora.com>
Link: https://github.com/ValveSoftware/Proton/pull/5891
2022-08-10 19:29:30 +03:00
Arkadiusz Hiler
4cc575b2f4
proton: Add Greak: Memories of Azur to MFDXGI hack.
...
CW-Bug-Id: #19126
2022-08-10 19:29:30 +03:00
Newbyte
7785b9ab78
proton: Add Terra Nil Demo to MFDXGI hack.
...
CW-Bug-Id: #19126
Link: https://github.com/ValveSoftware/Proton/pull/5907
Works around main menu background video being corrupted.
2022-08-10 19:29:30 +03:00
Paul Gofman
b1852d2e67
proton: Add Lost Ember to MFDXGI hack.
...
CW-Bug-Id: #21097
2022-08-10 19:29:30 +03:00
Anna Lasky
6a1714a0d7
proton: Remove games from MFDXGI hack
...
This removes games that we believe are fixed by the initial improved
implementation of the mfdxgidevicemanager - specifically games with
graphical distortion during video playback.
CW-Bug-ID: #19126
2022-08-10 19:23:14 +03:00
Bitwolf
0ba9319113
proton: Add POSTAL: Brain Damaged to MFDXGI hack
...
CW-Bug-Id: #19126
Link: https://github.com/ValveSoftware/Proton/pull/5899
2022-08-03 14:24:42 +03:00
Esme Povirk
d141d538bc
proton: Make reflinks for file copies when possible.
...
CW-Bug-Id: #18633
2022-08-03 14:24:34 +03:00
Anna Lasky
ff7bfc5595
Add Dread X Collection: The Hunt to MFDXGI hack
...
CW-Bug-Id: #19126
2022-06-03 17:57:43 +03:00
Arkadiusz Hiler
faf8b2e64d
proton: Add Outward to MFDXGI hack.
...
CW-Bug-Id: #19126
2022-06-03 17:57:43 +03:00
Paul Gofman
673e1ae43d
proton: Add V Rising to MFDXGI hack.
...
CW-Bug-Id: #19126
2022-06-03 17:57:43 +03:00
Arkadiusz Hiler
203580f96f
Add two more games to MFDXGI manager hack.
...
CW-Bug-Id: #19126
CW-Bug-Id: #20655
2022-06-03 17:57:43 +03:00
Arkadiusz Hiler
cc8db7609b
Add three more games to MFDXGI manager hack.
...
CW-Bug-Id: #19126
2022-06-03 17:57:43 +03:00
Anna Lasky
ced280e888
Add Ember Knights to IMFDXGIDeviceManager hack
...
CW-Bug-Id: #19126
2022-06-03 17:57:43 +03:00
Anna Lasky
8909720216
Add El Hijo - A Wild West Tale to MFDXGI manager hack
...
CW-Bug-ID: #19126
2022-06-03 17:57:43 +03:00
Anna Lasky
d7452b523f
Add EZ2ON REBOOT : R to MFDXGI manager hack
...
CW-Bug-ID: #19126
2022-06-03 17:57:43 +03:00
Paul Gofman
a216f5baa0
Add POSTAL4: No Regerts to MFDXGI manager hack.
...
CW-Bug-Id: #20611
2022-06-03 17:57:29 +03:00
Andrew Eikum
94772426ac
Add Disintegration to MFDXGI manager hack
...
CW-Bug-Id: #20592
2022-06-03 14:26:11 +03:00
Georg Lehmann
7e7f6155d3
Set VKD3D_SHADER_DEBUG=none by default.
...
Link: https://github.com/ValveSoftware/Proton/pull/5326
2022-06-03 14:26:11 +03:00
Anna Lasky
44e38af171
Add Monster Train to IMFDXGIDeviceManager hack
...
CW-Bug-Id: #19126
2022-04-21 13:02:27 +03:00
Anna Lasky
34b55deb55
Add 3 more titles to IMFDXGIDeviceManager hack
...
Titles added: Hardspace: Shipbreaker (1161580), Nine Sols Demo
(1809540), Car Mechanic Simulator 2021 (1190000)
CW-Bug-Id: #19126
2022-04-21 13:02:27 +03:00
Arkadiusz Hiler
aaabeb5567
Revert "proton: Add noesync,nofsync for Apex Legends"
...
This reverts commit 25a58123a1
.
2022-04-05 18:13:11 +03:00
Arkadiusz Hiler
f45b165030
Revert "proton: Add noesync,nofsync for PixelJunk Eden"
...
This reverts commit 0623da2af4
.
2022-04-05 18:13:11 +03:00
Liam Middlebrook
aa33dd9cb8
proton: Set DXVK_ENABLE_NVAPI envvar when NvAPI is enabled
...
See: https://github.com/doitsujin/dxvk/pull/2544
Link: https://github.com/ValveSoftware/Proton/pull/5687
2022-04-05 18:13:11 +03:00
Paul Gofman
a4824da779
proton: Optionally setup T: drive for native Steam directory.
...
CW-Bug-Id: #20285
2022-04-05 18:13:11 +03:00
Andrew Eikum
addf6dc5b6
proton: Remove the FFXIV launcher workaround
...
CW-Bug-Id: #20242
2022-04-05 18:13:11 +03:00
Anna Lasky
f0876fb99c
Add DJMAX RESPECT V to IMFDXGIDeviceManager hack
...
CW-Bug-Id: #19126
2022-04-05 18:13:11 +03:00
Arkadiusz Hiler
6ab3403b1e
Add The Complex to IMFDXGIDeviceManager hack
2022-04-05 18:13:11 +03:00
Andrew Eikum
7b49d43020
Add Gloomhaven to IMFDXGIDeviceManager hack
...
CW-Bug-Id: #19126
2022-04-05 18:13:11 +03:00
Andrew Eikum
023a715241
Add Rust to IMFDXGIDeviceManager hack
...
CW-Bug-Id: #19126
2022-04-05 18:13:11 +03:00
Andrew Eikum
0bbc7e480a
Add Cook-Out to IMFDXGIDeviceManager hack
...
CW-Bug-Id: #19126
2022-04-05 18:03:47 +03:00
Andrew Eikum
99c07e4dae
Add Haven to IMFDXGIDeviceManager hack
...
CW-Bug-Id: #19126
2022-04-05 18:03:47 +03:00
Andrew Eikum
473ce8c81d
Add Rustler to IMFDXGIDeviceManager hack
2022-03-01 12:32:14 -06:00
Andrew Eikum
c5b505393a
proton: Move mfplat MFDXGIDeviceManager hack appid list to proton script
2022-02-25 13:52:40 +02:00
Andrew Eikum
ccb2397f4c
proton: Force append_forever to be a named argument
...
And remove redundant default parameter value.
2022-02-25 13:52:40 +02:00
Andrew Eikum
32fe36d9b2
proton: Extend PROTON_LOG to support adding extra WINEDEBUG channels
2022-02-25 13:52:40 +02:00
Andrew Eikum
17683bff97
proton: Better handle broken symlinks
2022-02-25 13:52:40 +02:00
Andrew Eikum
90a11aca8e
proton: Add file_exists helper function
...
To make desired handling of symlinks more clear at the callsite.
2022-02-25 13:52:40 +02:00
Andrew Eikum
0623da2af4
proton: Add noesync,nofsync for PixelJunk Eden
2022-02-11 17:39:00 +02:00
Andrew Eikum
25a58123a1
proton: Add noesync,nofsync for Apex Legends
2022-02-11 17:39:00 +02:00
Arkadiusz Hiler
2a5b25a7a2
update dxvk to upstream v1.9.4
...
we can drop all the proton-specific customizations now that dxvk's dgxi
is the default one and wined3d interop is gone from vrclient
2022-02-11 17:39:00 +02:00
Arkadiusz Hiler
053954076c
Update wine
2022-02-11 17:39:00 +02:00
Rémi Bernon
b203ba6bdd
proton: Run steam from its Program Files (x86) location.
...
For CoD: Black Ops 3.
CW-Bug-Id: #19362
2022-01-24 22:53:20 +02:00
Derek Lesho
bcccab62e0
proton: Look for libraries in Steam Client path.
...
This is used to pick up Valve's build of ffmpeg, which includes proprietary decoders.
Signed-off-by: Derek Lesho <dlesho@codeweavers.com>
2022-01-24 22:53:20 +02:00
Jactry Zeng
710257adb4
proton: Add workaround for FFXIV to enable old launcher by default.
...
CW-Bug-Id: #19609
2022-01-24 16:03:39 +02:00
Andrew Eikum
71e306aaaa
proton: Bump dumped audio file version
2022-01-24 16:03:39 +02:00
Andrew Eikum
d4e3c477dd
proton: Add destroyprefix verb
2022-01-24 16:03:39 +02:00
Paul Gofman
b01153b165
proton: Also setup S: drive for game directory for run verb.
...
CW-Bug-Id: #19930
2022-01-19 11:29:54 +02:00
Esme Povirk
de7ac78030
Set .update-timestamp for new prefixes.
...
CW-Bug-Id: #19818
2022-01-19 11:29:54 +02:00
Rémi Bernon
7e4ee66328
proton: Link overridable DLLs debug files too.
2022-01-19 11:29:54 +02:00
Rémi Bernon
808920b6b3
proton: Add overridable DLLs to the tracked_files.
2022-01-19 11:29:54 +02:00
Rémi Bernon
83e40165ba
proton: Move try_copy calls into the tracked_files block.
2022-01-19 11:29:54 +02:00
Rémi Bernon
b3d4aa02a6
proton: Add a prefix parameter to try_copy.
2022-01-19 11:29:54 +02:00
Rémi Bernon
16b662a0bf
proton: Always set dst to the target file name in try_copy.
2022-01-19 11:29:54 +02:00
Nikolay Sivov
ab07135a89
Do not use d3d10/d3d10_1 from dxvk.
...
That allows games to use d3d10 effects framework that wine's modules provide.
2022-01-19 11:29:54 +02:00
Jacek Caban
7e287a4614
proton: Allow relative paths in PROTON_REMOTE_DEBUG_CMD.
...
Patch by Timothee Besset.
2022-01-19 11:29:54 +02:00
Rémi Bernon
959f3665c3
proton: Add +unwind to the default debug channels.
2022-01-19 11:29:54 +02:00
Rémi Bernon
0f1f692c70
proton: Start steam.exe from C:\\windows\\system32.
2022-01-19 11:29:54 +02:00
Rémi Bernon
ec2a650072
build: Install builtin libraries to target-arch lib subdirs.
2022-01-19 11:29:54 +02:00
Derek Lesho
cfaf65d982
steam_helper: Place BattlEye runtime path into PROTON_BATTLEYE_RUNTIME.
...
CW-Bug-Id: #16650
2021-11-19 18:35:48 +02:00
Arkadiusz Hiler
3e4e8be82c
proton: Add disablelibglesv2 compat config option.
...
Some games and launcher based on older CEF / Chromium versions require
this to render properly.
CW-Bug-Id: #19501
CW-Bug-Id: #19483
2021-11-12 17:28:23 +02:00
Paul Gofman
89f8134740
steam_helper: Build as 64 bit.
...
CW-Bug-ID: #19504
2021-11-11 18:36:08 +02:00
Arkadiusz Hiler
cc9c109bf6
proton: Add usenativexinput13 compat config option.
...
Various games using KT Engine like recent WRC and TT Isle of Man, when
run in a win10 prefix, try to load UWP/xinput1_3.dll that ships with the
games. It seems to be mostly-compatible xinput implementation built on
top of windows.gaming.input.dll.
However if we try to replace it with the builtin the game crashes
because it tries to call entry points that are not available in the
original xinput (that's the "mostly-compatible" part), so we need this
override.
Since our windows.gaming.input.dll implementation is just a stub
controllers other than steering wheels (which are handled through
dinput) do not work.
2021-11-11 18:36:08 +02:00
Andrew Eikum
fdc3651992
proton: Return the real application return code on exit.
...
CW-Bug-Id: #15930
2021-11-11 18:36:07 +02:00
Arkadiusz Hiler
06c9f221ec
proton: Log the kernel version.
2021-11-11 18:36:07 +02:00
SSYSS000
b39c95a7e1
proton: Delete PID leading zeros instead of all zeros
...
Link: https://github.com/ValveSoftware/Proton/pull/5157
2021-11-11 18:36:07 +02:00
Zebediah Figura
50cab53a7b
proton: Copy libvkd3d-shader-1.dll into the system32 directory.
...
CW-Bug-Id: #15810
2021-11-11 18:36:07 +02:00
Jactry Zeng
1ae6c80f3e
fonts: Add an alternative of Nirmala UI (nirmala.ttf).
...
Fonts are from https://github.com/googlefonts/noto-fonts.git at
04a4c62ce05b628f80c0d3b6a455ca8201b65286, in hinted/ttf folder.
CW-Bug-Id: #17132
2021-11-11 18:36:07 +02:00
Jactry Zeng
ca928d31f9
fonts: Add an alternative of Microsoft Sans Serif (micross.ttf).
...
Fonts are from https://github.com/googlefonts/noto-fonts.git at
04a4c62ce05b628f80c0d3b6a455ca8201b65286, in hinted/ttf folder.
CW-Bug-Id: #17132
2021-11-11 18:36:07 +02:00
Jactry Zeng
5525cf9931
Revert "Add and install Noto Sans Arabic."
...
This reverts commit 9eb14500c2
.
We are going to introduce a fake micross.ttf which also includes
all of these Arabic characters. We will use that one instead.
2021-11-11 18:36:07 +02:00
Paul Gofman
d9f80272c0
proton: Enabled nvcuda.dll when nvapi is enabled.
...
Link: https://github.com/ValveSoftware/wine/pull/119
2021-09-23 19:07:57 +03:00
Esme Povirk
4940f69c90
Remove default overrides for Microsoft.Xna.Framework.
...
This default is no longer needed because it's built into Wine.
The Wine default is now version-specific so XNA 3.x redists can load.
CW-Bug-Id: #16852
2021-09-23 19:07:57 +03:00
Andrew Eikum
c47dfe6a0b
proton: Don't follow symlinks when merging user dirs
...
Link: https://github.com/ValveSoftware/Proton/issues/5102
2021-09-23 19:07:48 +03:00
Andrew Eikum
79ddcc5568
proton: Don't copy metadata by default
2021-08-23 12:30:03 -05:00
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
Andrew Eikum
86433ceddd
proton: Add nativevulkanloader config setting
2021-02-05 08:16:50 -06:00
Andrew Eikum
38f603d7bf
wineopenxr: Add openxr support
2021-01-11 12:26:56 -06:00
Andrew Eikum
4c0f01e2dc
proton: Add gamedrive config setting to create an S: drive for the game's library
2020-12-08 08:24:04 -06:00
Andrew Eikum
25a2a690b0
proton: Add helpers for pre/appending to env var lists
2020-12-08 08:23:57 -06:00
Andrew Eikum
1b975c15dd
proton: Add vkd3dbindlesstb compat config option
2020-12-08 08:23:57 -06:00
Pierre-Loup A. Griffais
300d23ca7c
proton: give transcoded files their own path
...
STEAM_COMPAT_TRANSCODED_MEDIA_PATH
2020-12-01 13:03:31 -06:00
Rémi Bernon
d126a401f6
proton: Add dotnetfx35.exe builtin override.
2020-11-10 07:31:32 -06:00
Andrew Eikum
1002d7c23d
proton: Attempt to log SLR version
2020-11-09 13:43:05 -06:00
Newbyte
6305de83bc
proton: Make log directory configurable via PROTON_LOG_DIR
2020-11-09 13:43:05 -06:00
Andrew Eikum
7493508dc8
proton: Also catch IOErrors from fcntl
2020-10-13 13:22:16 -05:00
Andrew Eikum
98a2a3b819
proton: Respect WINEDLLOVERRIDES from user_settings, too
2020-09-29 14:29:06 -05:00
Andrew Eikum
746cab7813
proton: Add write permissions to copied files
...
We copy some read-only files into the prefix, which can cause problems
(specifically, downgrading to some earlier Proton versions).
2020-09-29 14:29:06 -05:00
Andrew Eikum
b1b12f8c4f
proton: Also copy VC Runtime libraries
2020-09-29 14:29:06 -05:00
Andrew Eikum
a7d44ffecc
proton: Add PROTON_HIDE_NVIDIA_GPU runtime config
2020-09-29 14:29:06 -05:00
Andrew Eikum
8130c38a19
proton: Also track Steam files
...
We want to remove these on downgrade, as older Proton versions aren't
set up to intercept GameOverlayRenderer.
2020-09-29 14:29:06 -05:00
Andrew Eikum
0ac177efaa
proton: Also copy vulkan-1.dll
2020-09-29 14:29:06 -05:00
Rémi Bernon
265b103e72
proton: Add ntdll to the builtin dll symlink exceptions.
2020-09-29 14:29:06 -05:00
Rémi Bernon
1ae76adb07
proton: Copy Steam library files to C:/Program Files (x86)/Steam.
2020-09-29 14:29:06 -05:00
Andrew Eikum
f3f098067a
proton: Copy more dxsetup redists
2020-09-29 14:29:05 -05:00
Andrew Eikum
c39b1fc34e
proton: Don't copy library permissions
...
These need to be writable.
2020-09-29 14:29:05 -05:00
Andrew Eikum
d620a32883
proton: Only skip rebuilding symlinks
2020-09-29 14:29:05 -05:00
Esme Povirk
911a468618
Add the ability to copy builtin dll's instead of making symlinks.
2020-09-29 14:29:05 -05:00
Esme Povirk
debb619d17
Keep track of when prefix setup tasks need to be re-done.
2020-09-29 14:29:05 -05:00
Esme Povirk
369b57d8c8
Proton: Add code for updating builtin dll's.
2020-09-29 14:29:05 -05:00
Andrew Eikum
f21922d970
media-converter: Add media-converter gstreamer plugin
2020-09-29 14:29:05 -05:00
Andrew Eikum
7d444028c3
update wine to 5.13
2020-09-29 14:29:05 -05:00
Andrew Eikum
4ee3a5af70
proton: Add vkd3dfl12 to force Direct3D 12 feature level
2020-07-15 15:28:04 -05:00
Andrew Eikum
1c26086688
Fix up vkd3d-proton build
2020-07-15 10:31:53 -05:00
Andrew Eikum
9f614e83ce
proton: Add nowritewatch config option to disable write watch support
2020-06-05 08:58:23 -05:00
Alan
6e821c774f
proton: Double-check to avoid locking, if unnecessary
2020-06-01 11:38:16 -05:00
Andrew Eikum
1a0cf7f7e2
proton: Unset WINE{E,F}SYNC if they are disabled
2020-04-27 07:51:44 -05:00
Rémi Bernon
75ed8f6469
proton: Introduce seccomp runtime option.
...
This then sets the WINESECCOMP environment variable to enable seccomp
filter for DOOM Eternal DRM (and others) without impacting other games.
2020-04-15 11:57:44 -05:00
Vincent Povirk
aaeb4445f3
proton: Store original LD_LIBRARY_PATH before modifying it
...
Some parts of Wine will invoke system binaries, which should not use
Proton's libraries.
2020-04-01 11:49:02 -05:00
Andrew Eikum
a9575f7c77
proton: Add cmdlineappend: compat config option
2020-03-19 14:48:52 -05:00
Andrew Eikum
2708188322
proton: Don't dump PROTON_VR_RUNTIME variable
...
It's set by steam_helper now.
2020-03-18 13:50:09 -05:00
Andrew Eikum
f96c8d6e6a
proton: Add noforcelgadd compat config option
2020-03-09 10:03:54 -05:00
Andrew Eikum
e781acfa78
proton: Force LARGE_ADDRESS_AWARE flag for all applications
2020-03-09 10:03:54 -05:00
Andrew Eikum
349df9c436
steam_helper: Set up VR paths in steam.exe, not proton
...
This speeds up game launch times.
2020-03-09 10:03:54 -05:00
Georg Lehmann
20f6b88943
proton: Dump WINEFSYNC in debug scripts
2020-02-24 09:33:47 -06:00
Andrew Eikum
5d3d462f59
proton: Default to DXVK for d3d9.
2020-02-07 06:45:08 -06:00
Andrew Eikum
bca0a720cd
build: Build and ship glib, gstreamer, gst-plugins-base, and gst-plugins-good
2020-02-07 06:45:08 -06:00
Andrew Eikum
45e3edf3ef
update wine to 5.0
2020-02-03 09:54:07 -06:00
Andrew Eikum
4b08e7a1ae
proton: Be quiet if steamvr is missing
2020-01-13 13:56:36 -06:00
Andrew Eikum
4338fb517a
proton: Remove python2 case
...
Python2 is dead, and we explicitly invoke python3 in the shebang anyway.
2020-01-13 08:25:10 -06:00
Andrew Eikum
f7f6f6b4db
build: Use new dxvk_config library instead of importing into wined3d
2020-01-10 07:49:13 -06:00
Andrew Eikum
1a460ade01
proton: Set up VR paths after waiting for wineserver to exit
...
We need the server to exit before calling winepath in case the ESYNC or
FSYNC settings changed between run and waitforexitandrun calls.
2019-11-07 13:36:27 -06:00
Andrew Eikum
7d37963faf
user_settings.py: Add default VKD3D_DEBUG logging
2019-11-07 13:36:27 -06:00
Andrew Eikum
6fc7e9580c
proton: Use Wine's DXGI by default
...
Required for vkd3d support. You can still use DXVK's DXGI with
WINEDLLOVERRIDES="dxgi=n".
2019-10-22 11:15:47 -05:00
Andrew Eikum
230b9d81a2
proton: Support any proton_dist compression scheme
2019-10-18 10:09:36 -05:00
Andrew Eikum
24300e3f27
Don't compress dist tarball
...
This lets us take advantage of Steam delta updates.
2019-10-18 09:56:47 -05:00
Andrew Eikum
da43c48f3d
Build Source Han Sans SC Regular as if it were YaHei
2019-08-23 09:57:46 -05:00
Andrew Eikum
e924a862d7
proton: Remove old xinput controller entries from registry
...
These will get iterated by setupapi even if they're not physically
present, which causes some games (HITMAN 2) to treat these devices like
xinput devices.
2019-08-23 09:57:46 -05:00
Andrew Eikum
a6c0e8b2ff
proton: Don't override the environment with user_settings
...
The intended priority orider is command-line options (the environment)
beats user_settings beats compat_config settings beats defaults.
2019-08-05 09:23:43 -05:00
Andrew Eikum
685f119488
proton: pylint fixes
2019-08-01 14:30:26 -05:00
Andrew Eikum
d0346080bd
proton: Check that we're running as a script
2019-08-01 14:30:26 -05:00
Andrew Eikum
055e095af7
proton: Use the right environment creating default prefix
2019-08-01 14:30:26 -05:00
Andrew Eikum
d2cf7e08eb
proton: Change global references to instance
2019-08-01 14:30:26 -05:00
Andrew Eikum
7425001e8e
proton: Move session methods into Session class
2019-08-01 14:30:26 -05:00
Andrew Eikum
adcdea1315
proton: Move session globals into Session class
2019-08-01 14:30:26 -05:00
Andrew Eikum
975875265c
proton: Swap global CompatData references for instance
2019-08-01 14:30:26 -05:00
Andrew Eikum
48c774d868
proton: Move prefix logic into CompatData class
2019-08-01 14:30:26 -05:00
Andrew Eikum
c8639f6132
proton: Move some logic into Proton class
2019-08-01 14:30:26 -05:00
Andrew Eikum
5c9dd25e81
proton: Don't hard-code compatdata paths
2019-08-01 14:30:26 -05:00
Andrew Eikum
6d6e86df99
proton: Don't hard-code proton paths
2019-08-01 14:30:26 -05:00
Andrew Eikum
f922357d13
proton: Disable built-in mfplay
...
Allows UE games to function as they did before.
2019-07-18 06:10:47 -05:00
Andrew Eikum
ee4510682f
proton: Remove files before trying to copy over them
...
If the file is a symlink, it could dereference the link and overwrite
the pointed-to file.
2019-07-18 06:10:47 -05:00
Andrew Eikum
f44287aeb8
proton: Copy d3d files instead of symlinking them
2019-07-18 06:10:47 -05:00
Andrew Eikum
4708bd6f05
proton: Enable fsync and add PROTON_NO_FSYNC variable
2019-07-18 06:10:47 -05:00
Andrew Eikum
235182da12
proton: Enable e2fs case-folding bit on new prefixes
2019-07-03 08:14:33 -05:00
Andrew Eikum
006634e316
update wine to 4.11
2019-07-03 08:10:53 -05:00
Andrew Eikum
30466dcc5e
proton: Dump config options into the log
2019-07-01 13:14:04 -05:00
Andrew Eikum
f52ecfc6a7
build and ship d9vk
2019-07-01 13:14:04 -05:00
Andrew Eikum
2b3b96982f
change default log to +loaddll instead of +module
2019-05-13 14:40:14 -05:00
Andrew Eikum
ac7b2068f0
Add mono logging to default logging
2019-04-15 08:22:21 -05:00
Andrew Eikum
2dd6948ef2
proton: Detect broken .NET installations and use wine-mono instead
2019-04-15 08:22:21 -05:00
Andrew Eikum
a1341c9649
proton: Also log stdout when logging is enabled
2019-04-15 08:22:21 -05:00