ethereal-developers / OpenScan

A privacy-friendly Document Scanner app
BSD 3-Clause "New" or "Revised" License
1.47k stars 84 forks source link

Alternative Download #9

Closed IzzySoft closed 3 years ago

IzzySoft commented 4 years ago

Great to see a tracker-free FOSS PDF-scanner – thanks for that! Would you mind providing the APK to non-Google users (think: Google-free Huawei, LineageOS etc. devices) as well – e.g. by attaching it to the corresponding release tag? Thanks in advance!

veejayts commented 4 years ago

I tried to publish it on f-droid but the build kept failing and I had issues on my end with the commits getting messed up. (edit: using GitLab as is specified on the fdroid website)

Could you elaborate more on ways to provide the APK to non-Google users?

IzzySoft commented 4 years ago

Sure: if you'd attach the APK to releases, I could take it into my F-Droid repo, which with currently ~550 apps is the second largest public one (only F-Droid's own repo is larger) and used by many non-Google users to get access to a broader range of apps (it can be added to the F-Droid app like any other compatible repo). Rules are slightly less restrictive with mine (see here or here for details). Updates will be fetched automatically as soon as you created a new tag and attached an APK to it (within 24h thereafter).

I also could check what the issues with your publishing to F-Droid were; unfortunately, today GitLab broke their site for my browser so I'm a bit handicapped concerning that (I hope that's only temporary).

veejayts commented 4 years ago

Yes we can do that, but I am afraid the fat APK on our next release will be way more(~70 MB) than the 30 MB limit that you have mentioned in your rules due to a library dependency.

If that is not a problem, we will include the binary in the next release and ping you back on this thread?

Regarding F-Droid, an upload guide or template for flutter apps would be greatly appreciated, a few other flutter developers have have also mentioned having a difficult time getting their app on F-Droid due to lack of guidance.

IzzySoft commented 4 years ago

I am afraid the fat APK on our next release will be way more(~70 MB) than the 30 MB limit

Uh, yes, definitely! I only saw the 19M mentioned at Appbrain for the current version. What is the reason for that huge size? Multi-Arch? If that's it, maybe for now attach just the armeabi build and I pick that (and yes, please just ping me here when it's there).

As for F-Droid.org: we have a lot of Flutter apps there (disclosure: I'm one of the maintainers). I'm neither dev nor packager, so I cannot give technical details – but for a starter, you could take a look at the RPFs and MRs of some of those. Just hacked GitLab with a UserScript to get my browser working again, so I can give you a few starter URLs:

You'll want to start with the latter, and also follow up to their corresponding MRs (usually linked: watch out for "Related merge requests" directly below their initial posts).

veejayts commented 4 years ago

Yes the current fat APK is pretty small. The new cropper library dependency relies on OpenCV which bloats up the fat APK (which is multi arch).

I will attach the armeabi build and ping you here.

Thanks for the pointers regarding F-Droid!

test2a commented 3 years ago

@veejayts can you have the apk without the library and once installed, download it and then use it? just like how f-droid syncs the repos and stuff.

IzzySoft commented 3 years ago

That's basically what Open Note Scanner does at well. From the description of that app:

In order to work, Open Note Scanner needs to have access to the OpenCV Manager application installed. If it could not find it, it will offer to download it from GitHub or Play Store. It is also possible to manualy install it from the OpenCV SDK for Android, available on http://opencv.org

Note that app is also available at F-Droid.

test2a commented 3 years ago

@IzzySoft heh. never used open note scanner before. yep. that is what i am suggesting. this should bypass the size constraint of the stores. hope this app gets better and people have a good choice when it comes to phone scanning

veejayts commented 3 years ago

Well that does seem interesting. I will have to look into learning how to do that but no promises. Will resume development on this app in a week or so.

IzzySoft commented 3 years ago

Yeah, that's the idea. Further, why have it included (unchanged) with each update if there's a more elegant way to deal with it? Btw: I haven't used that app either (lazyness and, admittedly, skepsis as for downloading a dependency "from somewhere else"). For the latter reason, it's good to have a corresponding hint in the app's description (that it downloads that library when not already installed, what it's for and why it's safe to do so)…

TBH, I'd feel much better about that library if it where available at F-Droid and would be fetched from there. But as it's not an app, I guess the client cannot handle that, unfortunately.

veejayts commented 3 years ago

Agreed, you make valid points. One of the reasons I am hesitant about making the user download content/code from external sources is because I don't want to even accidentally compromise the users privacy. I know that is a little paranoid, but I would rather larger file size than compromised privacy. Plus it would mean more work to maintain it.

test2a commented 3 years ago

one suggestion. the app currently works fine "as is". So, how about for getting improved functionality once the user is using the app, it can suggest to download the package from a direct link which would be on github, unlike the open note scanner app earlier mentioned which refuses to work without the package.

IzzySoft commented 3 years ago

Good idea: Deploy the app with "base functionality" and leave it to the user to pull in OpenCV for "advanced functionality".

To top that: unless/until OpenCV is available from a "trusted source" like F-Droid, to lower the barrier you could include it with your repo here as git submodule – which leaves you in control as you are now: the submodule points to a specific commit in the OpenCV repository, leaving it up to you which version will be fetched – while the user sees it comes from your repo (so if they trust you with your app, they can also trust you with this).

IzzySoft commented 3 years ago

Just a small heads-up including best new-year wishes – and the gentle question if there are news on this topic?

veejayts commented 3 years ago

A happy new year to you too! Finalizing and updating the 2.0 release right now. Do let me know if any assistance is required from my end for the release.

Edit: Published the release

IzzySoft commented 3 years ago

Thanks a lot! Your app will become available here with the next sync in about 5.5h :smiley:

If you want to apply for listing at F-Droid.org, your app will certainly be welcome there as well. Should you need help with that, I'll be available there.