Commit graph

1428 commits

Author SHA1 Message Date
Rémi Bernon
4b1fb73905 proton: Trace language related environment variables.
CW-Bug-Id: #21346
2023-01-12 21:22:02 +01:00
Rémi Bernon
eb9947d34a steam: Match LC_TYPE / LC_MESSAGES default with selected language.
CW-Bug-Id: #21346
2023-01-12 21:22:01 +01:00
Zhiyi Zhang
fbbee396b0 proton: Do use builtin steam.exe for Locoland.
Locoland(352130) executable name happens to be steam.exe.

CW-Bug-Id: #21737
2023-01-10 03:04:03 +00:00
Arkadiusz Hiler
2bf76f6e50 Revert "proton: Sync pfx creation and create a guard file."
This reverts commit 73fbc6890c.

It keeps the prefix version bump so we don't forcefully downgrade people
for no reason.
2023-01-04 20:25:37 +02:00
Arkadiusz Hiler
47e39203c7 Revert "fixup! proton: Sync pfx creation and create a guard file."
This reverts commit 8b45d63375.
2023-01-04 20:23:47 +02:00
Arkadiusz Hiler
8b45d63375 fixup! proton: Sync pfx creation and create a guard file. 2022-12-26 13:15:19 +02:00
Paul Gofman
fde9be256f proton: Enable gamedrive compat option for Creativerse.
CW-Bug-Id: #21729
2022-12-22 12:15:54 -06:00
Rémi Bernon
1a1b4a2511 docker: Build MinGW with -mcmodel=small. 2022-12-19 17:56:34 +01:00
Paul Gofman
a7000cb2b4 steam_helper: Trigger EA Desktop reinstall if link2ea association is missing.
CW-Bug-Id: #21645
2022-12-19 17:56:34 +01:00
Paul Gofman
25a980d9a8 steam_helper: Set desktop close timeout for EA Desktop.
CW-Bug-Id: #21645
2022-12-19 17:56:34 +01:00
Arkadiusz Hiler
73fbc6890c proton: Sync pfx creation and create a guard file.
Due to unlucky power off or a crash crash when first starting the game
the prefix can end up in corrupted state with no obvious way of
troubleshooting.

This is an attempt at ensuring that the prefix was created successfully
and force-recreate it if it wasn't.

CW-Bug-Id: #19720
2022-12-19 17:56:34 +01:00
Proton Merge Bot
d6a2ea47da update submodules 2022-12-19 17:56:34 +01:00
Anna Lasky
5d4e2b616d 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.
2022-12-19 17:56:30 +01:00
Paul Gofman
f0ad741080 proton: Enable gamedrive compat option for As Dusk Fails.
CW-Bug-Id: #21485
2022-12-19 17:56:22 +01:00
Adam Moss
50cc35479e proton: Set enablenvapi for Red Dead 2 / Online.
Link: https://github.com/ValveSoftware/Proton/pull/6227
2022-12-19 17:56:22 +01:00
Arkadiusz Hiler
e927eb06d6 proton: Disable hidenvgpu if nvapi is enabled.
Link: https://github.com/ValveSoftware/Proton/pull/6227
2022-12-19 17:56:22 +01:00
Adam Moss
ddcb61f21f 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)
2022-12-19 17:55:01 +01:00
Arkadiusz Hiler
ecfb0df6d2 .gitmodules: Use downstream dxvk.
For CI / bleeding-edge automation.
2022-12-19 17:55:01 +01:00
Andrew Eikum
076825cc5a Handle steampipe quirks in deploy builds 2022-12-19 17:55:01 +01:00
Andrew Eikum
1862999c82 Don't ship filenames with colons in them 2022-12-19 17:55:01 +01:00
Andrew Eikum
cb87b19a31 Don't ship proton dist files in a tarball anymore 2022-12-19 17:55:01 +01:00
Anna Lasky
c5ad95671c proton: Remove LOST EMBER from MFDXGI hack
CW-Bug-Id: #21097
2022-12-16 20:40:44 +01:00
Arkadiusz Hiler
c703fadb78
update wine 2022-12-12 13:43:56 +01:00
Esme Povirk
40bfcf80d1 Update Wine Mono to 7.4.0. 2022-12-06 19:21:57 +02:00
Arkadiusz Hiler
2c632b6b7f update dxvk-nvapi to v0.6 2022-12-06 19:21:57 +02:00
Paul Gofman
fd7c705a69 proton: Enable gamedrive compat option for As Dusk Fails.
CW-Bug-Id: #21485
2022-12-06 19:21:57 +02:00
Arkadiusz Hiler
ad1a597368 media-converter: Use the test pattern video even without dump/transcoded files.
So the game won't trip over lack of media when shader pre-cacheing is
disabled in Steam.

CW-Bug-Id: #21524
2022-12-06 19:21:57 +02:00
Shaun Ren
4793830e64 media-converter: Set stream ID as the video hash.
If a stream ID is not set, gstreamer will generate random stream IDs for
the streams in downstream elements. This can cause decodebin to generate
its source pads in a non-deterministic order, as decodebin takes into
account the stream IDs when sorting the source pads.

This patch includes some changes from Arek Hiler.

CW-Bug-Id: #21192
2022-12-06 19:21:57 +02:00
Rémi Bernon
64729f7842 docker: Add autoconf-archive dependency.
For OpenFST.
2022-12-06 19:21:57 +02:00
Simon McVittie
11336323c1 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
2022-12-06 19:21:57 +02:00
Arkadiusz Hiler
07ef25e563 docker: Bump Rust to 1.65.
For let-else statements and generic associated types.
2022-12-06 19:21:57 +02:00
Arkadiusz Hiler
0341fce653 docker: Don't specify the image tag in --cache-from
The option is badly documented. Apparently the image name is enough.
Specifying the tag breaks podman/buildah build.
2022-12-06 19:21:57 +02:00
Rémi Bernon
4b473d106e
docker: Add python3-mako to the SDK images. 2022-12-06 13:51:33 +01:00
Rémi Bernon
39b7a1e58e
docker: Add OpenBLAS dependency.
For Kaldi / Vosk.
2022-12-06 13:51:30 +01:00
Anna Lasky
0dc2944e43 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.
2022-11-23 11:45:47 -06:00
Arkadiusz Hiler
babce20fc2 media-converter: Create a tag file when placeholder media are used.
CW-Bug-Id: #21473
2022-11-23 14:06:19 +02:00
Arkadiusz Hiler
f053d6da15 media-converter: Apply cargo clippy suggestions. 2022-11-23 14:06:19 +02:00
Arkadiusz Hiler
5713bfc7b0 media-converter: Update to the newest gst bindings.
1. ElementImpl trait requires GstObjectImpl

2. gst logging macros are no longer globals prefixed with gst_, they
   live inside gst:: instead

3. element is not longer passed around in many places, it can be
   accessed as self.obj() or self.instance()

4. query_default is now a part of gst::Pad and takes the pad as an argument

5. some constructors were changed to use from_$type()

6. query.view_mut() returns QueryViewMut

7. ElementFactory::make now returns a builder that we have to .build()

There are some extra cleanups as well:

1. spurious 'mut' and '&' are removed, a lot of that can be infered or
   were turned into a dereference by the compiler anyway

2. !bla.is_ok() are now bla.is_err()

3. some unneeded imports were removed
2022-11-23 14:06:19 +02:00
Arkadiusz Hiler
8959349ac9 configure.sh: Use SDK 0.20220601.0-1 2022-11-23 14:06:19 +02:00
Arkadiusz Hiler
175bc06a3f update wine 2022-10-31 13:25:15 +00:00
Arkadiusz Hiler
04dfc0937c update dxvk to v1.10.3-28-ge3daa699 2022-10-14 18:36:09 +03:00
Connor McAdams
c04edcea36 Update Wine Mono to 7.3.1. 2022-10-14 18:36:09 +03:00
Arkadiusz Hiler
79134b581a docker: Update Rust to 1.63.0. 2022-10-14 18:36:09 +03:00
Arkadiusz Hiler
42e034ece8 docker: Bump steamrt version to 0.20220601.0.
It contains libsoup.
2022-10-14 18:36:09 +03:00
Shawn Wallace
618221db82 Return proper number of recognized swapchain formats if some are not recognized.
Link: https://github.com/ValveSoftware/Proton/pull/6079

Edited by Paul Gofman:
- fixed behaviour for Vulkan instance type;
- stylistic changes.
2022-10-14 18:36:01 +03:00
Arkadiusz Hiler
66e57462c1 media-converter: Use crates.io version of the gstreamer crates. 2022-10-14 18:21:56 +03:00
Giovanni Mascellani
9ae252db4f Ensure vkd3d-proton is used for D3D12 unless wined3d is explicitly requested. 2022-10-14 18:21:56 +03:00
Giovanni Mascellani
69d6b82e94 Build vkd3d as ELF. 2022-10-14 18:21:56 +03:00
Paul Gofman
30c6b5c41e lsteamclient: Return NULL from manual_convert_SteamAPI_CheckCallbackRegistered_t() if win_func is NULL.
CW-Bug-Id: #21313
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