OneKeePass / mobile

A secure password manager for iOS and Android platforms
GNU General Public License v3.0
79 stars 5 forks source link

APK availability? #12

Closed IzzySoft closed 6 months ago

IzzySoft commented 9 months ago

Is the signed APK available for those outside Google's walled garden? You could e.g. attach it to it's corresponding release, which would be a great idea – or bring it to F-Droid which would be even greater, though both options are not "mutually exclusive" :wink:

Thanks in advance for considering!

jeyasankar commented 9 months ago

Hi @IzzySoft, Thanks for the suggestion. I have uploaded the APK to the release. Please take a look

I will explore distributing through F-Droid also. As the app is built with rust, clojurescript, react native etc, it may not be straight forward to do that now and will do that sometime in the distant future

IzzySoft commented 9 months ago

I have uploaded the APK to the release. Please take a look

Thanks!

I will explore distributing through F-Droid also. As the app is built with rust, clojurescript, react native etc, it may not be straight forward to do that now

Not impossible – but yes, that doesn't make it the easiest candidate. Unfortunately, the APK is too big to add it to my repo (size limit there is 30 MB per app) which would simply take the APK you've built. But maybe you could have per-ABI builds? I don't think the Mips one will be used much (are there any Android devices using Mips?) and even x86/x86_64 are rare (mostly emulators), but the native libs of these two take up quite some size. My guess is that an ARM only APK would fit within the 30 MB limit.

Scanning the APK, I see there's another issue:

Offending libs:
---------------
* Play Install Referrer Library (/com/android/installreferrer): NonFreeComp,NonFreeNet,Tracking
* Android Market (/com/google/android/finsky): NonFreeNet
* Google Mobile Services (/com/google/android/gms): NonFreeComp

3 offenders.

These are show-stoppers for F-Droid – and while basically "accepted" with my repo, not exactly welcome for apps dealing with sensitive data (like passwords here). As outside of the Google eco-system, neither the install referrer nor the market library do really make sense (and GMS is probably just dragged in by those), a FOSS build-flavor would be a good idea.

jeyasankar commented 9 months ago

Thanks @IzzySoft for the update.

I will take a look to identify the react native third party node packages that may use the offending libs and see what alternatives I can use

As you have mentioned, I can eliminate the building for all other architectures and restricting to ARM only APK build.

I will remove the current APK from the releases as that was signed by google play store. I will provide the new APK signed with my key for my next release - sometime in about 6 to 8 weeks time. That time I will update you and see how that goes

IzzySoft commented 9 months ago

Thanks @jeyasankar – and yes, please give me a ping! I can make a rescan and (with the size issue solved) probably add it to my repo directly. Then we'll also see if it should be "good to go" for F-Droid.org (my repo often serves as staging/stepping-stone on the way there).

jeyasankar commented 6 months ago

Hi @IzzySoft ,

I have uploaded the APK here based on our earlier discussions.

This one does not have any 'NonFree' stuffs. Also I have reduced the APK size by making only the 'arm64' build

Hopefully this will satisfy the requirements and you can add to your repo and make available for the F-Droid users

Thanks

IzzySoft commented 6 months ago

Done, thanks! Should show up here with the next sync in about 2 hours. If you want, I can send you the metadata in Fastlane format so you could maintain that yourself (see e.g. my Fastlane Cheat Sheet for guidance). Can be used for GPlay deployment as well. Just let me know and I'd open a PR with a "starter package".