Firefox in Android

Recently, I tried to install Firefox in Android. I found that it is worth to be used. Chrome was my primary Android web browser. But some websites are full of advertisements, which affect my browsing experience. Especially the advertisement that overlays the whole page.

In order to resolve this, I tried to install uBlock Origin to Chrome. But it is not compatible to Android. That’s why, I tried Firefox.

The drawback of Firefox is, it is slower comparing to Chrome. Especially the case that when I try to open a URL from the other apps, Firefox will damn slow to open the URL. And there is a website with a lot of JS errors, it freezes the Firefox, but Chrome has no issue.


Firefox vs Chromium

Recently I read some reviews saying the Google Chrome uses a lot of RAM, and some even prefer Firefox on Android rather than Google Chrome. Nonetheless, recently I am using Chromium for browsing more frequently than Firefox. Then I found there are a lot of differences which make me feel that each of them has its uniqueness and advantage. Depending on the users need, each browser can do the things that are totally different.



Both browsers have bookmarks. Both browsers allow to sync the bookmarks to each server. However, Firefox has the tags for the bookmarks. This makes the bookmarks have extra labels that can be searched. It is very convenient and useful for the users to understand what the page is about. Chromium previously did not have this feature. But with the recent updates, Chromium bookmark manager has “Auto Folders”.

Previously I used Xmarks to sync between the web browsers, however, because of this difference, Xmarks sometimes produce a lot of conflicts and at the end messed up my bookmarks. At the end, I give up using Xmarks on Chromium, but only on Firefox.


Addons and Extensions

Firefox has a lot of addons, and they are mostly browser specific to enhance the browsing experience, especially those downloader related addons, such as DownThemAll, FlashGot, and Video DownloadHelper.

Both Firefox and Chromium has the extensions such as FoxyProxy, uBlock, AdBlock Plus, Greasemonkey for Firefox and Tampermonkey for Google Chrome, WOT, Ghostery, HTTPS Everywhere, etc (these are my favourites). But in Chromium, the extensions such as DownThemAll, FlashGot, and Video DownloadHelper are hardly found.

Google Chrome’s Web Store, is just like a web version Play Store, which contains various extensions covering productivity and entertainment. And some of the extensions are almost useless (to me). Because some of the extensions just links to the other websites.

In fact, because of the Firefox OS, Firefox Marketplace also provides similar feature like Web Store. Luckily, The Addons repository and Marketplace are separated, which the Addons are more useful to enhance the browsing experience.



During the development, I found that Firefox and Chromium sometimes have minor differences, such as tab key problem in the HTML form of Chromium, or the CSS media style problem. Besides that, there is a very drastic difference between Firefox and Chromium, that is “View Page Source”. In Firefox, when “View Page Source”, it does not “re-visit” the page, but Chromium does “re-visit” the page. As a result, if it is a form, Chromium will “re-submit” the form and may produce a new output.

However, I admit the Chromium layout engine, WebKit, is really good for the developers. It is ported to GTK+ and Qt. This allows Linux developers to integrate web browsing to a native software using GTK+ or Qt.

On the other hand, Firefox uses Gecko layout engine. The user is able to use it to build a desktop application also, not porting to other GUI widget libraries, but XUL instead. However, XUL is not a common GUI widget library like Qt or GTK+. That is why, not many applications are written in XUL. My favourite application that uses XUL is Zotero Standalone.



I am not sure whether Google Chrome is RAM exhaustive, but I really feels that surfing with Chromium is smoother than surfing with Firefox. In my computer, Firefox frequently produces high CPU usage, which slows down the browsing especially browsing some websites that have video/audio streaming, or even social networking websites. I have the similar experience using Chromium previously, but I found it it performs very well recently.


Private Browsing

Both browsers allow private browsing. When using Firefox for private browsing, all the addons are still functioning; Chromium will disable all the extensions by default. However, Chromium users can also enable the extensions for private browsing.



One of the very nice features about Chromium is that, if the website is capturing audio or video, or playing audio (or video), there is an icon appears on the tab to indicate the status. It is very nice because the users can aware the unnecessary recording or disturbing noise from a tab. Firefox does show some status for audio/video capturing, but does not show the status of audio/video playing.

To manage the permissions of a site, Chromium is easier because it can access it by clicking the icon at the URL, such as notifications in GMail. Firefox is less user friendly to manage the site permissions, and it does not show the notifications like Chromium.

Besides that, multi-touch screen support has a little different between the browsers. I have tested on a Dell touch screen monitor with this website, it was found that Google Chrome received the multi-touch as the touch input, yet Firefox received the touch as mouse click.

Other than that, Firefox in Linux does not hide the title bar by default. It has to be tweaked in order to do so. Yet, Chromium does not have the title bar by default.

However, Firefox is able to “Group your tabs”, “Share this page” (paper airplane icon), and “Start a conversation”. These features may be useful, especially group the tabs and share the page. Though share the page can also be done by using AddThis or ShareThis bookmarklets. So far, I never use “Start a conversation”.


Lastly, the following is the summary of the comparison,

Firefox Chromium
Addons and extensions
Tab status
Interface (title bar)
Group tabs
Share page

A tick means better. Ticks for both columns indicates each browser has its own advantages.


P/S: I just figure out that, Chromium does not support Java Applet because it does not support NPAPI anymore. Therefore, if you have to use Java Applet, then Firefox is a better solution.

Firefox and the variants

With the recent update of Pale Moon, I found a trouble with Pale Moon. That is the problem of FoxyProxy Standard addon on Pale Moon. Actually it is a known issue of the incompatibility. Thus, I think soon I will stop using Pale Moon.

Similarly, GNU IceCat (in Arch Linux) has a little difference from Firefox. It can be obviously noticed when using Google Search, there is no instant search. This is because of the user agent showing that the browser is IceCat instead of Firefox. By changing the default user agent to Firefox, then IceCat can use the Google Instant Search. However, with the recent update (in Arch Linux AUR), IceCat user agent is now Firefox.

Today I tried Iceweasel (not GNU IceWeasel), it is just exactly same as Firefox. Comparing to IceCat, IceCat uses the profile folder in ~/.mozilla/icecat, yet Iceweasel uses ~/.mozilla/firefox. Thus, to run Iceweasel together with Firefox, I have to use the method recently mentioned.

Now, I can run 6 different Firefox instances at the same time.

Running Firefox and the variants simultaneously
Running Firefox and the variants simultaneously

Why running so many variants? My main reason is the proxy, because my problem is too complicated that using the patterns in FoxyProxy Standard cannot solve.

Firefox, IceCat, Pale Moon

As my favourite web browser, Firefox, with the powerful extensions, (in my opinion) no other web browser is better than it. There are a lot of web browsers based on Chromium or using WebKit engine. Namely Google Chrome (based on Chromium), Opera (WebKit engine), Safari (WebKit engine), Konqueror (KDE web browser), Epiphany (currently called Web, GNOME web browser), and other less popular web browsers such as Midori, QupZilla, etc.

However, Firefox uses another layout engine, that is Gecko. That is why the rendering of the webpages may have some differences comparing to the WebKit engine. For the web developers, they can always see the differences.

Firefox is able to open a new instance with a different profile. That means a user can run the Firefox with a new and clean profile without any addon together with his or her default profile. This can be done by using the command-line such as

firefox -no-remote -P profileName

The profile can be created by

firefox -no-remote -ProfileManager

With this, the user can install Firefox Beta, Aurora, and Nightly, then run the different instances through the command-line. This is fantastic.

Interestingly, because of the branding issue of Mozilla, Firefox is re-branded as BurningDog in gNewSense and Iceweasel in Debian. And There is another re-brand from GNU project, that is GNU IceCat (formerly GNU IceWeasel, which is different from Debian’s Iceweasel). Moreover, there are specially customised web browser for anonymous surfing which use Firefox as well. For instance, Tor Browser Bundle and JonDoBrowser.

In Arch Linux, if you do not want to use command-line to run the different Firefox and its variants with different instances, then you can install GNU IceCat and Pale Moon from AUR.

Why do I need to many instances? One of the reasons I am doing so is because of the proxy. Because sometimes I want to use Tor for anonymous browsing temporary. This cannot be solved by simply using FoxyProxy. Though FoxyProxy can use different proxies depending on the URL pattern, yet I just want to surf several pages anonymously temporary in another window. At the same time, the other windows remain using default proxies or no proxy. Because of this, only new instance of Firefox can be solved. Because of this, for the ease of the surfing, I installed other variants of Firefox. Good!

YouTube Center

If you watch YouTube frequently or occasionally, and you have not a very fast internet connection, YouTube Center surely is what you will like.

Quite a long time, I found that YouTube does not work like before. I cannot pause the video and wait downloading the video completely then only watch it. Now, the video will download a while then stop downloading. Besides that, navigate to different time frame will need to re-download the video. As a result, I cannot watch the video freely after downloading to the web browser.

But using this YouTube Center, now I can disable the Dash Playback (as mentioned above). Now watching YouTube makes me feel easier.

YouTube Center is actually a userscript. However, there is also the Firefox extension, Google Chrome extension, Opera extension, etc.

FlashGot: Firefox extension

The main reason that I am still using Firefox instead of Google Chrome, is because I need those extensions, which Google Chrome cannot support.

FlashGot, this is one of my favourite extensions (add-ons). Previously, FlashGot does not help me a lot for my surfing experience. This is because FlashGot only provides the feature that we can use external download utilities, instead of built-in download from Firefox itself.

So, what is the strength now? It is able to grab the flash video file: flv or f4v. Yes, I can download the video from YouTube using FlashGot. Previously, I need to use DownloadHelper to do so, but now, FlashGot itself is able to handle this problem.

Moonlight: Silverlight alternative for Linux

Recently, I visited the China website for listening some songs using Firefox 7.0, and found that I need a plugin called Moonlight, since I am using Linux.

So, this Moonlight is the Silverlight alternative for Linux. If you visit the website such as, then this is what you need.

However, Moonlight xpi file is not compatible to Firefox 7.0. Thus, some modifications towards the xpi file is needed. If using Arch Linux, it is available in AUR (submitted by me).

The workaround for the modifications,

  1. Extract the xpi
  2. Edit install.rdf, <em:maxVersion>4.0.*</em:maxVersion> to 7.0.*
  3. Remove META-INF folder, this is for verification
  4. Then, some users mentioned to zip it and rename to .xpi extension (I didn’t test)
  5. Open the xpi file from Firefox, will install the plugin

In my case of AUR, there is no step 4 and step 5, but copy the extracted files and folders into “/usr/lib/firefox-7.0/extensions/”. The “” is the plugin ID, so, I think it is also possible to copy the extracted files to “~.mozilla/firefox/xxxxxxxx.default/extensions/”, where xxxxxxxx.default is your Firefox profile. But I didn’t try this method.