flipper-application-catalog icon indicating copy to clipboard operation
flipper-application-catalog copied to clipboard

TAS Playback (0.1)

Open rcombs opened this issue 2 years ago • 6 comments

Application Submission

This app plays back tool-assisted speedrun files on video game consoles (currently only the Nintendo 64)

Extra Requirements

This reads files from the microSD card and sends output to a game console connected via the GPIO pins. This usually requires modifying a controller extension cable.

Author Checklist (Fill this out)

  • [X] I've read the contribution guidelines and my PR follows them
  • [X] I own the code I'm submitting or have code owner's permission to submit it
  • [ ] I validated my manifest to be valid

Reviewer Checklist (Don't fill this out)

  • [ ] Bundle is valid
  • [ ] There are no obvious issues with the source code
  • [ ] I've ran this application and verified its functionality

rcombs avatar Jul 29 '23 01:07 rcombs

It looks like the CI build is failing because the Flipper code in the repo #includes code from outside the Flipper-specific subdirectory, and the CI copies just the Flipper subdirectory into the tmp location where the build is run. Is this a CI bug, or is this configuration not supported? It's somewhat important for multi-platform applications like this one.

rcombs avatar Jul 29 '23 07:07 rcombs

Yes, everything your app uses should be in its folder. You can use fap_private_libs for building 3rd-party code with specific defines or requirements.

Your app is cool, looking forward to compatibility fixes!

hedger avatar Jul 29 '23 12:07 hedger

This isn't about third-party code; it's about my own app's platform-generic code, which is pulled in by the flipper variant. Just cramming it in flipper/lib wouldn't help. I guess I could put the .fam in a separate repo, and pull in the real code as a submodule? Or I could put the .fam in the root of the repo, but it'd be pretty weird to have a single flipper-specific file in there while everything else lives in a subdirectory.

rcombs avatar Jul 30 '23 08:07 rcombs

I looked into details of your project - and I think it can be slightly changed by moving common code into a submodule and adding that submodule to Flipper's application dir.

Unfortunately, current catalog's implementation requires all code to be within root app's directory - the one with application.fam in it. Bundler script creates a snapshot of source code in that directory and stores it on the backend. Includes from outside of that directory are not resolvable after that, leading to app build errors.

hedger avatar Jul 30 '23 17:07 hedger

@hedger i think we can switch to git-archive-all that can perform submodules packing

skotopes avatar Jul 31 '23 08:07 skotopes

Please un-draft when fixed.

hedger avatar Dec 22 '23 07:12 hedger