Hello,
On a basic level, I would argue that the root problem lies with these titles, if they are shipping native and assuming fonts available that are not "default". The Steam Deck compatibility report would likely flag this as an issue with the native version.
This is also not SteamOS specific, although SteamOS could provide the missing fonts as a workaround.
@smcv I wonder if the .deb should check / install the aliases? Seems like a similar problem to the udev rules.
For Proton games, this seems more like something for the container runtime to do. Sharing fontconfig configuration snippets across a container boundary gets into problems with libfontconfig version skew (as both Steam and Flatpak have found), because different versions of libfontconfig understand different syntax, and the container runtime can be either newer or older than the host system, so it seems better for the container to be responsible for providing both libfontconfig and its configuration.
Similarly, if we want increasingly many native Linux games to stop running on the host system and start running in Steam Runtime containers, then those will pick up the same fontconfig as Proton, ignoring the host OS.
fontconfig comes with configuration to map several common Microsoft and PostScript fonts to open-source equivalents, but that only covers fonts with deliberately similar metrics (matching glyph sizes), like Arial -> Liberation Sans.
I wonder if the .deb should check / install the aliases? Seems like a similar problem to the udev rules.
This is a system-wide configuration change with a risk of breaking the expectations of non-Steam applications, so I'm not sure how appropriate it would be for the .deb to do this.
I'm sorry, looks like I was mistaken in my original assessment. After looking at it again, it appears that what makes these examples (Steam and The Beginner's Guide) broken isn't lack of these particular aliases I mentioned earlier, but rather a missing lib32-fontconfig package, making it actually a SteamOS issue with 32-bit applications. Installing lib32-fontconfig makes them work as expected without having to set up any additional aliases.
Replaced with https://github.com/ValveSoftware/SteamOS/issues/785
Some games, such as The Beginner's Guide, and applications, such as Steam in desktop mode, rely on font names that are commonly distributed with Windows even on their GNU/Linux builds.
Installing
winepackage via pacman brings in fontconfig aliases that make those fonts work:A similar config could be provided by SteamOS by default without having to bring the rest of wine in.