flathub / com.play0ad.zeroad

https://flathub.org/apps/details/com.play0ad.zeroad
7 stars 8 forks source link

Atlas Scenario Editor does not run: missing libAtlasUI.so #13

Closed Ian2020 closed 3 years ago

Ian2020 commented 3 years ago

If you launch the game and click "Scenario Editor" it fails to launch. You'll find an error in the game log:

DllLoader: dlopen(/app/lib/libAtlasUI.so) failed: /app/lib/libAtlasUI.so: cannot open shared object file: No such file or directory; dlopen(/app/lib/libAtlasUI_dbg.so) failed: /app/lib/libAtlasUI_dbg.so: cannot open shared object file: No such file or directory;

If we try and run the editor directly with the cmdline flag:

/usr/bin/flatpak run --branch=stable --arch=x86_64 --command=0ad com.play0ad.zeroad -editor

...it crashes but also complains about logging (possibly a separate issue):

Atlas.cpp(46): The Atlas UI was not successfully loaded and therefore cannot be started as requested. debug.cpp(189): Unable to open crashlog.txt for writing (please ensure the log directory is writable) Unable to open crashlog.txt for writing (please ensure the log directory is writable) Location: debug.cpp:189 (debug_WriteCrashlog)

When I install 0ad from the normal RPM repos I can find the required file at /usr/lib64/0ad/libAtlasUI.so. This file just seems to be missing from the flatpak I think?

Ian2020 commented 3 years ago

I've just seen that atlas is disabled in com.play0ad.zeroad.yaml with the flag --disable-atlas - should have checked this first sorry. That explains why it won't run. But is there a reason why it's left out of the flatpak? It is useful to have the editor along with the game.

Alexander-Wilms commented 3 years ago

Atlas needs wxWidgets. Maybe copying the module from SLADE is enough: https://github.com/flathub/net.mancubus.SLADE/blob/master/net.mancubus.SLADE.yaml#L41

Ian2020 commented 3 years ago

Amazing, thank you so much!