Skip to content

Draft: [medic] Reduce the number of 32-bit libraries

Simon McVittie requested to merge wip/task272/medic into steamrt/medic
  • 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

/cc @denittis @timo

Not intended to be backported to sniper or older (because that would be an incompatible change).

Merge request reports