github mstan/TombaRecomp v0.14.1-alpha
Tomba! Recompiled v0.14.1-alpha - Linux file picker fix

4 hours ago

Fixes the Linux file picker. On hosts where the desktop file dialog could not run, Browse buttons did nothing at all — no dialog, no error, no fallback.

What was wrong

The AppImage handed its own libraries to the file dialog it opened. AppRun exported LD_LIBRARY_PATH for the bundle, and every process the game started inherited it — including the host zenity/kdialog opened for Browse, which then loaded this bundle's glib/pcre2 against the host's GTK. Whether that was fatal depended on the distro, which is why it hit some players and not others. Libraries only reachable that way are no longer bundled at all (7 of them, on this build).

A dialog that failed to start was mistaken for you pressing Cancel. Every non-zero exit was read as "user cancelled", so the built-in browser fallback never ran and the click produced nothing.

Most pickers had no fallback to reach. Only the ROM and BIOS rows could fall back to the in-app browser. Memory cards, mod packages, mod resource files and folders, ROM patches, shaders, SRAM import — and the first-run disc picker, which dead-ended before you had a game selected — had none.

What changed

  • Spawned dialogs now get a clean host environment instead of the bundle's.
  • A backend that cannot start is told apart from a cancel, and hands over to the built-in browser.
  • Every picker can fall back to the built-in browser, which now also handles folder and save-destination pickers.
  • If no desktop file picker is available, the ROM row says so and offers the built-in browser directly.

Also

Windows and Linux builds of the same release previously reported different version strings to netplay, which desynced the cross-platform lobby list. Both now report the same version.

No gameplay, renderer or save-format changes. Saves and memory cards from v0.14.0-alpha carry over.


Verified on this build: the packaged AppImage was tested against a stub dialog backend through its real AppRun — the spawned dialog inherits no LD_LIBRARY_PATH, a cancel and a failed backend are told apart, and the built-in fallback arms on failure. The same test fails on the v0.14.0-alpha bundle.

Don't miss a new TombaRecomp release

NewReleases is sending notifications on new releases.