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

[Feature request] Add the app to the F-Droid repo #10

Open
Sitavi opened this issue Oct 11, 2021 · 14 comments
Open

[Feature request] Add the app to the F-Droid repo #10

Sitavi opened this issue Oct 11, 2021 · 14 comments

Comments

@Sitavi
Copy link

Sitavi commented Oct 11, 2021

Because I, and a lot of people, use F-Droid, it would be very nice to have the app directly in the F-Droid repo. I'm sure that the app will be more popular :)

Is there a technical limitation to that?

@jmiskovic
Copy link
Owner

Thanks for opening this issue. I would definitely be interested in F-Droid listing in spirit of open source.

I don't have experience with F-Droid, but when I looked into this some years ago it seemed too complicated to set up everything so that they can produce their own build from source. With the state of Android NDK I was barely able to make a local build through the ever-changing Android Studio. In the mean time the Love2D framework improved the Android building process, so this could be easier to accomplish now.

@jmiskovic
Copy link
Owner

Having read through the F-Droid integration process I see no bigger issues, just a moderate amount of effort to make it happen. The app ticks all F-Droid perquisites for inclusion.

The Hexpress repository currently only has Lua files and sound samples. The missing part is the love-android framework code, on top of which there are some trivial changes in manifest and gradle files (changing app name, icon and permissions). As first step the love-android source should be somehow integrated into Hexpress repository so that anybody can reproduce APK file.

Then all the F-Droid metadata should be developed and tested against local instance of F-Droid server. After it is working, the merge request is sent to F-Droid and they review the whole thing before making the app available on their store.

@jmiskovic
Copy link
Owner

Hexpress is on F-Droid

@shuvashish76
Copy link

Currently it's available on IzzyOnDroid repository which is a third-party repo.
The original request was for official F-Droid repo...please keep the issue open.

@shuvashish76
Copy link

Hexpress is on F-Droid

As the size is now 63MB which is double of (IzzyOnDroid's size limit), I guess unfortunately @IzzySoft has to remove from his repo ‽😔

@IzzySoft
Copy link

IzzySoft commented Aug 4, 2024

What happened that blew up the size this much? It was 16 MB with the previous release. That's now 4 times the size of the previous release – and the release notes just say the new version "fixed a crash" (quite a huge fix I'd say 🙊).

What @jmiskovic could do about it is providing per-ABI builds and we switch to armeabi (the smallest one) at IzzyOnDroid: native libraries are stored uncompressed in the APK, so dropping x86 (rarely used) plus arm64 (works on 64bit devices only) would save about 30 MB there (each of the two has 16 MB native libs currently; armeabi has 12 MB and works on all 32bit devices plus almost all 64bit ones).

@jmiskovic jmiskovic reopened this Aug 5, 2024
@jmiskovic
Copy link
Owner

To fix the startup crash it was required to update the underlying framework love-android. They are the ones that put in the effort to support the ever-changing Android environment.

I've now made a few changes to their build process to test building only the armeabi-v7a. The APK file then comes down to 24Mb and the app function is not impacted, but on arm64 phone it runs with the ugly Android system message on startup: "This app isn't compatible with the latest version of Android. Check for an update or contact the app's developer."

@IzzySoft thanks for lib size investigation ❤️
How do you select the file from the list in a GH release to use on IzzyOnDroid, is it automated? Would it be enough to use a file naming convention like hexpress-ARMv7-only-v41.apk and "hexpress-multiplatform-v41.apk" variants?

@IzzySoft
Copy link

IzzySoft commented Aug 5, 2024

thanks for lib size investigation ❤️

Gladly done!

How do you select the file from the list in a GH release to use on IzzyOnDroid, is it automated?

Yupp. Name a file RegEx pattern, and I can glue the updater to that. Like, /armeabi-v7a/i would do if that's part of your armeabi-v7a APK name. You tell me, I put it.

@IzzySoft
Copy link

IzzySoft commented Sep 1, 2024

Looks like something's wrong with your latest release. It's supposed to be versionCode 41, but…

package: name='com.castlewrath.hexpress' versionCode='33' versionName='12.0'

Not saying this to have you replace that APK (one should never do that for stuff already distributed) – but to take care with future ones. Thanks to the version mismatch, it self-removed before getting published here, so I had not to roll-back manually 🙈

That said, any ETA for the new split releases?

@jmiskovic
Copy link
Owner

Sorry for the trouble.

I'll try to make some time this week for the split, as well as two other small improvements lined up.

@IzzySoft
Copy link

IzzySoft commented Sep 3, 2024

Thanks a lot! Looking forward to your next ping then 😃

@jmiskovic
Copy link
Owner

@IzzySoft ping
For the v42 release I've created per-ABI binaries, as well as the combined multiplatform APK.

  • hexpress-armeabi-v7a-v42.apk
  • hexpress-arm64-v8a-v42.apk
  • hexpress-x86_64-v42.apk
  • hexpress-multiplatform-v42.apk

With versions:
app.version_code=42
app.version_name=0.42.0

@IzzySoft
Copy link

IzzySoft commented Sep 7, 2024

Thanks! Switched to the arm64 build for IzzyOnDroid and re-enabled daily update checks.

Btw: would you mind establishing Fastlane structures, so you can keep app description & graphics up-to-date and maintain how your app is presented? I can send you a PR with what's established here at IzzyOnDroid if you wish (or you can start your own from the scratch). The IzzyOnDroid Fastlane Documentation can be used for guidance.

Oh, and be welcome to pick a badge to link to Hexpress at IzzyOnDroid if you like 😃

@licaon-kter
Copy link

This depends on love2d/love-android#220

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