Please do not drop Firefox support!

Forums Apps Please do not drop Firefox support!

This topic contains 48 replies, has 13 voices, and was last updated by  krt 5 months ago.

Viewing 15 posts - 16 through 30 (of 49 total)
  • Author
    Posts
  • #17023

    RichZ
    Member

    To partly reply to myself, noscript, addblock and a few others seem to be available. Selfmade addons which are portable between Firefox-desktop and Firefox-mobile should also work on Fennec without changes afaics.

    No idea baout the addon signing yet.

    #17507

    Has Firefox support already been dropped?

    #17528

    krt
    Moderator

    Not that I know of, its most likely just being forgotten… even fennec is still lacking behind because I have trouble getting the build clean and stable :7

    The Firefox-Updater app should be working, though.

    #18072

    optimumpro
    Member

    What is the reason that Fennec Fdroid build all versions were removed from F-Droid? Is there something users should be concerned about?

    #18074

    krt
    Moderator

    The were moved to the archive since I struggle to build v41 and v42… and people kept ignoring that i put the warnings in the description for a reason.

    #18439

    anrp
    Member

    I was able to build Fennec 45 with a similar set of changes as I see in the manifest (not removing the tests directories, though, just disabling them – as an aside, why delete them wholesale?)

    Diff to replay on top of FIREFOX_AURORA_45_BASE 276310:99137d6d4061

    diff --git a/mobile/android/confvars.sh b/mobile/android/confvars.sh
    --- a/mobile/android/confvars.sh
    +++ b/mobile/android/confvars.sh
    @@ -54,68 +54,68 @@ MOZ_APP_STATIC_INI=1
     if test "$COMPILE_ENVIRONMENT"; then
     MOZ_ENABLE_SZIP=1
     fi
     
     # Enable navigator.mozPay
     MOZ_PAY=1
     
     # Enable UI for healthreporter
    -MOZ_SERVICES_HEALTHREPORT=1
    +MOZ_SERVICES_HEALTHREPORT=
     
     # Enable runtime locale switching.
     MOZ_LOCALE_SWITCHER=1
     
     # Enable second screen and casting support for external devices.
     MOZ_DEVICES=1
     
     # Enable second screen using native Android libraries, provided we're
     # not resource constrained.
     if test -z "$MOZ_ANDROID_RESOURCE_CONSTRAINED"; then
    -  MOZ_NATIVE_DEVICES=1
    +  MOZ_NATIVE_DEVICES=
     fi
     
     # Enable install tracking SDK if we have Google Play support; MOZ_NATIVE_DEVICES
     # is a proxy flag for that support.
     if test "$RELEASE_BUILD"; then
     if test "$MOZ_NATIVE_DEVICES"; then
    -  MOZ_INSTALL_TRACKING=1
    +  MOZ_INSTALL_TRACKING=
     fi
     fi
     
     # Mark as WebGL conformant
     MOZ_WEBGL_CONFORMANT=1
     
     # Enable the Search Activity.
     MOZ_ANDROID_SEARCH_ACTIVITY=1
     
     # Enable the Mozilla Location Service stumbler.
    -MOZ_ANDROID_MLS_STUMBLER=1
    +MOZ_ANDROID_MLS_STUMBLER=
     
     # Enable adding to the system downloads list.
     MOZ_ANDROID_DOWNLOADS_INTEGRATION=1
     
     # Enable Tab Queue
     MOZ_ANDROID_TAB_QUEUE=1
     
     # Use the low-memory GC tuning.
     export JS_GC_SMALL_CHUNK_SIZE=1
     
     # Enable GCM registration on Nightly builds only.
     if test "$NIGHTLY_BUILD"; then
    -  MOZ_ANDROID_GCM=1
    +  MOZ_ANDROID_GCM=
     fi
     
     # Enable C++ APZ on Nightly builds only.
     if test "$NIGHTLY_BUILD"; then
       MOZ_ANDROID_APZ=1
     fi
     
     # Enable checking that add-ons are signed by the trusted root
    -MOZ_ADDON_SIGNING=1
    +MOZ_ADDON_SIGNING=
     
     # Enable the Switchboard A/B framework code.
     # Note: The framework is always included in the app. This flag controls
     # usage of the framework.
    -MOZ_SWITCHBOARD=1
    +MOZ_SWITCHBOARD=
     
     # Disable GeckoView by default.
     export MOZ_DISABLE_GECKOVIEW=1
    

    mozconfig:

    # Build Firefox for Android:
    ac_add_options --enable-application=mobile/android
    ac_add_options --target=arm-linux-androideabi
    ac_add_options --with-android-min-sdk=14
    ac_add_options --disable-eme
    ac_add_options --disable-crashreporter
    ac_add_options --disable-updater 
    ac_add_options --disable-maintenance-service
    ac_add_options --disable-tests
    ac_add_options --with-branding=mobile/android/branding/unofficial
    
    # With the following Android SDK and NDK:
    ac_add_options --with-android-sdk="/home/anrp/.mozbuild/android-sdk-linux"
    ac_add_options --with-android-ndk="/home/anrp/.mozbuild/android-ndk-r10e"
    
    mk_add_options MOZ_MAKE_FLAGS="-j10"
    

    … and it basically just worked (bonus: addon signing is disabled.) Note that this build, while not tying in with Play services, might still depend on the Play services being available during build – I did the streamlined bootstrap with mach, which installed all of them. I’ll try ripping out GCM from the ~/.mozbuild and see what happens.

    I did this on Ubuntu 14.04-amd64, only building for armeabi (only kind of android device I have.)

    Note that in Fennec tip (46?) the min SDK goes up one to 15 (otherwise there’s an error in generating the version number in some of the python build code.)

    #18440

    anrp
    Member

    Redoing the build after hiding GMS completes successfully, and it even works with some light testing. NoScript Anywhere++ doesn’t work, anymore, but I don’t think that’s related to my build, more related to the extensions API change (I can install it thanks to the neutered signing check, and it kind of works but kills page loading 90%+ of the time with something about a global event listener/DNS(?) error.)

    #18441

    anrp
    Member

    Also, I appear to have completely missed the fact that 43 is the current release version 🙂 it looks like 45 is another ESR, though, so that’s probably still helpful. Maybe 43 will also work…

    #18446

    anrp
    Member

    OK, I managed to build release 43.0.4 without having the GMS libraries available, with the following patch on the config and adding a couple of @SuppressWarnings(“depreciation”)

    Repo: https://hg.mozilla.org/releases/mozilla-release
    Tag: FIREFOX_43_0_4_RELEASE 298645:146f494b6a79

    Patch:

    diff --git a/mobile/android/branding/unofficial/configure.sh b/mobile/android/branding/unofficial/configure.sh
    --- a/mobile/android/branding/unofficial/configure.sh
    +++ b/mobile/android/branding/unofficial/configure.sh
    @@ -1,8 +1,10 @@
     # This Source Code Form is subject to the terms of the Mozilla Public
     # License, v. 2.0. If a copy of the MPL was not distributed with this
     # file, You can obtain one at http://mozilla.org/MPL/2.0/.
     
    -ANDROID_PACKAGE_NAME=org.mozilla.fennec_<code>echo $USER | sed 's/-/_/g'</code>
    -MOZ_APP_DISPLAYNAME="Fennec <code>echo $USER | sed 's/-/_/g'</code>"
    +EXTRA=4304FakeDroid
    +
    +ANDROID_PACKAGE_NAME=org.mozilla.fennec_$EXTRA
    +MOZ_APP_DISPLAYNAME="Fennec $EXTRA"
     MOZ_UPDATER=
     MOZ_ANDROID_ANR_REPORTER=
    diff --git a/mobile/android/confvars.sh b/mobile/android/confvars.sh
    --- a/mobile/android/confvars.sh
    +++ b/mobile/android/confvars.sh
    @@ -29,17 +29,17 @@ MOZ_NO_SMART_CARDS=1
     
     # Enable getUserMedia
     MOZ_MEDIA_NAVIGATOR=1
     
     # Enable NFC permission
     MOZ_ANDROID_BEAM=1
     
     if test "$LIBXUL_SDK"; then
    -MOZ_XULRUNNER=1
    +MOZ_XULRUNNER=
     else
     MOZ_XULRUNNER=
     fi
     
     MOZ_CAPTURE=1
     MOZ_RAW=1
     MOZ_PLACES=
     MOZ_SOCIAL=
    @@ -58,64 +58,64 @@ MOZ_APP_STATIC_INI=1
     if test "$COMPILE_ENVIRONMENT"; then
     MOZ_ENABLE_SZIP=1
     fi
     
     # Enable navigator.mozPay
     MOZ_PAY=1
     
     # Enable UI for healthreporter
    -MOZ_SERVICES_HEALTHREPORT=1
    +MOZ_SERVICES_HEALTHREPORT=
     
     # Enable runtime locale switching.
     MOZ_LOCALE_SWITCHER=1
     
     # Enable second screen and casting support for external devices.
     MOZ_DEVICES=1
     
     # Enable second screen using native Android libraries, provided we're
     # not resource constrained.
     if test -z "$MOZ_ANDROID_RESOURCE_CONSTRAINED"; then
    -  MOZ_NATIVE_DEVICES=1
    +  MOZ_NATIVE_DEVICES=
     fi
     
     # Enable install tracking SDK if we have Google Play support; MOZ_NATIVE_DEVICES
     # is a proxy flag for that support.
     if test "$RELEASE_BUILD"; then
     if test "$MOZ_NATIVE_DEVICES"; then
    -  MOZ_INSTALL_TRACKING=1
    +  MOZ_INSTALL_TRACKING=
     fi
     fi
     
     # Mark as WebGL conformant
     MOZ_WEBGL_CONFORMANT=1
     
     # Enable the Search Activity.
     MOZ_ANDROID_SEARCH_ACTIVITY=1
     
     # Enable the share handler.
     MOZ_ANDROID_SHARE_OVERLAY=1
     
     # Enable the Mozilla Location Service stumbler.
    -MOZ_ANDROID_MLS_STUMBLER=1
    +MOZ_ANDROID_MLS_STUMBLER=
     
     # Enable adding to the system downloads list.
     MOZ_ANDROID_DOWNLOADS_INTEGRATION=1
     
     # Enable Tab Queue
     MOZ_ANDROID_TAB_QUEUE=1
     
     # Use the low-memory GC tuning.
     export JS_GC_SMALL_CHUNK_SIZE=1
     
     # Enable Firefox Account avatars.
     MOZ_ANDROID_FIREFOX_ACCOUNT_PROFILES=1
     
     # Enable checking that add-ons are signed by the trusted root
    -MOZ_ADDON_SIGNING=1
    +MOZ_ADDON_SIGNING=
     
     # Enable the Switchboard A/B framework code.
     # Note: The framework is always included in the app. This flag controls
     # usage of the framework.
    -MOZ_SWITCHBOARD=1
    +MOZ_SWITCHBOARD=
     
     # Use native Firefox Accounts UI regardless of channel.
     MOZ_ANDROID_NATIVE_ACCOUNT_UI=1
    diff --git a/mobile/android/search/java/org/mozilla/search/PreSearchFragment.java b/mobile/android/search/java/org/mozilla/search/PreSearchFragment.java
    --- a/mobile/android/search/java/org/mozilla/search/PreSearchFragment.java
    +++ b/mobile/android/search/java/org/mozilla/search/PreSearchFragment.java
    @@ -58,16 +58,17 @@ public class PreSearchFragment extends F
     
         private static final int LOADER_ID_SEARCH_HISTORY = 1;
     
         public PreSearchFragment() {
             // Mandatory empty constructor for Android's Fragment.
         }
     
         @Override
    +    @SuppressWarnings("deprecation")
         public void onAttach(Activity activity) {
             super.onAttach(activity);
     
             if (activity instanceof AcceptsSearchQuery) {
                 searchListener = (AcceptsSearchQuery) activity;
             } else {
                 throw new ClassCastException(activity.toString() + " must implement AcceptsSearchQuery.");
             }
    diff --git a/mobile/android/search/java/org/mozilla/search/autocomplete/SuggestionsFragment.java b/mobile/android/search/java/org/mozilla/search/autocompl
    ete/SuggestionsFragment.java
    --- a/mobile/android/search/java/org/mozilla/search/autocomplete/SuggestionsFragment.java
    +++ b/mobile/android/search/java/org/mozilla/search/autocomplete/SuggestionsFragment.java
    @@ -62,16 +62,17 @@ public class SuggestionsFragment extends
     
         // Holds the list of search suggestions.
         private ListView suggestionsList;
     
         public SuggestionsFragment() {
             // Required empty public constructor
         }
     
    +    @SuppressWarnings("deprecation")
         @Override
         public void onAttach(Activity activity) {
             super.onAttach(activity);
     
             if (activity instanceof AcceptsSearchQuery) {
                 searchListener = (AcceptsSearchQuery) activity;
             } else {
                 throw new ClassCastException(activity.toString() + " must implement AcceptsSearchQuery.");

    and the following mozconfig:

    # Build Firefox for Android:
    ac_add_options --enable-application=mobile/android
    ac_add_options --target=arm-linux-androideabi
    ac_add_options --with-android-min-sdk=9
    ac_add_options --disable-eme
    ac_add_options --disable-crashreporter
    ac_add_options --disable-updater 
    ac_add_options --disable-maintenance-service
    ac_add_options --disable-tests
    ac_add_options --with-branding=mobile/android/branding/unofficial
    
    # With the following Android SDK and NDK:
    ac_add_options --with-android-sdk="/home/anrp/.mozbuild/android-sdk-linux/platforms/android-22"
    ac_add_options --with-android-ndk="/home/anrp/.mozbuild/android-ndk-r10e"
    
    mk_add_options MOZ_MAKE_FLAGS="-j10"
    #18481

    optimumpro
    Member

    I also had absolutely no trouble building latest Fennec 46. Built straight the first time with no errors. You can visit XDA forum for the taste.

    http://forum.xda-developers.com/android/apps-games/fennec-firefox-46-web-browser-t3293895

    #18553

    Ildar
    Member

    Then can we see Fennec back in repo?

    #18570

    krt
    Moderator

    mozconfig: using platform/… in the path is deprecated now

    patches: also i dont like using patches if i cannot somewhat rely on them being updated for further versions.

    gms: we removed them a while ago. the recent build issues where

    a) Mozilla changed to ERROR_ON_WARNING and kept changing the location and used env vars for that setting. Also 44.0 is the first release that actually compiles again without warnings/errors (at least for me).
    b) Mozilla’s build tool went more interactive, we have to set I_PREFER_A_SUBOPTIMAL_MERCURIAL_EXPERIENCE env var to keep there tool to not break…
    c) our scanner is not so forgiving about unkown binary files. So while you can manage to build it, fdroid requires –skip-scan to dont look at it. However, –skip-scan is not forwarded to a build VM (which is a bug) and scanignore=* didnt work in all cases either (see https://gitlab.com/fdroid/fdroidserver/issues/130 and https://gitlab.com/fdroid/fdroidserver/issues/110)

    I currently try to integrate more closely with Mathias’ prebuild script, which we already use for multilocales, see https://gitlab.com/Manizuca/fenneclocales . Ideally we want to just run the script and only do f-droid specific changes within our metadata.

    #18571

    krt
    Moderator

    Btw: Thanks for actually working on this 🙂

    #18581

    Leopard
    Member

    (To all of you..) All of your hard work and determination is really appreciated. Thank you!

    #18608

    krt
    Moderator

    fennec 44 is in the archive. works from what i can tell…

Viewing 15 posts - 16 through 30 (of 49 total)

The forum ‘Apps’ is closed to new topics and replies.

Posted in