Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Android: Run "Update Core Info File" automatically for "Core Downloader" if the "cores" directory is empty #16087

Closed
davidhedlund opened this issue Jan 8, 2024 · 19 comments

Comments

@davidhedlund
Copy link
Contributor

davidhedlund commented Jan 8, 2024

First and foremost consider this:

  • Only RetroArch bugs should be filed here. Not core bugs or game bugs
  • This is not a forum or a help section, this is strictly developer oriented

Description

Expected behavior

  1. If you go to "Main Menu -> Online Updater -> Update Core Info Files" and 2) if you have not executed "Main Menu -> Online Updater -> Update Core Info Files" before first[1] it should be automated.

1: many people don't know that you have to do this in Android since it's not needed in GNU/Linux for example because packages are downloaded from the terminal

Actual behavior

Main Menu -> Online Updater -> Update Core Info Files -- the list is empty

Steps to reproduce the bug

  • In Android: Clear data for RetroArch first (this will wipe everything, do it at your own risk)

In RetroArch:

  • Main Menu -> Online Updater -> Update Core Info Files -- the list is empty
  • Main Menu -> Online Updater -> Core Downloader
  • Main Menu -> Online Updater -> Update Core Info Files -- the list is populated now

Bisect Results

[Try to bisect and tell us when this started happening]

Version/Commit

You can find this information under Information/System Information

  • RetroArch: 1.16.0 (F-Droid)

Environment information

  • OS: Android
  • Compiler: -
@davidhedlund davidhedlund changed the title Android: "Update Core Info File" automatically when "Core Downloader" activated the first time Android: Run "Update Core Info File" (if it has not been executed before) automatically when "Core Downloader" is opened Jan 8, 2024
@davidhedlund davidhedlund changed the title Android: Run "Update Core Info File" (if it has not been executed before) automatically when "Core Downloader" is opened Android: Run "Update Core Info File" automatically for "Core Downloader" Jan 8, 2024
@hizzlekizzle
Copy link
Contributor

This is equally an issue (or not) regardless of which platform you're on. I think it's a decent idea, myself.

@RobLoach
Copy link
Member

RobLoach commented Jan 8, 2024

Rather than having it download them on runtime, could we package the .info files with the .apk?

@warmenhoven
Copy link
Contributor

The .info files are packaged with the .apk. I'm not sure why it's not seeing them properly. I think what happened was at some point the android packaging got updated in a way that wasn't entirely compatible with the current bundle_assets handling.

@warmenhoven
Copy link
Contributor

Unrelated to Android, I've started working on this for tvOS. tvOS has a completely different problem with the current bundle_assets handling that is probably best served by having it downloaded at runtime due to other limits on the .ipa size. That handling will probably end up covering this case as well.

@warmenhoven
Copy link
Contributor

#16088

@RobLoach
Copy link
Member

RobLoach commented Jan 8, 2024

Optimally it would ship both the assets and .info files with the package, and be accessible. RetroArch should be usable if you don't have an internet connection 🙃

@warmenhoven
Copy link
Contributor

Yeah, I see your point. I've tweaked the PR so it still prefers assets.zip but if it can't open it for whatever reason it will fall back to downloading what it needs.

On tvOS it's sort of assumed that there's always a network connection as the device isn't really usable without one.

@davidhedlund
Copy link
Contributor Author

First and foremost consider this:

* Only RetroArch bugs should be filed here. Not core bugs or game bugs

* This is not a forum or a help section, this is strictly developer oriented

Description

Expected behavior

1. If you go to "Main Menu -> Online Updater -> Update Core Info Files" and 2) if you have not executed "Main Menu -> Online Updater -> Update Core Info Files" before first[1] it should be automated.

1: many people don't know that you have to do this in Android since it's not needed in GNU/Linux for example because packages are downloaded from the terminal

Actual behavior

Main Menu -> Online Updater -> Update Core Info Files -- the list is empty

Steps to reproduce the bug

* In Android: Clear data for RetroArch first (this will wipe everything, do it at your own risk)

In RetroArch:

* Main Menu -> Online Updater -> Update Core Info Files -- the list is empty

* Main Menu -> Online Updater -> Core Downloader

* Main Menu -> Online Updater -> Update Core Info Files -- the list is populated now

Bisect Results

[Try to bisect and tell us when this started happening]

Version/Commit

You can find this information under Information/System Information

* RetroArch: 1.16.0 (F-Droid)

Environment information

* OS: Android

* Compiler: -

You don't need to run Update Core Info Files before Core Downloader with retroarch.apk (200 MB) downloaded from https://retroarch.com/ since it already comes bundled with the core info files.

But I the F-Droid apk is only 23.5 MB and is not bundles with the core info files. So if a package comes without the core info files, it would be nice if RetroArch detected this and downloaded them automatically.

@davidhedlund davidhedlund changed the title Android: Run "Update Core Info File" automatically for "Core Downloader" Android: Run "Update Core Info File" automatically for "Core Downloader" for retroarch packages that does not come shipped with them Jan 17, 2024
@davidhedlund davidhedlund changed the title Android: Run "Update Core Info File" automatically for "Core Downloader" for retroarch packages that does not come shipped with them Android: Run "Update Core Info File" automatically for "Core Downloader" if the "cores" directory is empty Jan 17, 2024
@RobLoach
Copy link
Member

But I the F-Droid apk is only 23.5 MB and is not bundles with the core info files.

Where is the F-Droid package source? The package maintainer should add the assets, .info files, shaders, everything.

@davidhedlund
Copy link
Contributor Author

But I the F-Droid apk is only 23.5 MB and is not bundles with the core info files.

Where is the F-Droid package source? The package maintainer should add the assets, .info files, shaders, everything.

Thank you. I copy/pasted that to https://gitlab.com/fdroid/rfp/-/issues/1933#note_1719595052

@licaon-kter
Copy link
Contributor

licaon-kter commented Jan 17, 2024

Where is the F-Droid package source?

https://f-droid.org/packages/com.retroarch/ -> build metadata -> https://gitlab.com/fdroid/fdroiddata/-/blob/master/metadata/com.retroarch.yml#L52-L83

The package maintainer should add the assets, .info files, shaders, everything.

Really? I've literally interacted for 6 months with this community asking how to build this, and getting feedback and advice all the way, about WHAT to include: #11922 and the conclusion is: I did it wrong????

C'mon 😞

@davidhedlund
Copy link
Contributor Author

Where is the F-Droid package source?

https://f-droid.org/packages/com.retroarch/ -> build metadata -> https://gitlab.com/fdroid/fdroiddata/-/blob/master/metadata/com.retroarch.yml#L52-L83

The package maintainer should add the assets, .info files, shaders, everything.

Really? I've literally interacted for 6 months with this community asking how to build this, and getting feedback and advice all the way, about WHAT to include: #11922 and the conclusion is: I did it wrong????

C'mon 😞

Your time and contributions are deeply appreciated. But can you please complement it to make it more useful?

@licaon-kter
Copy link
Contributor

I've asked continuously WHAT and HOW to include.

IF you have the answers please don't keep them secret 🤷

@davidhedlund
Copy link
Contributor Author

I've asked continuously WHAT and HOW to include.

IF you have the answers please don't keep them secret 🤷

Oh, sorry.

Let's continue the conversation at #11922 @RobLoach

@licaon-kter
Copy link
Contributor

Let's continue the conversation at #11922 @RobLoach

Maybe better here as that one is huge

@davidhedlund
Copy link
Contributor Author

Let's continue the conversation at #11922 @RobLoach

Maybe better here as that one is huge

This issue is dedicated to something else. Feel free to open a new issue and send the link here.

@davidhedlund
Copy link
Contributor Author

Let's continue the conversation at #11922 @RobLoach

Maybe better here as that one is huge

Here you go: #16126

@RobLoach
Copy link
Member

I've asked continuously WHAT and HOW to include.

That's excellent! Thanks for linking the F-Droid package. Hopefully we can help out in packaging these assets 👍

@davidhedlund
Copy link
Contributor Author

I've asked continuously WHAT and HOW to include.

That's excellent! Thanks for linking the F-Droid package. Hopefully we can help out in packaging these assets 👍

Can we help out with that here?:

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

No branches or pull requests

5 participants