I rebased the Orfox commits on tor-browser-52.5.2esr-7.5-2. This includes all commits from orfox-tor-browser-52.2.0esr-7.0-1, but with some modifications.
Rename .mozconfig-orfox as .mozconfig-android
Align .mozconfig-android configuration with .mozconfig configuration
Add comments on non-obvious configuration changes
Bump Java JDK version from openjdk-7 to openjdk-8 (openjdk-7 is EOL)
Bump Android NDK version from r11b to r11c (hash of r11c is published on the Android website, r11b's hash is not available)
Verify sha256sum hash of downloaded SDK and NDK files match expected/published value
There are a few outstanding changes that are needed:
Compiling with tests enabled fails
App crashes when running in an Android emulator (it does not crash when running on a device)
Change the app name from Orfox to Tor Browser(?)
We need more unit tests
c823adc2da01ee47d50e03f1a5a4f14e661e8a2c adds a third-party extension, we need integrate its changes instead
Audit mobile.js and confirm it matches browser.js
Some of the commits add whitespace, we should clean before merging
I rebased the Orfox commits on tor-browser-52.5.2esr-7.5-2. This includes all commits from orfox-tor-browser-52.2.0esr-7.0-1, but with some modifications.
Rename .mozconfig-orfox as .mozconfig-android
Align .mozconfig-android configuration with .mozconfig configuration
Add comments on non-obvious configuration changes
Bump Java JDK version from openjdk-7 to openjdk-8 (openjdk-7 is EOL)
Bump Android NDK version from r11b to r11c (hash of r11c is published on the Android website, r11b's hash is not available)
Verify sha256sum hash of downloaded SDK and NDK files match expected/published value
There are a few outstanding changes that are needed:
Compiling with tests enabled fails
App crashes when running in an Android emulator (it does not crash when running on a device)
Change the app name from Orfox to Tor Browser(?)
We need more unit tests
c823adc2da01ee47d50e03f1a5a4f14e661e8a2c adds a third-party extension, we need integrate its changes instead
Audit mobile.js and confirm it matches browser.js
Some of the commits add whitespace, we should clean before merging
Okay, we decided we'll take a different path with this. I rebased the current Orfox patches onto tor-browser-52.6.0esr-8.0-2, there weren't any merge conflicts. Instead of fixing the current patches so we're comfortable calling mobile/android "Tor Browser for Android", we'll take the patches as-is and mark this task as complete. We'll fixup these commits as we rebase them onto mozilla-central.
I already have a few changes, but getting these patches in-tree is higher priority. We're keeping the Orfox branding because this is not a Tor Browser for Android, yet. I'll open some tickets that cover the changes I think we should make.
I did fixup one commit where symlinks were used for icons at different screen resolutions. Mach try does not like symlinks anywhere in the commit history, so I scrubbed that before we merged it.
I am not overly thrilled to add .xpi files to our tree in commit 4553e490317622677475d0d63ba169074df2f085, especially as they are outdated (there is HTTPS-E 5.2.21 available instead of 5.2.20 if the requirement is a non-WebExtension Add-On). But I guess we can iterate from that. :)
Could you provide an updated branch without b27b64b540cd81a895a289e09d611a50255de3c1 as it does not seem to do anything?
Trac: Status: needs_review to needs_revision Keywords: TorBrowserTeam201802R deleted, TorBrowserTeam201803 added
I am not overly thrilled to add .xpi files to our tree in commit 4553e490317622677475d0d63ba169074df2f085, especially as they are outdated (there is HTTPS-E 5.2.21 available instead of 5.2.20 if the requirement is a non-WebExtension Add-On). But I guess we can iterate from that. :)
Yes, I can follow up with a new ticket for updating these.
Could you provide an updated branch without b27b64b540cd81a895a289e09d611a50255de3c1 as it does not seem to do anything?
$ git statusOn branch bug19675_orfox_patches_1nothing to commit, working tree clean$ git diff bug19675_orfox_patches diff --git a/mobile/android/base/AndroidManifest.xml.in b/mobile/android/base/AndroidManifest.xml.inindex 1d6730d13ff4..1aa50a08463d 100644--- a/mobile/android/base/AndroidManifest.xml.in+++ b/mobile/android/base/AndroidManifest.xml.in@@ -22,7 +22,6 @@ fileincluded here, so that they can be referenced by both APKs. --> #include FennecManifest_permissions.xml.in- <application android:label="@string/moz_app_displayname" android:icon="@drawable/icon" android:logo="@drawable/logo"
Run a build for all supported platforms/architectures to make sure the patches don't affect the desktop build
Reviewed the patches
Checked that they are indeed the same patches as in the Orfox repository
Built Orfox and ran it successfully on my test phone \o/.
sysrqb: I wonder if we should amend the "Building Orfox" part on our Hacking document a bit to reflect the new situation. FWIW: I needed to spent quite some time to get the Android SDK thing to do what it was supposed to do, even after calling ./mach bootstrap. It seems to be the case that the bootstrap thing is downloading the r24 SDK, however at the end the build-tools r23.0.3 are missing. Trying to install them fails even with the SDK manager because I only got offered r23.0.1 and the build system is insisting that it needs r23.0.3. So, I ended up just sim-linking 23.0.1 -> 23.0.3 and that worked smoothly. :) I wonder though whether there is something more straightforward we can suggest on the doc...
Trac: Status: needs_revision to closed Resolution: N/Ato fixed