Draft: [medic] Reduce the number of 32-bit libraries
-
abi: Allow libraries to be flagged as only for a subset of architectures
This will allow us to cut down the number of i386 libraries we continue to ship in newer runtimes.
For Windows games, Proton already does not require all the i386 libraries we currently ship. It's also possible that it might start to convert its dependency libraries from native Linux ELF libraries to bundled PE libraries over time, reducing its i386 requirements further.
For native Linux games, we recommend compiling as 64-bit where possible. If a legacy game cannot be compiled as 64-bit, then it should stay on Steam Runtime 3 'sniper' or older, and not proceed to Steam Runtime 4 'medic'.
-
abi: Explicitly require libwayland-cursor.so.0
It appears Proton 8.0 dlopens this.
-
abi: Cut down 32-bit libraries to those required by Proton 8.0
The more 32-bit libraries we ship, the more likely we are to have ABI problems in the next 15 years as a result of 32-bit time_t needing to be phased out before 2038.
-
SDK: Don't install all -dev libraries on i386
I'm using
[!i386]
rather than[amd64]
because if we started producing a SDK for a non-x86 architecture, for example arm64, we'd presumably want the same package coverage on the arm64 architecture that we have now on amd64.
steamrt/tasks#272
Not intended to be backported to sniper or older (because that would be an incompatible change).