Skip to content

Portable Linux build and runtime path support - #8

Merged
Nevrdid merged 3 commits into
masterfrom
phase-1-build
Oct 26, 2026
Merged

Nevrdid merged 3 commits into
masterfrom
phase-1-build

Conversation

@Nevrdid

@Nevrdid Nevrdid commented Oct 23, 2026 •

Copy link
Copy Markdown
Owner

Summary

  • Add a native Linux x86-64 build workflow that publishes standalone binaries and a portable archive.
  • Make runtime paths resolve relative to the executable, so the app can be launched directly from any working directory.
  • Create data/games.db and its schema automatically on first launch; no pre-populated database or launcher script is required.
  • Bundle only the TRIMUI Blue and TRIMUI Retro configuration, font, and UI image files used by the app; the build no longer checks out or downloads a theme repository.
  • Include required app assets and ready-to-populate Roms/, Imgs/, and Emus/ directories.
  • Resolve ROM artwork and emulator configuration from the portable library first while retaining TrimUI SD-card paths as fallbacks.
  • Improve startup and runtime robustness for missing configuration, empty libraries, database/filesystem errors, and GUI initialization failures.
  • Keep the interactive GUI launch and Add Game flow usable on desktop Linux without TrimUI system configuration.

Validation

  • Manual x86-64 test: confirmed by the user on a clean setup; the binary launched and a game was added through the GUI.
  • Native x86-64 CI: build, clean-first-launch database/schema smoke test, and portable-bundle smoke test passed on the previous revision.
  • ARM64 CI: passed on the previous revision after updating the QEMU and Buildx actions.
  • CI is rerunning against the latest minimal-assets change.

Out of scope

The Main Menu and the separate database-games / all-ROMs views will be implemented in a follow-up PR.

Commit history

The branch history has been consolidated into three topic-based commits: native build setup, runtime hardening, and portable desktop support. Related documentation is included with each topic.

@Nevrdid Nevrdid changed the title Phase 1: establish a native x86-64 build in GitHub Actions Portable Linux build and runtime path support Oct 26, 2026
@Nevrdid
Nevrdid force-pushed the phase-1-build branch 3 times, most recently from f888090 to f4d7129 Compare October 26, 2026 01:01
@Nevrdid
Nevrdid marked this pull request as ready for review October 26, 2026 01:22
@Nevrdid
Nevrdid merged commit f2d7ef4 into master Oct 26, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant