I’m trying to modify my otherwise simple app depending on GeckoView to not rely on Mozilla’s Binary GeckoView builds and instead build them from source as required by F-Droid iinm.
I don’t particulary like this dependency on a random binary myself. (If a prebuilt GeckoView were provided by Debian or F-Droid, I’d be fine with that)
I’m not very familiar with gradle and am struggling to get this working. Are there already any apps in F-Droid using GeckoView (only GeckoView best case) that I could use as reference?
I took a glance at Firefox Klar, but there is so much going on that I’m not able to follow.
Thanks, with those scripts as reference and a lot of work, I was finally able to complete the ./mach build part of GeckoView in an Debian Sid chroot.
However, the build is consistently failing in the gradle stage, but I can’t find a reason as to why – mach build didn’t log any errors.
No rule to make target '../../../security/nss/lib/crmf/crmf_crmf/libcrmf.a', needed by 'libxul.so'. Stop.
Maybe I’ll try again in a few days.
I don’t have high hopes of this happening, but I don’t think it would conflict with “building everything from source”. If F-Droid built GeckoView from Source, an app using the resulting binary, can be reproduced by first reproducing F-Droid’s GeckoView build and then reproducing the app build itself, right?
In theory - if enough apps were using GeckoView - this would allow the buildserver to save resources as it only needs to go through the lengthy GeckoView buildprocess once. (And I could save time by not having to struggle with GeckoViews build process '^-^ ).
In practice those benefits are probably negetaed by having multiple GeckoView versions, apparently only very a few apps using GeckoView and the overhead of implementing it.
Thanks, for letting me know!
Unfortunately, I never managed to get a clean GeckoView build working myself (although regular Firefox build worked well) and I currently don’t have the time and motivation to try again.
With the trouble to get a clean build and the need to update all apps using GeckoView on every GeckoView update, it almost seems worth it to reimplement a cut-down version of the app with WebView instead when I need it again :\