1421 Commits

Author SHA1 Message Date
Rémi Bernon
c90d4c34d8 docker: Build MinGW with -mcmodel=small. proton-sdk-0.20220601.0-4 2022-12-16 08:24:56 +01:00
Anna Lasky
4d7bbf26ee proton: Remove LOST EMBER from MFDXGI hack
CW-Bug-ID: #21097
2022-12-12 12:05:03 -06:00
Paul Gofman
efc83caeea steam_helper: Trigger EA Desktop reinstall if link2ea association is missing.
CW-Bug-Id: #21645
2022-12-07 18:15:14 -06:00
Paul Gofman
2faad27e2c steam_helper: Set desktop close timeout for EA Desktop.
CW-Bug-Id: #21645
2022-12-07 18:15:04 -06:00
Arkadiusz Hiler
a25739530b fixup! proton: Sync pfx creation and create a guard file. 2022-12-08 01:47:03 +02:00
Arkadiusz Hiler
a2d61f3bf3 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-02 21:24:52 +02:00
Rémi Bernon
ebec6d9b13
docker: Add python3-mako to the SDK images. proton-sdk-0.20220601.0-3 2022-12-02 12:18:27 +01:00
Arkadiusz Hiler
bfb7a9b711 update dxvk-nvapi to v0.6 2022-11-29 19:39:56 +02:00
Proton Merge Bot
296fa9db77 update submodules experimental-7.0-20221129 2022-11-29 16:50:45 +02:00
Simon McVittie
19215988c6 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-11-25 16:43:03 +02:00
Anna Lasky
afb172d011 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-11-23 11:37:26 -06:00
Anna Lasky
a7019f05f7 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:29:34 -06:00
Arkadiusz Hiler
87a5a7de3b docker: Bump Rust to 1.65.
For let-else statements and generic associated types.
2022-11-23 14:10:24 +02:00
Arkadiusz Hiler
89c9c73193 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-11-23 14:10:24 +02:00
Arkadiusz Hiler
434fd91dfb 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-11-23 14:10:24 +02:00
Esme Povirk
0b7992a0b0 Update Wine Mono to 7.4.0. 2022-11-23 14:10:24 +02:00
Paul Gofman
8272fb0356 proton: Enable gamedrive compat option for As Dusk Fails.
CW-Bug-Id: #21485
2022-11-23 14:10:24 +02:00
Adam Moss
8a28617f0f proton: Set enablenvapi for Red Dead 2 / Online.
Link: https://github.com/ValveSoftware/Proton/pull/6227
2022-11-23 14:10:24 +02:00
Arkadiusz Hiler
ba944ca71f proton: Disable hidenvgpu if nvapi is enabled.
Link: https://github.com/ValveSoftware/Proton/pull/6227
2022-11-23 14:10:24 +02:00
Shaun Ren
3a7327e575 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-11-23 14:10:24 +02:00
Anna Lasky
5c4414bd9e Remove Monster Train from MFDXGI hack
CW-Bug-Id: #19027
2022-11-23 14:10:24 +02:00
Adam Moss
17b0eccea0 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-11-23 14:09:58 +02:00
Arkadiusz Hiler
3168804eb3 .gitmodules: Use downstream dxvk.
For CI / bleeding-edge automation.
2022-11-23 14:07:27 +02:00
Rémi Bernon
1509a368c1 docker: Add autoconf-archive dependency.
For OpenFST.
2022-11-23 14:07:27 +02:00
Rémi Bernon
14e21a9730 docker: Add OpenBLAS dependency.
For Kaldi / Vosk.
2022-11-23 14:07:27 +02:00
Andrew Eikum
78cf7ded62 Handle steampipe quirks in deploy builds 2022-11-23 14:07:27 +02:00
Andrew Eikum
be1340e476 Don't ship filenames with colons in them 2022-11-23 14:07:27 +02:00
Andrew Eikum
501ff9e1ba Don't ship proton dist files in a tarball anymore 2022-11-23 14:07:27 +02: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 proton-7.0-5 proton-7.0-5-rc5 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
Paul Gofman
8d2e85be8c proton: Disable forced LAA for Sword and Fairy 4.
CW-Bug-Id: #21180
2022-10-14 18:21:56 +03:00
Rémi Bernon
4ee7c0c666 glslang: Build from source instead of prebuilt binary. 2022-10-14 18:21:56 +03:00
Rémi Bernon
8f0b458bca
gst-plugins-base: Support GLX backend for GL plugins. 2022-08-23 10:28:19 +02:00
Andrew Eikum
981ca6febe Also ship gst libsoup plugin for network video 2022-08-15 17:47:03 +03:00
Rémi Bernon
f3cc9f0610 gst-base: Enable GL video processing plugins.
CW-Bug-Id: #20363
CW-Bug-Id: #20905
CW-Bug-Id: #20981
2022-08-15 17:47:03 +03:00
Arkadiusz Hiler
4221d9ef07 Update wine. proton-7.0-4-rc4 proton-7.0-4 2022-08-10 19:29:30 +03:00
Arkadiusz Hiler
fb9231f0ca Update dxvk to v1.10.3. 2022-08-10 19:29:30 +03:00