Linux Galaxy API not loading with glibc 2.41

Remyrios

Greenhorn
Description: The Galaxy API is failing to load after a recent update from glibc 2.40 to 2.41. Downgrading the C Library fixes the issue, proving it is the recent version that broke the Galaxy API. The failure to load the API causes the inability to communicate with the Steam APIs causing the Co-op screen to be stuck on an eternal "Connecting to online services..." screen, making it impossible to play multiplayer, even locally. Launching the game via Steam in Offline mode also seems to fix the issue, allowing to host and join games on the LAN.
Version: v1.6.15 build 24356
Error Log: As I was unable to locate the error log file without SMAPI installed, I had to resort to using a log file from SMAPI without any mods loaded. Here is the log file: https://gist.github.com/Remyrios/0c66074f7e47c88f1c9cd0c7ccfebed9
OS: Arch Linux running the 6.13.2-arch1-1 kernel version.
 

mewsubi

Developer
Description: The Galaxy API is failing to load after a recent update from glibc 2.40 to 2.41. Downgrading the C Library fixes the issue, proving it is the recent version that broke the Galaxy API. The failure to load the API causes the inability to communicate with the Steam APIs causing the Co-op screen to be stuck on an eternal "Connecting to online services..." screen, making it impossible to play multiplayer, even locally. Launching the game via Steam in Offline mode also seems to fix the issue, allowing to host and join games on the LAN.
Version: v1.6.15 build 24356
Error Log: As I was unable to locate the error log file without SMAPI installed, I had to resort to using a log file from SMAPI without any mods loaded. Here is the log file: https://gist.github.com/Remyrios/0c66074f7e47c88f1c9cd0c7ccfebed9
OS: Arch Linux running the 6.13.2-arch1-1 kernel version.
Thanks for the detailed report, and for verifying the game does actually work with a downgraded glibc.

We're aware of the issue; the Galaxy API is only used for invite codes in multiplayer, and for cross-storefront multiplayer with Microsoft and GOG. It's definitely a bug that it is also causing Steam & local multiplayer to break, which is being looked into.

That said, we don't really have direct control over GOG's Galaxy libraries, beyond what we're provided. We're still investigating whether or not it's possible for us to fix invite code multiplayer via an updated version of the library, or if we'll need to wait for a fix from the GOG team.

Thanks for the patience, and we'll continue working the problem!
 

mesmerus

Greenhorn
Apparently the developers of glibc knew in advance this was going to break things, most notably Discord, and they somehow were able to patch for this. I would presume ultimately GOG would need to figure out a patch, unless an alternative library not reliant on glibc is found, but figured this would be amusing information, and hopefully slightly helpful too. There is 1 big rule in Linux development, and its "don't break user space" and they broke user space. On purpose. I just find it hilarious, personally.

https://lists.archlinux.org/archive...TMDX542OB6R/#MT47UBEICJN5LQQMNMQRKN2HIYQCB3CZ
 

mesmerus

Greenhorn
Figured I'd add my consensus with Remyrios, after downgrading glibc and lib32-glibc to the last cached copy of 2.40, multiplayer appears to be working again. I don't have anybody awake at this hour to test multiplayer for confirmation, but I can get it to start a multiplayer session with an existing save again, just fine.
 

Remyrios

Greenhorn
Adding to everything above, in case anyone else stumbles upon the thread in search for a solution. I have found a working temporary solution under a Reddit post about this precise Galaxy API issue. Running the command below with superuser permissions will let you run the Stardew Multiplayer without having to roll back glibc to 2.40, causing a partial upgrade. (On Arch Linux the package with the required software can be found on the AUR under the package name execstack)
The command: execstack -c libGalaxy64.so && execstack -c libGalaxyCSharpGlue.so
Credit: u/aloeveracity9
 

Girti

Newcomer
Another solution for steam users is to force the use of a proton compatibility tool (i.e. run it as a windows program). I am currently using this method with proton experimental until glibc sorts itself out
 
Top