solus-project / linux-steam-integration

Helper for enabling better Steam integration on Linux
GNU Lesser General Public License v2.1
433 stars 19 forks source link

Stardew valley crashes with native runtime + libsli #16

Closed andrefmarques closed 7 years ago

andrefmarques commented 7 years ago

Title. If i disable one of them the game runs with no problem Terminal log in attachment stardew-report.txt

ikeydoherty commented 7 years ago

OS?

ikeydoherty commented 7 years ago

Also it looks like you're using an old SDL:

ERROR: ld.so: object '/home/andre/.local/share/Steam/ubuntu12_32/gameoverlayrenderer.so' from LD_PRELOAD cannot be preloaded (wrong ELF class: ELFCLASS32): ignored.
>>> Adding process 5503 for game ID 413150
>>> Adding process 5504 for game ID 413150
>>> Adding process 5505 for game ID 413150
Please use SDL 2.0.5 or higher.
gameMode was 'titleScreenGameMode (0)', set to 'errorLogMode (11)'.
gameMode was 'errorLogMode (11)', set to 'playingGameMode (3)'.
andrefmarques commented 7 years ago

I'm using solus with the latest updates sdl.txt

ikeydoherty commented 7 years ago

OK I'm seeing potentially an LSI bug here:

[LSI:vendor_offender]: debug: transforming vendor soname: /home/ufee1dead/.local/share/Steam/steamapps/common/Stardew Valley/lib./lib64/libSDL2-2.0.so.0 -> libSDL2-2.0.so.0
[LSI:vendor_offender]: debug: blacklisted loading of vendored library: /home/ufee1dead/.local/share/Steam/steamapps/common/Stardew Valley/lib64/libSDL2-2.0.so.0
[LSI:vendor_offender]: debug: blacklisted loading of vendored library: /home/ufee1dead/.local/share/Steam/ubuntu12_32/libSDL2-2.0.so.0
[LSI:vendor_offender]: debug: blacklisted loading of vendored library: /home/ufee1dead/.local/share/Steam/ubuntu12_64/libSDL2-2.0.so.0
>>> Adding process 5679 for game ID 413150
>>> Adding process 5680 for game ID 413150
process 5509: arguments to dbus_connection_ref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file dbus-connection.c line 2688.
This is normally a bug in some application using the D-Bus library.
process 5509: arguments to dbus_connection_unref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file dbus-connection.c line 2824.
This is normally a bug in some application using the D-Bus library.
process 5509: arguments to dbus_connection_unref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file dbus-connection.c line 2824.
This is normally a bug in some application using the D-Bus library.
process 5509: arguments to dbus_connection_ref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file dbus-connection.c line 2688.
This is normally a bug in some application using the D-Bus library.
process 5509: arguments to dbus_connection_unref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file dbus-connection.c line 2824.
This is normally a bug in some application using the D-Bus library.
process 5509: arguments to dbus_connection_unref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file dbus-connection.c line 2824.
This is normally a bug in some application using the D-Bus library.
process 5509: arguments to dbus_connection_unref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file dbus-connection.c line 2824.
This is normally a bug in some application using the D-Bus library.
>>> Adding process 5681 for game ID 413150
[LSI:vendor_offender]: debug: blacklisted loading of vendored library: ./lib64/libopenal.so.1
[LSI:vendor_offender]: debug: blacklisted loading of vendored library: ./lib64/libopenal.so.1
[LSI:vendor_offender]: debug: blacklisted loading of vendored library: ./lib64/libopenal.so.1
[LSI:vendor_offender]: debug: blacklisted loading of vendored library: ./lib64/libopenal.so.1
[LSI:vendor_offender]: debug: blacklisted loading of vendored library: ./lib64/libopenal.so.1
gameMode was 'titleScreenGameMode (0)', set to 'errorLogMode (11)'.
gameMode was 'errorLogMode (11)', set to 'playingGameMode (3)'.
process 5509: arguments to dbus_connection_ref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file dbus-connection.c line 2688.
This is normally a bug in some application using the D-Bus library.
process 5509: arguments to dbus_connection_unref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file dbus-connection.c line 2824.
This is normally a bug in some application using the D-Bus library.
process 5509: arguments to dbus_connection_unref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file dbus-connection.c line 2824.
This is normally a bug in some application using the D-Bus library.
process 5509: arguments to dbus_connection_ref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file dbus-connection.c line 2688.
This is normally a bug in some application using the D-Bus library.
process 5509: arguments to dbus_connection_unref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file dbus-connection.c line 2824.
This is normally a bug in some application using the D-Bus library.
process 5509: arguments to dbus_connection_unref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file dbus-connection.c line 2824.
This is normally a bug in some application using the D-Bus library.
process 5509: arguments to dbus_connection_unref() were incorrect, assertion "connection->generation == _dbus_current_generation" failed in file dbus-connection.c line 2824.
This is normally a bug in some application using the D-Bus library.
[LSI:vendor_offender]: debug: blacklisted loading of vendored library: ./lib64/libopenal.so.1
[ERROR] FATAL UNHANDLED EXCEPTION: System.IndexOutOfRangeException: Index was outside the bounds of the array.
  at Microsoft.Xna.Framework.Audio.MSADPCMToPCM.calculateSample (Byte nibble, Byte predictor, System.Int16& sample_1, System.Int16& sample_2, System.Int16& delta) <0x412eaf30 + 0x00060> in <filename unknown>:0 
  at Microsoft.Xna.Framework.Audio.MSADPCMToPCM.MSADPCM_TO_PCM (System.IO.BinaryReader Source, Int16 numChannels, Int16 blockAlign) <0x412ea000 + 0x0040f> in <filename unknown>:0 
  at Microsoft.Xna.Framework.Audio.SoundEffect.PlatformInitializeFormat (System.Byte[] buffer, Int32 format, Int32 sampleRate, Int32 channels, Int32 blockAlignment, Int32 loopStart, Int32 loopLength) <0x412e9c00 + 0x000d7> in <filename unknown>:0 
  at Microsoft.Xna.Framework.Audio.SoundEffect..ctor (System.Byte[] buffer, Int32 format, Int32 sampleRate, Int32 channels, Int32 blockAlignment, Int32 durationMs, Int32 loopStart, Int32 loopLength) <0x412e99f0 + 0x00103> in <filename unknown>:0 
  at Microsoft.Xna.Framework.Audio.WaveBank..ctor (Microsoft.Xna.Framework.Audio.AudioEngine audioEngine, System.String nonStreamingWaveBankFilename) <0x412e4cf0 + 0x01bc7> in <filename unknown>:0 
  at StardewValley.Game1.Initialize () <0x412ce960 + 0x0040b> in <filename unknown>:0 
  at Microsoft.Xna.Framework.Game.DoInitialize () <0x412ad540 + 0x0002b> in <filename unknown>:0 
  at Microsoft.Xna.Framework.Game.Run (GameRunBehavior runBehavior) <0x412ad1f0 + 0x0009f> in <filename unknown>:0 
  at Microsoft.Xna.Framework.Game.Run () <0x412ad190 + 0x00027> in <filename unknown>:0 
  at StardewValley.Program.Main (System.String[] args) <0x4127af20 + 0x000ab> in <filename unknown>:0 
Game removed: AppID 413150 "Stardew Valley", ProcID 5675 
No cached sticky mapping in ActivateActionSet.
andrefmarques commented 7 years ago

If I disable libsli it just works. I'm using solus with budgie. inxi -G: Graphics: Card-1: Intel 3rd Gen Core processor Graphics Controller Card-2: NVIDIA GK107M [GeForce GT 740M] Display Server: x11 (X.Org 1.18.4 ) drivers: modesetting,nouveau (unloaded: fbdev,vesa) Resolution: 1366x768@60.04hz OpenGL: renderer: Mesa DRI Intel Ivybridge Mobile version: 4.2 Mesa 17.2.2

ikeydoherty commented 7 years ago

Yeah its because Mono uses dlopen() and we're currently forbidding those names, need to tweak it a bit further

ikeydoherty commented 7 years ago

Tada

screenshot from 2017-10-15 18-22-56

Will get this into unstable now and it'll be in Shannon before too long..

ikeydoherty commented 7 years ago

Alternatively you might be able to do this:

sudo eopkg it --ignore-dependency https://packages.solus-project.com/unstable/l/linux-steam-integration/linux-steam-integration-0.5-11-1-x86_64.eopkg
andrefmarques commented 7 years ago

It's working! Thank you!

ikeydoherty commented 7 years ago

Very welcome :)